diff --git a/Cargo.lock b/Cargo.lock index 4380b2799a..3c0cdc4077 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -9887,6 +9887,33 @@ dependencies = [ "walkdir", ] +[[package]] +name = "starcoin-frameworks" +version = "2.0.1" +dependencies = [ + "arrayref", + "hex", + "libsecp256k1", + "log 0.4.17", + "move-binary-format", + "move-command-line-common", + "move-core-types", + "move-docgen", + "move-errmapgen", + "move-prover", + "move-stdlib", + "move-vm-runtime", + "move-vm-types", + "num_enum", + "rand 0.8.5", + "ripemd160", + "smallvec 1.10.0", + "starcoin-crypto", + "starcoin-uint", + "tiny-keccak", + "walkdir", +] + [[package]] name = "starcoin-gas-algebra-ext" version = "2.0.1" @@ -9898,7 +9925,7 @@ dependencies = [ "move-vm-test-utils", "move-vm-types", "serde 1.0.205", - "starcoin-natives", + "starcoin-frameworks", ] [[package]] @@ -9911,9 +9938,9 @@ dependencies = [ "move-stdlib", "move-table-extension", "move-vm-types", + "starcoin-frameworks", "starcoin-gas-algebra-ext", "starcoin-logger", - "starcoin-natives", ] [[package]] @@ -10233,33 +10260,6 @@ dependencies = [ "rayon", ] -[[package]] -name = "starcoin-natives" -version = "2.0.1" -dependencies = [ - "arrayref", - "hex", - "libsecp256k1", - "log 0.4.17", - "move-binary-format", - "move-command-line-common", - "move-core-types", - "move-docgen", - "move-errmapgen", - "move-prover", - "move-stdlib", - "move-vm-runtime", - "move-vm-types", - "num_enum", - "rand 0.8.5", - "ripemd160", - "smallvec 1.10.0", - "starcoin-crypto", - "starcoin-uint", - "tiny-keccak", - "walkdir", -] - [[package]] name = "starcoin-network" version = "2.0.1" @@ -11251,11 +11251,11 @@ dependencies = [ "serde 1.0.205", "starcoin-config", "starcoin-crypto", + "starcoin-frameworks", "starcoin-gas-algebra-ext", "starcoin-gas-meter", "starcoin-logger", "starcoin-metrics", - "starcoin-natives", "starcoin-parallel-executor", "starcoin-types", "starcoin-vm-types", diff --git a/Cargo.toml b/Cargo.toml index c42e5a2c4d..1761803000 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -71,7 +71,7 @@ members = [ "rpc/server", "vm/types", "vm/vm-runtime", - "vm/natives", + "vm/frameworks", "vm/stdlib", "vm/compiler", "vm/move-prover", @@ -183,7 +183,7 @@ default-members = [ "rpc/server", "vm/types", "vm/vm-runtime", - "vm/natives", + "vm/frameworks", "vm/stdlib", "vm/compiler", "vm/move-prover", @@ -465,7 +465,7 @@ starcoin-move-compiler = { path = "vm/compiler" } starcoin-move-explain = { path = "vm/move-explain" } starcoin-gas-algebra-ext = { path = "vm/gas-algebra-ext" } starcoin-gas-meter = { path = "vm/starcoin-gas-meter" } -starcoin-natives = { path = "vm/natives" } +starcoin-frameworks = { path = "vm/frameworks" } starcoin-network = { path = "network" } starcoin-network-rpc = { path = "network-rpc" } starcoin-network-rpc-api = { path = "network-rpc/api" } diff --git a/vm/natives/Cargo.toml b/vm/frameworks/Cargo.toml similarity index 97% rename from vm/natives/Cargo.toml rename to vm/frameworks/Cargo.toml index 82300403ae..8850efdd58 100644 --- a/vm/natives/Cargo.toml +++ b/vm/frameworks/Cargo.toml @@ -29,7 +29,7 @@ testing = ["move-stdlib/testing"] [package] authors = { workspace = true } edition = { workspace = true } -name = "starcoin-natives" +name = "starcoin-frameworks" version = "2.0.1" homepage = { workspace = true } license = { workspace = true } diff --git a/vm/frameworks/src/lib.rs b/vm/frameworks/src/lib.rs new file mode 100644 index 0000000000..b4ac9f045f --- /dev/null +++ b/vm/frameworks/src/lib.rs @@ -0,0 +1,2 @@ +// ref aptos-core/aptos-move/framework/src/lib.rs +pub mod natives; diff --git a/vm/natives/src/account.rs b/vm/frameworks/src/natives/account.rs similarity index 98% rename from vm/natives/src/account.rs rename to vm/frameworks/src/natives/account.rs index fd328053bd..6246355575 100644 --- a/vm/natives/src/account.rs +++ b/vm/frameworks/src/natives/account.rs @@ -98,5 +98,5 @@ pub fn make_all(gas_params: GasParameters) -> impl Iterator impl Iterator impl Iterator = FromHex::from_hex("616263").unwrap(); - let output = crate::ecrecover::keccak(input.as_slice()); + let output = crate::natives::ecrecover::keccak(input.as_slice()); let expect_output: Vec = FromHex::from_hex("4e03657aea45a94fc7d47ba826c8d667c0d1e6e33a64a036ec44f58fa12d6c45") .unwrap(); diff --git a/vm/natives/src/helpers.rs b/vm/frameworks/src/natives/helpers.rs similarity index 100% rename from vm/natives/src/helpers.rs rename to vm/frameworks/src/natives/helpers.rs diff --git a/vm/natives/src/lib.rs b/vm/frameworks/src/natives/mod.rs similarity index 100% rename from vm/natives/src/lib.rs rename to vm/frameworks/src/natives/mod.rs diff --git a/vm/natives/src/secp256k1.rs b/vm/frameworks/src/natives/secp256k1.rs similarity index 97% rename from vm/natives/src/secp256k1.rs rename to vm/frameworks/src/natives/secp256k1.rs index 1c45c9f576..0ebc8542de 100644 --- a/vm/natives/src/secp256k1.rs +++ b/vm/frameworks/src/natives/secp256k1.rs @@ -8,7 +8,7 @@ * **************************************************************************************************/ -use crate::util::make_native_from_func; +use crate::natives::util::make_native_from_func; use move_binary_format::errors::PartialVMResult; use move_core_types::gas_algebra::{InternalGas, InternalGasPerArg, NumArgs}; use move_vm_runtime::native_functions::{NativeContext, NativeFunction}; @@ -102,5 +102,5 @@ pub fn make_all(gas_params: GasParameters) -> impl Iterator impl Iterator impl Iterator { let natives = [("name_of", make_native_token_name_of(gas_params.name_of))]; - crate::helpers::make_module_natives(natives) + crate::natives::helpers::make_module_natives(natives) } #[test] diff --git a/vm/natives/src/u256.rs b/vm/frameworks/src/natives/u256.rs similarity index 98% rename from vm/natives/src/u256.rs rename to vm/frameworks/src/natives/u256.rs index 824f943eae..288261b8e9 100644 --- a/vm/natives/src/u256.rs +++ b/vm/frameworks/src/natives/u256.rs @@ -1,4 +1,4 @@ -use crate::util::make_native_from_func; +use crate::natives::util::make_native_from_func; use move_binary_format::errors::{PartialVMError, PartialVMResult}; use move_core_types::gas_algebra::{InternalGas, InternalGasPerByte, NumBytes}; use move_core_types::vm_status::StatusCode; @@ -215,5 +215,5 @@ pub fn make_all(gas_params: GasParameters) -> impl Iterator NativeFunctionTable ); add_natives_from_module!( "Hash", - starcoin_natives::hash::make_all(gas_params.starcoin_natives.hash) + starcoin_frameworks::natives::hash::make_all(gas_params.starcoin_natives.hash) ); add_natives_from_module!( "BCS", @@ -37,11 +37,11 @@ pub fn starcoin_natives(gas_params: NativeGasParameters) -> NativeFunctionTable ); add_natives_from_module!( "FromBCS", - starcoin_natives::from_bcs::make_all(gas_params.starcoin_natives.from_bcs) + starcoin_frameworks::natives::from_bcs::make_all(gas_params.starcoin_natives.from_bcs) ); add_natives_from_module!( "Signature", - starcoin_natives::signature::make_all(gas_params.starcoin_natives.signature) + starcoin_frameworks::natives::signature::make_all(gas_params.starcoin_natives.signature) ); add_natives_from_module!( "Vector", @@ -53,7 +53,7 @@ pub fn starcoin_natives(gas_params: NativeGasParameters) -> NativeFunctionTable ); add_natives_from_module!( "Account", - starcoin_natives::account::make_all(gas_params.starcoin_natives.account) + starcoin_frameworks::natives::account::make_all(gas_params.starcoin_natives.account) ); add_natives_from_module!( "Signer", @@ -61,11 +61,11 @@ pub fn starcoin_natives(gas_params: NativeGasParameters) -> NativeFunctionTable ); add_natives_from_module!( "Token", - starcoin_natives::token::make_all(gas_params.starcoin_natives.token) + starcoin_frameworks::natives::token::make_all(gas_params.starcoin_natives.token) ); add_natives_from_module!( "U256", - starcoin_natives::u256::make_all(gas_params.starcoin_natives.u256) + starcoin_frameworks::natives::u256::make_all(gas_params.starcoin_natives.u256) ); #[cfg(feature = "testing")] add_natives_from_module!( @@ -82,7 +82,7 @@ pub fn starcoin_natives(gas_params: NativeGasParameters) -> NativeFunctionTable ); add_natives_from_module!( "Secp256k1", - starcoin_natives::secp256k1::make_all(gas_params.starcoin_natives.secp256k1) + starcoin_frameworks::natives::secp256k1::make_all(gas_params.starcoin_natives.secp256k1) ); let natives = make_table_from_iter(CORE_CODE_ADDRESS, natives);