diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b82df5b7b98..0c0b61f0784 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -29,8 +29,8 @@ variables: # CI_IMAGE is changed to "-:staging" when the CI image gets rebuilt # read more https://github.com/paritytech/scripts/pull/244 CI_IMAGE: "paritytech/ink-ci-linux:production" - PURELY_STD_CRATES: "lang/codegen storage/traits/codegen metadata engine" - ALSO_WASM_CRATES: "env storage storage/traits storage/traits/derive allocator prelude primitives lang lang/macro lang/ir" + PURELY_STD_CRATES: "ink/codegen storage/traits/codegen metadata engine" + ALSO_WASM_CRATES: "env storage storage/traits storage/traits/derive allocator prelude primitives ink ink/macro ink/ir" ALL_CRATES: "${PURELY_STD_CRATES} ${ALSO_WASM_CRATES}" DELEGATOR_SUBCONTRACTS: "accumulator adder subber" UPGRADEABLE_CONTRACTS: "forward-calls set-code-hash" @@ -112,8 +112,8 @@ fmt: script: - cargo +nightly fmt --verbose --all -- --check # For the UI tests we need to disable the license check - - cargo +nightly fmt --verbose --all -- --check ./crates/lang/tests/ui/contract/{pass,fail}/*.rs - - cargo +nightly fmt --verbose --all -- --check ./crates/lang/tests/ui/trait_def/{pass,fail}/*.rs + - cargo +nightly fmt --verbose --all -- --check ./crates/ink/tests/ui/contract/{pass,fail}/*.rs + - cargo +nightly fmt --verbose --all -- --check ./crates/ink/tests/ui/trait_def/{pass,fail}/*.rs allow_failure: true examples-fmt: @@ -289,7 +289,7 @@ docs: -p scale-info -p ink_metadata -p ink_env -p ink_storage -p ink_storage_traits -p ink_storage_codegen -p ink_storage_derive -p ink_primitives -p ink_prelude - -p ink_lang -p ink_lang_macro -p ink_lang_ir -p ink_lang_codegen + -p ink -p ink_macro -p ink_ir -p ink_codegen - mv ${CARGO_TARGET_DIR}/doc ./crate-docs # FIXME: remove me after CI image gets nonroot - chown -R nonroot:nonroot ./crate-docs @@ -367,7 +367,7 @@ examples-contract-build: <<: *test-refs script: - rustup component add rust-src --toolchain stable - - cargo install cargo-contract --version 2.0.0-alpha.1 --force + - cargo install cargo-contract --git https://github.com/paritytech/cargo-contract --branch aj/ink_crate --force - cargo contract -V - for example in examples/*/; do if [ "$example" = "examples/upgradeable-contracts/" ]; then continue; fi; diff --git a/ARCHITECTURE.md b/ARCHITECTURE.md index 68f3aa0966d..d74d576b255 100644 --- a/ARCHITECTURE.md +++ b/ARCHITECTURE.md @@ -15,7 +15,7 @@ You can find the crate documentation on docs.rs or for our ink! is composed of a number of crates that are all found in the `crates/` folder. On a high-level those can be grouped as: -* [`lang`](https://github.com/paritytech/ink/tree/master/crates/lang): +* [`ink`](https://github.com/paritytech/ink/tree/master/crates/ink): The ink! language itself. * [`allocator`](https://github.com/paritytech/ink/tree/master/crates/allocator): The allocator used for dynamic memory allocation in a contract. @@ -70,11 +70,11 @@ The central delegating crate for the ink! eDSL is `ink_lang`. In the `crates/lang/` folder you'll find three separate crates on which `ink_lang` relies heavily: -* `ink_lang_macro`: The procedural macros, they take code annotated with e.g. - `[ink::contract]` and forwards it to `ink_lang_ir`. -* `ink_lang_ir`: Defines everything the procedural macro needs in order to +* `ink_macro`: The procedural macros, they take code annotated with e.g. + `[ink::contract]` and forwards it to `ink_ir`. +* `ink_ir`: Defines everything the procedural macro needs in order to parse, analyze and generate code for ink! smart contracts. -* `ink_lang_codegen`: Generates Rust code from the ink! IR. +* `ink_codegen`: Generates Rust code from the ink! IR. ## Building ink! contracts diff --git a/CHANGELOG.md b/CHANGELOG.md index 0837940512e..e4031a2c500 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Breaking Changes + +#### New `ink` crate +The `ink_lang` crate has been replaced in [#1223](https://github.com/paritytech/ink/pull/1223) by a new top level `ink` +crate. All existing sub-crates are reexported and should be used via the new `ink` crate, so e.g. `ink::env` instead of +`ink_env`. Contract authors should now import the top level `ink` crate instead of the individual crates. + +##### Migration +- In `Cargo.toml` Replace all individual `ink_*` crate dependencies with the `ink` crate. +- In the contract source: + - Remove the commonly used `use ink_lang as ink` idiom. + - Replace all usages of individual crates with reexports, e.g. `ink_env` ➜ `ink::env`. + ## Version 4.0.0-alpha.1 ### Compatibility diff --git a/Cargo.toml b/Cargo.toml index c1328bf0f77..06d044546db 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,13 +1,14 @@ [workspace] resolver = "2" members = [ + "crates/ink", "crates/metadata", "crates/allocator", - "crates/lang", - "crates/lang/macro", - "crates/lang/ir", - "crates/lang/codegen", - "crates/lang/macro", + "crates/ink", + "crates/ink/macro", + "crates/ink/ir", + "crates/ink/codegen", + "crates/ink/macro", "crates/prelude", "crates/primitives", "crates/engine", diff --git a/README.md b/README.md index a3435bcc0d6..ac3e35a7fca 100644 --- a/README.md +++ b/README.md @@ -125,8 +125,6 @@ It provides methods to Below you can see the code using the `ink_lang` version of ink!. ```rust -use ink_lang as ink; - #[ink::contract] mod flipper { /// The storage of the flipper contract. @@ -164,8 +162,7 @@ mod flipper { #[cfg(test)] mod tests { use super::*; - use ink_lang as ink; - + #[ink::test] fn it_works() { let mut flipper = Flipper::new(false); diff --git a/crates/env/src/call/create_builder.rs b/crates/env/src/call/create_builder.rs index b5df8e24c54..c723dd9e1c0 100644 --- a/crates/env/src/call/create_builder.rs +++ b/crates/env/src/call/create_builder.rs @@ -41,7 +41,7 @@ pub mod state { /// # Note /// /// This is needed because of conflicting implementations of `From for T` -/// in the generated code of `ink_lang`. +/// in the generated code of `ink`. pub trait FromAccountId where T: Environment, diff --git a/crates/env/src/chain_extension.rs b/crates/env/src/chain_extension.rs index 929c6dfd324..cf4a6d8d83d 100644 --- a/crates/env/src/chain_extension.rs +++ b/crates/env/src/chain_extension.rs @@ -15,7 +15,7 @@ //! Definitions and utilities for calling chain extension methods. //! //! Users should not use these types and definitions directly but rather use the provided -//! `#[ink::chain_extension]` procedural macro defined in the `ink_lang` crate. +//! `#[ink::chain_extension]` procedural macro defined in the `ink` crate. use crate::{ backend::EnvBackend, diff --git a/crates/lang/Cargo.toml b/crates/ink/Cargo.toml similarity index 87% rename from crates/lang/Cargo.toml rename to crates/ink/Cargo.toml index 9090fd08ca0..2c455dadd98 100644 --- a/crates/lang/Cargo.toml +++ b/crates/ink/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "ink_lang" +name = "ink" version = "4.0.0-alpha.1" authors = ["Parity Technologies ", "Robin Freyler "] edition = "2021" @@ -20,13 +20,13 @@ ink_storage = { version = "4.0.0-alpha.1", path = "../storage", default-features ink_primitives = { version = "4.0.0-alpha.1", path = "../primitives", default-features = false } ink_metadata = { version = "4.0.0-alpha.1", path = "../metadata", default-features = false, optional = true } ink_prelude = { version = "4.0.0-alpha.1", path = "../prelude", default-features = false } -ink_lang_macro = { version = "4.0.0-alpha.1", path = "macro", default-features = false } +ink_macro = { version = "4.0.0-alpha.1", path = "macro", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive", "full"] } derive_more = { version = "0.99", default-features = false, features = ["from"] } [dev-dependencies] -ink_lang_ir = { path = "./ir" } +ink_ir = { path = "./ir" } ink_metadata = { path = "../metadata", default-features = false } trybuild = { version = "1.0.60", features = ["diff"] } @@ -41,7 +41,11 @@ std = [ "ink_primitives/std", "ink_env/std", "ink_storage/std", - "ink_lang_macro/std", + "ink_macro/std", "scale/std", ] +# Enable contract debug messages via `debug_print!` and `debug_println!`. +ink-debug = [ + "ink_env/ink-debug", +] show-codegen-docs = [] diff --git a/crates/lang/LICENSE b/crates/ink/LICENSE similarity index 100% rename from crates/lang/LICENSE rename to crates/ink/LICENSE diff --git a/crates/lang/README.md b/crates/ink/README.md similarity index 100% rename from crates/lang/README.md rename to crates/ink/README.md diff --git a/crates/lang/codegen/Cargo.toml b/crates/ink/codegen/Cargo.toml similarity index 84% rename from crates/lang/codegen/Cargo.toml rename to crates/ink/codegen/Cargo.toml index f19e76575c6..ba884e254fe 100644 --- a/crates/lang/codegen/Cargo.toml +++ b/crates/ink/codegen/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "ink_lang_codegen" +name = "ink_codegen" version = "4.0.0-alpha.1" authors = ["Parity Technologies ", "Robin Freyler "] edition = "2021" @@ -7,7 +7,7 @@ edition = "2021" license = "Apache-2.0" readme = "README.md" repository = "https://github.com/paritytech/ink" -documentation = "https://docs.rs/ink_lang_codegen/" +documentation = "https://docs.rs/ink_codegen/" homepage = "https://www.parity.io/" description = "data structures and algorithms for generating ink! IR code" keywords = ["wasm", "parity", "webassembly", "blockchain", "edsl"] @@ -15,11 +15,11 @@ categories = ["no-std", "embedded"] include = ["Cargo.toml", "src/**/*.rs", "README.md", "LICENSE"] [lib] -name = "ink_lang_codegen" +name = "ink_codegen" [dependencies] ink_primitives = { version = "4.0.0-alpha.1", path = "../../primitives" } -ir = { version = "4.0.0-alpha.1", package = "ink_lang_ir", path = "../ir", default-features = false } +ir = { version = "4.0.0-alpha.1", package = "ink_ir", path = "../ir", default-features = false } quote = "1" syn = { version = "1.0", features = ["parsing", "full", "extra-traits"] } proc-macro2 = "1.0" diff --git a/crates/lang/codegen/LICENSE b/crates/ink/codegen/LICENSE similarity index 100% rename from crates/lang/codegen/LICENSE rename to crates/ink/codegen/LICENSE diff --git a/crates/lang/codegen/README.md b/crates/ink/codegen/README.md similarity index 100% rename from crates/lang/codegen/README.md rename to crates/ink/codegen/README.md diff --git a/crates/lang/codegen/src/enforced_error.rs b/crates/ink/codegen/src/enforced_error.rs similarity index 100% rename from crates/lang/codegen/src/enforced_error.rs rename to crates/ink/codegen/src/enforced_error.rs diff --git a/crates/lang/codegen/src/generator/arg_list.rs b/crates/ink/codegen/src/generator/arg_list.rs similarity index 91% rename from crates/lang/codegen/src/generator/arg_list.rs rename to crates/ink/codegen/src/generator/arg_list.rs index 913fbc64dc0..215cbef2a1e 100644 --- a/crates/lang/codegen/src/generator/arg_list.rs +++ b/crates/ink/codegen/src/generator/arg_list.rs @@ -77,11 +77,11 @@ where { use syn::spanned::Spanned as _; args.into_iter().fold( - quote! { ::ink_env::call::utils::EmptyArgumentList }, + quote! { ::ink::env::call::utils::EmptyArgumentList }, |rest, arg| { let span = arg.span(); quote_spanned!(span=> - ::ink_env::call::utils::ArgumentList<::ink_env::call::utils::Argument<#arg>, #rest> + ::ink::env::call::utils::ArgumentList<::ink::env::call::utils::Argument<#arg>, #rest> ) } ) @@ -98,7 +98,7 @@ pub fn generate_reference_to_trait_info( trait_path: &syn::Path, ) -> TokenStream2 { quote_spanned!(span=> - <<::ink_lang::reflect::TraitDefinitionRegistry - as #trait_path>::__ink_TraitInfo as ::ink_lang::reflect::TraitInfo>::ID + <<::ink::reflect::TraitDefinitionRegistry + as #trait_path>::__ink_TraitInfo as ::ink::reflect::TraitInfo>::ID ) } diff --git a/crates/lang/codegen/src/generator/as_dependency/call_builder.rs b/crates/ink/codegen/src/generator/as_dependency/call_builder.rs similarity index 86% rename from crates/lang/codegen/src/generator/as_dependency/call_builder.rs rename to crates/ink/codegen/src/generator/as_dependency/call_builder.rs index ca596d5628f..bea33bf0542 100644 --- a/crates/lang/codegen/src/generator/as_dependency/call_builder.rs +++ b/crates/ink/codegen/src/generator/as_dependency/call_builder.rs @@ -67,7 +67,7 @@ impl CallBuilder<'_> { /// This identifier must not be used outside of the generated `const` /// block in which the call builder type is going to be defined. /// In order to refer to the call builder of an ink! smart contract - /// use the [`ink_lang::TraitCallBuilder`] trait implementation. + /// use the [`ink::TraitCallBuilder`] trait implementation. fn call_builder_ident() -> syn::Ident { format_ident!("CallBuilder") } @@ -84,7 +84,7 @@ impl CallBuilder<'_> { #[repr(transparent)] #[cfg_attr(feature = "std", derive( ::scale_info::TypeInfo, - ::ink_storage::traits::StorageLayout, + ::ink::storage::traits::StorageLayout, ))] #[derive( ::core::fmt::Debug, @@ -100,12 +100,12 @@ impl CallBuilder<'_> { } const _: () = { - impl ::ink_lang::codegen::ContractCallBuilder for #storage_ident { + impl ::ink::codegen::ContractCallBuilder for #storage_ident { type Type = #cb_ident; } - impl ::ink_lang::reflect::ContractEnv for #cb_ident { - type Env = <#storage_ident as ::ink_lang::reflect::ContractEnv>::Env; + impl ::ink::reflect::ContractEnv for #cb_ident { + type Env = <#storage_ident as ::ink::reflect::ContractEnv>::Env; } }; ) @@ -119,14 +119,14 @@ impl CallBuilder<'_> { let span = self.contract.module().storage().span(); let cb_ident = Self::call_builder_ident(); quote_spanned!(span=> - impl ::ink_env::call::FromAccountId for #cb_ident { + impl ::ink::env::call::FromAccountId for #cb_ident { #[inline] fn from_account_id(account_id: AccountId) -> Self { Self { account_id } } } - impl ::ink_lang::ToAccountId for #cb_ident { + impl ::ink::ToAccountId for #cb_ident { #[inline] fn to_account_id(&self) -> AccountId { ::clone(&self.account_id) @@ -183,8 +183,8 @@ impl CallBuilder<'_> { let trait_info_id = generator::generate_reference_to_trait_info(span, trait_path); quote_spanned!(span=> #[doc(hidden)] - impl ::ink_lang::codegen::TraitCallForwarderFor<{#trait_info_id}> for #cb_ident { - type Forwarder = <::__ink_TraitInfo as ::ink_lang::codegen::TraitCallForwarder>::Forwarder; + impl ::ink::codegen::TraitCallForwarderFor<{#trait_info_id}> for #cb_ident { + type Forwarder = <::__ink_TraitInfo as ::ink::codegen::TraitCallForwarder>::Forwarder; #[inline] fn forward(&self) -> &Self::Forwarder { @@ -213,18 +213,18 @@ impl CallBuilder<'_> { } #[inline] - fn build(&self) -> &::Builder { - <_ as ::ink_lang::codegen::TraitCallBuilder>::call( - >::forward(self) + fn build(&self) -> &::Builder { + <_ as ::ink::codegen::TraitCallBuilder>::call( + >::forward(self) ) } #[inline] fn build_mut(&mut self) - -> &mut ::Builder + -> &mut ::Builder { - <_ as ::ink_lang::codegen::TraitCallBuilder>::call_mut( - >::forward_mut(self) + <_ as ::ink::codegen::TraitCallBuilder>::call_mut( + >::forward_mut(self) ) } } @@ -244,7 +244,7 @@ impl CallBuilder<'_> { .map(|message| self.generate_ink_trait_impl_for_message(trait_path, message)); quote_spanned!(span=> impl #trait_path for #cb_ident { - type __ink_TraitInfo = <::ink_lang::reflect::TraitDefinitionRegistry + type __ink_TraitInfo = <::ink::reflect::TraitDefinitionRegistry as #trait_path>::__ink_TraitInfo; #( #messages )* @@ -285,8 +285,8 @@ impl CallBuilder<'_> { quote_spanned!(span=> type #output_ident = <<< Self - as ::ink_lang::codegen::TraitCallForwarderFor<{#trait_info_id}>>::Forwarder - as ::ink_lang::codegen::TraitCallBuilder>::Builder + as ::ink::codegen::TraitCallForwarderFor<{#trait_info_id}>>::Forwarder + as ::ink::codegen::TraitCallBuilder>::Builder as #trait_path>::#output_ident; #[inline] @@ -296,7 +296,7 @@ impl CallBuilder<'_> { #( , #input_bindings: #input_types )* ) -> Self::#output_ident { <_ as #trait_path>::#message_ident( - >::#build_cmd(self) + >::#build_cmd(self) #( , #input_bindings )* ) } @@ -374,11 +374,11 @@ impl CallBuilder<'_> { output.map_or_else(|| quote! { () }, |output| quote! { #output }); let output_span = output.span(); let output_type = quote_spanned!(output_span=> - ::ink_env::call::CallBuilder< + ::ink::env::call::CallBuilder< Environment, - ::ink_env::call::utils::Set< ::ink_env::call::Call< Environment > >, - ::ink_env::call::utils::Set< ::ink_env::call::ExecutionInput<#arg_list> >, - ::ink_env::call::utils::Set< ::ink_env::call::utils::ReturnType<#return_type> >, + ::ink::env::call::utils::Set< ::ink::env::call::Call< Environment > >, + ::ink::env::call::utils::Set< ::ink::env::call::ExecutionInput<#arg_list> >, + ::ink::env::call::utils::Set< ::ink::env::call::utils::ReturnType<#return_type> >, > ); quote_spanned!(span=> @@ -389,11 +389,11 @@ impl CallBuilder<'_> { & #mut_tok self #( , #input_bindings : #input_types )* ) -> #output_type { - ::ink_env::call::build_call::() - .call_type(::ink_env::call::Call::new().callee(::ink_lang::ToAccountId::to_account_id(self))) + ::ink::env::call::build_call::() + .call_type(::ink::env::call::Call::new().callee(::ink::ToAccountId::to_account_id(self))) .exec_input( - ::ink_env::call::ExecutionInput::new( - ::ink_env::call::Selector::new([ #( #selector_bytes ),* ]) + ::ink::env::call::ExecutionInput::new( + ::ink::env::call::Selector::new([ #( #selector_bytes ),* ]) ) #( .push_arg(#input_bindings) diff --git a/crates/lang/codegen/src/generator/as_dependency/contract_ref.rs b/crates/ink/codegen/src/generator/as_dependency/contract_ref.rs similarity index 87% rename from crates/lang/codegen/src/generator/as_dependency/contract_ref.rs rename to crates/ink/codegen/src/generator/as_dependency/contract_ref.rs index 7357da1b4f2..cfc75401cdd 100644 --- a/crates/lang/codegen/src/generator/as_dependency/contract_ref.rs +++ b/crates/ink/codegen/src/generator/as_dependency/contract_ref.rs @@ -88,7 +88,7 @@ impl ContractRef<'_> { quote_spanned!(span=> #[cfg_attr(feature = "std", derive( ::scale_info::TypeInfo, - ::ink_storage::traits::StorageLayout, + ::ink::storage::traits::StorageLayout, ))] #[derive( ::core::fmt::Debug, @@ -101,16 +101,16 @@ impl ContractRef<'_> { )] #( #doc_attrs )* pub struct #ref_ident { - inner: <#storage_ident as ::ink_lang::codegen::ContractCallBuilder>::Type, + inner: <#storage_ident as ::ink::codegen::ContractCallBuilder>::Type, } const _: () = { - impl ::ink_lang::reflect::ContractReference for #storage_ident { + impl ::ink::reflect::ContractReference for #storage_ident { type Type = #ref_ident; } - impl ::ink_lang::reflect::ContractEnv for #ref_ident { - type Env = <#storage_ident as ::ink_lang::reflect::ContractEnv>::Env; + impl ::ink::reflect::ContractEnv for #ref_ident { + type Env = <#storage_ident as ::ink::reflect::ContractEnv>::Env; } }; ) @@ -125,21 +125,21 @@ impl ContractRef<'_> { let storage_ident = self.contract.module().storage().ident(); let ref_ident = self.generate_contract_ref_ident(); quote_spanned!(span=> - impl ::ink_env::call::FromAccountId for #ref_ident { + impl ::ink::env::call::FromAccountId for #ref_ident { #[inline] fn from_account_id(account_id: AccountId) -> Self { Self { inner: <<#storage_ident - as ::ink_lang::codegen::ContractCallBuilder>::Type - as ::ink_env::call::FromAccountId>::from_account_id(account_id) + as ::ink::codegen::ContractCallBuilder>::Type + as ::ink::env::call::FromAccountId>::from_account_id(account_id) } } } - impl ::ink_lang::ToAccountId for #ref_ident { + impl ::ink::ToAccountId for #ref_ident { #[inline] fn to_account_id(&self) -> AccountId { - <<#storage_ident as ::ink_lang::codegen::ContractCallBuilder>::Type - as ::ink_lang::ToAccountId>::to_account_id(&self.inner) + <<#storage_ident as ::ink::codegen::ContractCallBuilder>::Type + as ::ink::ToAccountId>::to_account_id(&self.inner) } } ) @@ -155,8 +155,8 @@ impl ContractRef<'_> { let storage_ident = self.contract.module().storage().ident(); quote_spanned!(span=> const _: () = { - impl ::ink_lang::codegen::TraitCallBuilder for #ref_ident { - type Builder = <#storage_ident as ::ink_lang::codegen::ContractCallBuilder>::Type; + impl ::ink::codegen::TraitCallBuilder for #ref_ident { + type Builder = <#storage_ident as ::ink::codegen::ContractCallBuilder>::Type; #[inline] fn call(&self) -> &Self::Builder { @@ -207,7 +207,7 @@ impl ContractRef<'_> { quote_spanned!(span=> #( #attrs )* impl #trait_path for #forwarder_ident { - type __ink_TraitInfo = <::ink_lang::reflect::TraitDefinitionRegistry + type __ink_TraitInfo = <::ink::reflect::TraitDefinitionRegistry as #trait_path>::__ink_TraitInfo; #messages @@ -255,7 +255,7 @@ impl ContractRef<'_> { let input_types = message.inputs().map(|input| &input.ty).collect::>(); quote_spanned!(span=> type #output_ident = - <::Forwarder as #trait_path>::#output_ident; + <::Forwarder as #trait_path>::#output_ident; #[inline] fn #message_ident( @@ -263,8 +263,8 @@ impl ContractRef<'_> { #( , #input_bindings : #input_types )* ) -> Self::#output_ident { <_ as #trait_path>::#message_ident( - <_ as ::ink_lang::codegen::TraitCallForwarderFor<{#trait_info_id}>>::#forward_operator( - ::#call_operator(self), + <_ as ::ink::codegen::TraitCallForwarderFor<{#trait_info_id}>>::#forward_operator( + ::#call_operator(self), ) #( , #input_bindings )* ) @@ -351,7 +351,7 @@ impl ContractRef<'_> { & #mut_token self #( , #input_bindings : #input_types )* ) #output_type { - ::#call_operator(self) + ::#call_operator(self) .#message_ident( #( #input_bindings ),* ) .fire() .unwrap_or_else(|error| ::core::panic!( @@ -392,19 +392,19 @@ impl ContractRef<'_> { #[allow(clippy::type_complexity)] pub fn #constructor_ident( #( #input_bindings : #input_types ),* - ) -> ::ink_env::call::CreateBuilder< + ) -> ::ink::env::call::CreateBuilder< Environment, - ::ink_env::call::utils::Unset, - ::ink_env::call::utils::Unset, - ::ink_env::call::utils::Unset, - ::ink_env::call::utils::Set<::ink_env::call::ExecutionInput<#arg_list>>, - ::ink_env::call::utils::Unset<::ink_env::call::state::Salt>, + ::ink::env::call::utils::Unset, + ::ink::env::call::utils::Unset, + ::ink::env::call::utils::Unset, + ::ink::env::call::utils::Set<::ink::env::call::ExecutionInput<#arg_list>>, + ::ink::env::call::utils::Unset<::ink::env::call::state::Salt>, Self, > { - ::ink_env::call::build_create::() + ::ink::env::call::build_create::() .exec_input( - ::ink_env::call::ExecutionInput::new( - ::ink_env::call::Selector::new([ #( #selector_bytes ),* ]) + ::ink::env::call::ExecutionInput::new( + ::ink::env::call::Selector::new([ #( #selector_bytes ),* ]) ) #( .push_arg(#input_bindings) diff --git a/crates/lang/codegen/src/generator/as_dependency/mod.rs b/crates/ink/codegen/src/generator/as_dependency/mod.rs similarity index 100% rename from crates/lang/codegen/src/generator/as_dependency/mod.rs rename to crates/ink/codegen/src/generator/as_dependency/mod.rs diff --git a/crates/lang/codegen/src/generator/blake2b.rs b/crates/ink/codegen/src/generator/blake2b.rs similarity index 100% rename from crates/lang/codegen/src/generator/blake2b.rs rename to crates/ink/codegen/src/generator/blake2b.rs diff --git a/crates/lang/codegen/src/generator/chain_extension.rs b/crates/ink/codegen/src/generator/chain_extension.rs similarity index 92% rename from crates/lang/codegen/src/generator/chain_extension.rs rename to crates/ink/codegen/src/generator/chain_extension.rs index 5f155201382..2a4dfe3e26f 100644 --- a/crates/lang/codegen/src/generator/chain_extension.rs +++ b/crates/ink/codegen/src/generator/chain_extension.rs @@ -88,8 +88,8 @@ impl ChainExtension<'_> { let result_handling = if returns_result { quote_spanned!(span=> .output_result::< - <#output_type as ::ink_lang::IsResultType>::Ok, - <#output_type as ::ink_lang::IsResultType>::Err, + <#output_type as ::ink::IsResultType>::Ok, + <#output_type as ::ink::IsResultType>::Err, >() ) } else { @@ -112,12 +112,12 @@ impl ChainExtension<'_> { }; let where_output_is_result = Some(quote_spanned!(span=> - #output_type: ::ink_lang::IsResultType, + #output_type: ::ink::IsResultType, )) .filter(|_| returns_result); let where_output_impls_from_error_code = Some(quote_spanned!(span=> - <#output_type as ::ink_lang::IsResultType>::Err: ::core::convert::From<#error_code>, + <#output_type as ::ink::IsResultType>::Err: ::core::convert::From<#error_code>, )).filter(|_| returns_result && handle_status); quote_spanned!(span=> @@ -128,7 +128,7 @@ impl ChainExtension<'_> { #where_output_is_result #where_output_impls_from_error_code { - ::ink_env::chain_extension::ChainExtensionMethod::build(#func_id) + ::ink::env::chain_extension::ChainExtensionMethod::build(#func_id) .input::<#compound_input_type>() #result_handling #error_code_handling @@ -165,7 +165,7 @@ impl GenerateCode for ChainExtension<'_> { #( #instance_methods )* } - impl ::ink_lang::ChainExtensionInstance for #ident { + impl ::ink::ChainExtensionInstance for #ident { type Instance = #instance_ident; fn instantiate() -> Self::Instance { diff --git a/crates/lang/codegen/src/generator/contract.rs b/crates/ink/codegen/src/generator/contract.rs similarity index 100% rename from crates/lang/codegen/src/generator/contract.rs rename to crates/ink/codegen/src/generator/contract.rs diff --git a/crates/lang/codegen/src/generator/dispatch.rs b/crates/ink/codegen/src/generator/dispatch.rs similarity index 77% rename from crates/lang/codegen/src/generator/dispatch.rs rename to crates/ink/codegen/src/generator/dispatch.rs index a86dae87bc6..3566739fa61 100644 --- a/crates/lang/codegen/src/generator/dispatch.rs +++ b/crates/ink/codegen/src/generator/dispatch.rs @@ -127,7 +127,7 @@ impl Dispatch<'_> { .position(|item| item.has_wildcard_selector()) } - /// Generates code for the [`ink_lang::ContractDispatchables`] trait implementation. + /// Generates code for the [`ink::ContractDispatchables`] trait implementation. /// /// This trait implementation stores information of how many dispatchable /// ink! messages and ink! constructors there are for the ink! smart contract. @@ -137,14 +137,14 @@ impl Dispatch<'_> { let count_messages = self.query_amount_messages(); let count_constructors = self.query_amount_constructors(); quote_spanned!(span=> - impl ::ink_lang::reflect::ContractAmountDispatchables for #storage_ident { + impl ::ink::reflect::ContractAmountDispatchables for #storage_ident { const MESSAGES: ::core::primitive::usize = #count_messages; const CONSTRUCTORS: ::core::primitive::usize = #count_constructors; } ) } - /// Generates code for the [`ink_lang::ContractDispatchableMessages`] trait implementation. + /// Generates code for the [`ink::ContractDispatchableMessages`] trait implementation. /// /// This trait implementation stores the selector ID of each dispatchable /// ink! messages of the ink! smart contract. @@ -170,9 +170,9 @@ impl Dispatch<'_> { quote_spanned!(span=> { ::core::primitive::u32::from_be_bytes( - <<::ink_lang::reflect::TraitDefinitionRegistry<<#storage_ident as ::ink_lang::reflect::ContractEnv>::Env> + <<::ink::reflect::TraitDefinitionRegistry<<#storage_ident as ::ink::reflect::ContractEnv>::Env> as #trait_path>::__ink_TraitInfo - as ::ink_lang::reflect::TraitMessageInfo<#local_id>>::SELECTOR + as ::ink::reflect::TraitMessageInfo<#local_id>>::SELECTOR ) } ) @@ -186,12 +186,12 @@ impl Dispatch<'_> { }) .collect::>(); quote_spanned!(span=> - impl ::ink_lang::reflect::ContractDispatchableMessages<{ - <#storage_ident as ::ink_lang::reflect::ContractAmountDispatchables>::MESSAGES + impl ::ink::reflect::ContractDispatchableMessages<{ + <#storage_ident as ::ink::reflect::ContractAmountDispatchables>::MESSAGES }> for #storage_ident { const IDS: [ ::core::primitive::u32; - <#storage_ident as ::ink_lang::reflect::ContractAmountDispatchables>::MESSAGES + <#storage_ident as ::ink::reflect::ContractAmountDispatchables>::MESSAGES ] = [ #( #message_ids , )* ]; @@ -199,7 +199,7 @@ impl Dispatch<'_> { ) } - /// Generates code for the [`ink_lang::ContractDispatchableConstructors`] trait implementation. + /// Generates code for the [`ink::ContractDispatchableConstructors`] trait implementation. /// /// This trait implementation stores the selector ID of each dispatchable /// ink! constructor of the ink! smart contract. @@ -224,12 +224,12 @@ impl Dispatch<'_> { quote_spanned!(span=> #id) }); quote_spanned!(span=> - impl ::ink_lang::reflect::ContractDispatchableConstructors<{ - <#storage_ident as ::ink_lang::reflect::ContractAmountDispatchables>::CONSTRUCTORS + impl ::ink::reflect::ContractDispatchableConstructors<{ + <#storage_ident as ::ink::reflect::ContractAmountDispatchables>::CONSTRUCTORS }> for #storage_ident { const IDS: [ ::core::primitive::u32; - <#storage_ident as ::ink_lang::reflect::ContractAmountDispatchables>::CONSTRUCTORS + <#storage_ident as ::ink::reflect::ContractAmountDispatchables>::CONSTRUCTORS ] = [ #( #constructor_ids ),* ]; @@ -237,7 +237,7 @@ impl Dispatch<'_> { ) } - /// Generate code for the [`ink_lang::DispatchableConstructorInfo`] trait implementations. + /// Generate code for the [`ink::DispatchableConstructorInfo`] trait implementations. /// /// These trait implementations store relevant dispatch information for every /// dispatchable ink! constructor of the ink! smart contract. @@ -259,7 +259,7 @@ impl Dispatch<'_> { let input_tuple_type = generator::input_types_tuple(constructor.inputs()); let input_tuple_bindings = generator::input_bindings_tuple(constructor.inputs()); quote_spanned!(constructor_span=> - impl ::ink_lang::reflect::DispatchableConstructorInfo<#selector_id> for #storage_ident { + impl ::ink::reflect::DispatchableConstructorInfo<#selector_id> for #storage_ident { type Input = #input_tuple_type; type Storage = #storage_ident; @@ -277,7 +277,7 @@ impl Dispatch<'_> { ) } - /// Generate code for the [`ink_lang::DispatchableMessageInfo`] trait implementations. + /// Generate code for the [`ink::DispatchableMessageInfo`] trait implementations. /// /// These trait implementations store relevant dispatch information for every /// dispatchable ink! constructor of the ink! smart contract. @@ -305,7 +305,7 @@ impl Dispatch<'_> { let input_tuple_type = generator::input_types_tuple(message.inputs()); let input_tuple_bindings = generator::input_bindings_tuple(message.inputs()); quote_spanned!(message_span=> - impl ::ink_lang::reflect::DispatchableMessageInfo<#selector_id> for #storage_ident { + impl ::ink::reflect::DispatchableMessageInfo<#selector_id> for #storage_ident { type Input = #input_tuple_type; type Output = #output_tuple_type; type Storage = #storage_ident; @@ -342,14 +342,14 @@ impl Dispatch<'_> { let mutates = message.receiver().is_ref_mut(); let local_id = message.local_id().hex_padded_suffixed(); let payable = quote! {{ - <<::ink_lang::reflect::TraitDefinitionRegistry<<#storage_ident as ::ink_lang::reflect::ContractEnv>::Env> + <<::ink::reflect::TraitDefinitionRegistry<<#storage_ident as ::ink::reflect::ContractEnv>::Env> as #trait_path>::__ink_TraitInfo - as ::ink_lang::reflect::TraitMessageInfo<#local_id>>::PAYABLE + as ::ink::reflect::TraitMessageInfo<#local_id>>::PAYABLE }}; let selector = quote! {{ - <<::ink_lang::reflect::TraitDefinitionRegistry<<#storage_ident as ::ink_lang::reflect::ContractEnv>::Env> + <<::ink::reflect::TraitDefinitionRegistry<<#storage_ident as ::ink::reflect::ContractEnv>::Env> as #trait_path>::__ink_TraitInfo - as ::ink_lang::reflect::TraitMessageInfo<#local_id>>::SELECTOR + as ::ink::reflect::TraitMessageInfo<#local_id>>::SELECTOR }}; let selector_id = quote! {{ ::core::primitive::u32::from_be_bytes(#selector) @@ -363,7 +363,7 @@ impl Dispatch<'_> { let input_tuple_bindings = generator::input_bindings_tuple(message.inputs()); let label = format!("{}::{}", trait_ident, message_ident); quote_spanned!(message_span=> - impl ::ink_lang::reflect::DispatchableMessageInfo<#selector_id> for #storage_ident { + impl ::ink::reflect::DispatchableMessageInfo<#selector_id> for #storage_ident { type Input = #input_tuple_type; type Output = #output_tuple_type; type Storage = #storage_ident; @@ -406,16 +406,16 @@ impl Dispatch<'_> { #[allow(clippy::nonminimal_bool)] fn deploy() { if !#any_constructor_accept_payment { - ::ink_lang::codegen::deny_payment::<<#storage_ident as ::ink_lang::reflect::ContractEnv>::Env>() + ::ink::codegen::deny_payment::<<#storage_ident as ::ink::reflect::ContractEnv>::Env>() .unwrap_or_else(|error| ::core::panic!("{}", error)) } - ::ink_env::decode_input::< - <#storage_ident as ::ink_lang::reflect::ContractConstructorDecoder>::Type>() - .map_err(|_| ::ink_lang::reflect::DispatchError::CouldNotReadInput) + ::ink::env::decode_input::< + <#storage_ident as ::ink::reflect::ContractConstructorDecoder>::Type>() + .map_err(|_| ::ink::reflect::DispatchError::CouldNotReadInput) .and_then(|decoder| { - <<#storage_ident as ::ink_lang::reflect::ContractConstructorDecoder>::Type - as ::ink_lang::reflect::ExecuteDispatchable>::execute_dispatchable(decoder) + <<#storage_ident as ::ink::reflect::ContractConstructorDecoder>::Type + as ::ink::reflect::ExecuteDispatchable>::execute_dispatchable(decoder) }) .unwrap_or_else(|error| { ::core::panic!("dispatching ink! constructor failed: {}", error) @@ -427,16 +427,16 @@ impl Dispatch<'_> { #[allow(clippy::nonminimal_bool)] fn call() { if !#any_message_accept_payment { - ::ink_lang::codegen::deny_payment::<<#storage_ident as ::ink_lang::reflect::ContractEnv>::Env>() + ::ink::codegen::deny_payment::<<#storage_ident as ::ink::reflect::ContractEnv>::Env>() .unwrap_or_else(|error| ::core::panic!("{}", error)) } - ::ink_env::decode_input::< - <#storage_ident as ::ink_lang::reflect::ContractMessageDecoder>::Type>() - .map_err(|_| ::ink_lang::reflect::DispatchError::CouldNotReadInput) + ::ink::env::decode_input::< + <#storage_ident as ::ink::reflect::ContractMessageDecoder>::Type>() + .map_err(|_| ::ink::reflect::DispatchError::CouldNotReadInput) .and_then(|decoder| { - <<#storage_ident as ::ink_lang::reflect::ContractMessageDecoder>::Type - as ::ink_lang::reflect::ExecuteDispatchable>::execute_dispatchable(decoder) + <<#storage_ident as ::ink::reflect::ContractMessageDecoder>::Type + as ::ink::reflect::ExecuteDispatchable>::execute_dispatchable(decoder) }) .unwrap_or_else(|error| { ::core::panic!("dispatching ink! message failed: {}", error) @@ -463,9 +463,9 @@ impl Dispatch<'_> { constructor_index: usize, ) -> TokenStream2 { quote_spanned!(span=> - <#storage_ident as ::ink_lang::reflect::DispatchableConstructorInfo<{ - <#storage_ident as ::ink_lang::reflect::ContractDispatchableConstructors<{ - <#storage_ident as ::ink_lang::reflect::ContractAmountDispatchables>::CONSTRUCTORS + <#storage_ident as ::ink::reflect::DispatchableConstructorInfo<{ + <#storage_ident as ::ink::reflect::ContractDispatchableConstructors<{ + <#storage_ident as ::ink::reflect::ContractAmountDispatchables>::CONSTRUCTORS }>>::IDS[#constructor_index] }>>::Input ) @@ -492,9 +492,9 @@ impl Dispatch<'_> { let constructor_span = constructor_spans[index]; let constructor_ident = constructor_variant_ident(index); let constructor_selector = quote_spanned!(span=> - <#storage_ident as ::ink_lang::reflect::DispatchableConstructorInfo<{ - <#storage_ident as ::ink_lang::reflect::ContractDispatchableConstructors<{ - <#storage_ident as ::ink_lang::reflect::ContractAmountDispatchables>::CONSTRUCTORS + <#storage_ident as ::ink::reflect::DispatchableConstructorInfo<{ + <#storage_ident as ::ink::reflect::ContractDispatchableConstructors<{ + <#storage_ident as ::ink::reflect::ContractAmountDispatchables>::CONSTRUCTORS }>>::IDS[#index] }>>::SELECTOR ); @@ -503,7 +503,7 @@ impl Dispatch<'_> { #constructor_selector => { ::core::result::Result::Ok(Self::#constructor_ident( <#constructor_input as ::scale::Decode>::decode(input) - .map_err(|_| ::ink_lang::reflect::DispatchError::InvalidParameters)? + .map_err(|_| ::ink::reflect::DispatchError::InvalidParameters)? )) } ) @@ -522,13 +522,13 @@ impl Dispatch<'_> { quote! { ::core::result::Result::Ok(Self::#constructor_ident( <#constructor_input as ::scale::Decode>::decode(input) - .map_err(|_| ::ink_lang::reflect::DispatchError::InvalidParameters)? + .map_err(|_| ::ink::reflect::DispatchError::InvalidParameters)? )) } } None => { quote! { - ::core::result::Result::Err(::ink_lang::reflect::DispatchError::UnknownSelector) + ::core::result::Result::Err(::ink::reflect::DispatchError::UnknownSelector) } } }; @@ -539,16 +539,16 @@ impl Dispatch<'_> { let constructor_span = constructor_spans[index]; let constructor_ident = constructor_variant_ident(index); let constructor_callable = quote_spanned!(constructor_span=> - <#storage_ident as ::ink_lang::reflect::DispatchableConstructorInfo<{ - <#storage_ident as ::ink_lang::reflect::ContractDispatchableConstructors<{ - <#storage_ident as ::ink_lang::reflect::ContractAmountDispatchables>::CONSTRUCTORS + <#storage_ident as ::ink::reflect::DispatchableConstructorInfo<{ + <#storage_ident as ::ink::reflect::ContractDispatchableConstructors<{ + <#storage_ident as ::ink::reflect::ContractAmountDispatchables>::CONSTRUCTORS }>>::IDS[#index] }>>::CALLABLE ); let deny_payment = quote_spanned!(constructor_span=> - !<#storage_ident as ::ink_lang::reflect::DispatchableConstructorInfo<{ - <#storage_ident as ::ink_lang::reflect::ContractDispatchableConstructors<{ - <#storage_ident as ::ink_lang::reflect::ContractAmountDispatchables>::CONSTRUCTORS + !<#storage_ident as ::ink::reflect::DispatchableConstructorInfo<{ + <#storage_ident as ::ink::reflect::ContractDispatchableConstructors<{ + <#storage_ident as ::ink::reflect::ContractAmountDispatchables>::CONSTRUCTORS }>>::IDS[#index] }>>::PAYABLE ); @@ -556,11 +556,11 @@ impl Dispatch<'_> { quote_spanned!(constructor_span=> Self::#constructor_ident(input) => { if #any_constructor_accept_payment && #deny_payment { - ::ink_lang::codegen::deny_payment::< - <#storage_ident as ::ink_lang::reflect::ContractEnv>::Env>()?; + ::ink::codegen::deny_payment::< + <#storage_ident as ::ink::reflect::ContractEnv>::Env>()?; } - ::ink_lang::codegen::execute_constructor::<#storage_ident, _, _>( + ::ink::codegen::execute_constructor::<#storage_ident, _, _>( move || { #constructor_callable(input) } ) } @@ -573,14 +573,14 @@ impl Dispatch<'_> { #( #constructors_variants ),* } - impl ::ink_lang::reflect::DecodeDispatch for __ink_ConstructorDecoder { + impl ::ink::reflect::DecodeDispatch for __ink_ConstructorDecoder { fn decode_dispatch(input: &mut I) - -> ::core::result::Result + -> ::core::result::Result where I: ::scale::Input, { match <[::core::primitive::u8; 4usize] as ::scale::Decode>::decode(input) - .map_err(|_| ::ink_lang::reflect::DispatchError::InvalidSelector)? + .map_err(|_| ::ink::reflect::DispatchError::InvalidSelector)? { #( #constructor_match , )* _invalid => #possibly_wildcard_selector_constructor @@ -593,21 +593,21 @@ impl Dispatch<'_> { where I: ::scale::Input, { - ::decode_dispatch(input) + ::decode_dispatch(input) .map_err(::core::convert::Into::into) } } - impl ::ink_lang::reflect::ExecuteDispatchable for __ink_ConstructorDecoder { + impl ::ink::reflect::ExecuteDispatchable for __ink_ConstructorDecoder { #[allow(clippy::nonminimal_bool)] - fn execute_dispatchable(self) -> ::core::result::Result<(), ::ink_lang::reflect::DispatchError> { + fn execute_dispatchable(self) -> ::core::result::Result<(), ::ink::reflect::DispatchError> { match self { #( #constructor_execute ),* } } } - impl ::ink_lang::reflect::ContractConstructorDecoder for #storage_ident { + impl ::ink::reflect::ContractConstructorDecoder for #storage_ident { type Type = __ink_ConstructorDecoder; } }; @@ -632,9 +632,9 @@ impl Dispatch<'_> { message_index: usize, ) -> TokenStream2 { quote_spanned!(span=> - <#storage_ident as ::ink_lang::reflect::DispatchableMessageInfo<{ - <#storage_ident as ::ink_lang::reflect::ContractDispatchableMessages<{ - <#storage_ident as ::ink_lang::reflect::ContractAmountDispatchables>::MESSAGES + <#storage_ident as ::ink::reflect::DispatchableMessageInfo<{ + <#storage_ident as ::ink::reflect::ContractDispatchableMessages<{ + <#storage_ident as ::ink::reflect::ContractAmountDispatchables>::MESSAGES }>>::IDS[#message_index] }>>::Input ) @@ -660,9 +660,9 @@ impl Dispatch<'_> { let message_span = message_spans[index]; let message_ident = message_variant_ident(index); let message_selector = quote_spanned!(span=> - <#storage_ident as ::ink_lang::reflect::DispatchableMessageInfo<{ - <#storage_ident as ::ink_lang::reflect::ContractDispatchableMessages<{ - <#storage_ident as ::ink_lang::reflect::ContractAmountDispatchables>::MESSAGES + <#storage_ident as ::ink::reflect::DispatchableMessageInfo<{ + <#storage_ident as ::ink::reflect::ContractDispatchableMessages<{ + <#storage_ident as ::ink::reflect::ContractAmountDispatchables>::MESSAGES }>>::IDS[#index] }>>::SELECTOR ); @@ -671,7 +671,7 @@ impl Dispatch<'_> { #message_selector => { ::core::result::Result::Ok(Self::#message_ident( <#message_input as ::scale::Decode>::decode(input) - .map_err(|_| ::ink_lang::reflect::DispatchError::InvalidParameters)? + .map_err(|_| ::ink::reflect::DispatchError::InvalidParameters)? )) } ) @@ -685,13 +685,13 @@ impl Dispatch<'_> { quote! { ::core::result::Result::Ok(Self::#message_ident( <#message_input as ::scale::Decode>::decode(input) - .map_err(|_| ::ink_lang::reflect::DispatchError::InvalidParameters)? + .map_err(|_| ::ink::reflect::DispatchError::InvalidParameters)? )) } } None => { quote! { - ::core::result::Result::Err(::ink_lang::reflect::DispatchError::UnknownSelector) + ::core::result::Result::Err(::ink::reflect::DispatchError::UnknownSelector) } } }; @@ -702,30 +702,30 @@ impl Dispatch<'_> { let message_span = message_spans[index]; let message_ident = message_variant_ident(index); let message_callable = quote_spanned!(message_span=> - <#storage_ident as ::ink_lang::reflect::DispatchableMessageInfo<{ - <#storage_ident as ::ink_lang::reflect::ContractDispatchableMessages<{ - <#storage_ident as ::ink_lang::reflect::ContractAmountDispatchables>::MESSAGES + <#storage_ident as ::ink::reflect::DispatchableMessageInfo<{ + <#storage_ident as ::ink::reflect::ContractDispatchableMessages<{ + <#storage_ident as ::ink::reflect::ContractAmountDispatchables>::MESSAGES }>>::IDS[#index] }>>::CALLABLE ); let message_output = quote_spanned!(message_span=> - <#storage_ident as ::ink_lang::reflect::DispatchableMessageInfo<{ - <#storage_ident as ::ink_lang::reflect::ContractDispatchableMessages<{ - <#storage_ident as ::ink_lang::reflect::ContractAmountDispatchables>::MESSAGES + <#storage_ident as ::ink::reflect::DispatchableMessageInfo<{ + <#storage_ident as ::ink::reflect::ContractDispatchableMessages<{ + <#storage_ident as ::ink::reflect::ContractAmountDispatchables>::MESSAGES }>>::IDS[#index] }>>::Output ); let deny_payment = quote_spanned!(message_span=> - !<#storage_ident as ::ink_lang::reflect::DispatchableMessageInfo<{ - <#storage_ident as ::ink_lang::reflect::ContractDispatchableMessages<{ - <#storage_ident as ::ink_lang::reflect::ContractAmountDispatchables>::MESSAGES + !<#storage_ident as ::ink::reflect::DispatchableMessageInfo<{ + <#storage_ident as ::ink::reflect::ContractDispatchableMessages<{ + <#storage_ident as ::ink::reflect::ContractAmountDispatchables>::MESSAGES }>>::IDS[#index] }>>::PAYABLE ); let mutates_storage = quote_spanned!(message_span=> - <#storage_ident as ::ink_lang::reflect::DispatchableMessageInfo<{ - <#storage_ident as ::ink_lang::reflect::ContractDispatchableMessages<{ - <#storage_ident as ::ink_lang::reflect::ContractAmountDispatchables>::MESSAGES + <#storage_ident as ::ink::reflect::DispatchableMessageInfo<{ + <#storage_ident as ::ink::reflect::ContractDispatchableMessages<{ + <#storage_ident as ::ink::reflect::ContractAmountDispatchables>::MESSAGES }>>::IDS[#index] }>>::MUTATES ); @@ -735,20 +735,20 @@ impl Dispatch<'_> { use ::core::default::Default; if #any_message_accept_payment && #deny_payment { - ::ink_lang::codegen::deny_payment::< - <#storage_ident as ::ink_lang::reflect::ContractEnv>::Env>()?; + ::ink::codegen::deny_payment::< + <#storage_ident as ::ink::reflect::ContractEnv>::Env>()?; } let result: #message_output = #message_callable(&mut contract, input); - let failure = ::ink_lang::is_result_type!(#message_output) - && ::ink_lang::is_result_err!(result); + let failure = ::ink::is_result_type!(#message_output) + && ::ink::is_result_err!(result); if failure { // We return early here since there is no need to push back the // intermediate results of the contract - the transaction is going to be // reverted anyways. - ::ink_env::return_value::<#message_output>( - ::ink_env::ReturnFlags::default().set_reverted(true), &result + ::ink::env::return_value::<#message_output>( + ::ink::env::ReturnFlags::default().set_reverted(true), &result ) } @@ -756,8 +756,8 @@ impl Dispatch<'_> { if ::core::any::TypeId::of::<#message_output>() != ::core::any::TypeId::of::<()>() { // In case the return type is `()` we do not return a value. - ::ink_env::return_value::<#message_output>( - ::ink_env::ReturnFlags::default(), &result + ::ink::env::return_value::<#message_output>( + ::ink::env::ReturnFlags::default(), &result ) } } @@ -771,14 +771,14 @@ impl Dispatch<'_> { #( #message_variants ),* } - impl ::ink_lang::reflect::DecodeDispatch for __ink_MessageDecoder { + impl ::ink::reflect::DecodeDispatch for __ink_MessageDecoder { fn decode_dispatch(input: &mut I) - -> ::core::result::Result + -> ::core::result::Result where I: ::scale::Input, { match <[::core::primitive::u8; 4usize] as ::scale::Decode>::decode(input) - .map_err(|_| ::ink_lang::reflect::DispatchError::InvalidSelector)? + .map_err(|_| ::ink::reflect::DispatchError::InvalidSelector)? { #( #message_match , )* _invalid => #possibly_wildcard_selector_message @@ -791,29 +791,29 @@ impl Dispatch<'_> { where I: ::scale::Input, { - ::decode_dispatch(input) + ::decode_dispatch(input) .map_err(::core::convert::Into::into) } } fn push_contract(contract: ::core::mem::ManuallyDrop<#storage_ident>, mutates: bool) { if mutates { - ::ink_env::set_contract_storage::<::ink_primitives::Key, #storage_ident>( - &<#storage_ident as ::ink_storage::traits::StorageKey>::KEY, + ::ink::env::set_contract_storage::<::ink::primitives::Key, #storage_ident>( + &<#storage_ident as ::ink::storage::traits::StorageKey>::KEY, &contract, ); } } - impl ::ink_lang::reflect::ExecuteDispatchable for __ink_MessageDecoder { + impl ::ink::reflect::ExecuteDispatchable for __ink_MessageDecoder { #[allow(clippy::nonminimal_bool, clippy::let_unit_value)] fn execute_dispatchable( self - ) -> ::core::result::Result<(), ::ink_lang::reflect::DispatchError> { - let key = <#storage_ident as ::ink_storage::traits::StorageKey>::KEY; + ) -> ::core::result::Result<(), ::ink::reflect::DispatchError> { + let key = <#storage_ident as ::ink::storage::traits::StorageKey>::KEY; let mut contract: ::core::mem::ManuallyDrop<#storage_ident> = ::core::mem::ManuallyDrop::new( - match ::ink_env::get_contract_storage(&key) { + match ::ink::env::get_contract_storage(&key) { ::core::result::Result::Ok(::core::option::Option::Some(value)) => value, ::core::result::Result::Ok(::core::option::Option::None) => { ::core::panic!("storage entry was empty") @@ -832,7 +832,7 @@ impl Dispatch<'_> { } } - impl ::ink_lang::reflect::ContractMessageDecoder for #storage_ident { + impl ::ink::reflect::ContractMessageDecoder for #storage_ident { type Type = __ink_MessageDecoder; } }; @@ -856,9 +856,9 @@ impl Dispatch<'_> { let message_is_payable = (0..count_messages).map(|index| { let message_span = message_spans[index]; quote_spanned!(message_span=> - <#storage_ident as ::ink_lang::reflect::DispatchableMessageInfo<{ - <#storage_ident as ::ink_lang::reflect::ContractDispatchableMessages<{ - <#storage_ident as ::ink_lang::reflect::ContractAmountDispatchables>::MESSAGES + <#storage_ident as ::ink::reflect::DispatchableMessageInfo<{ + <#storage_ident as ::ink::reflect::ContractDispatchableMessages<{ + <#storage_ident as ::ink::reflect::ContractAmountDispatchables>::MESSAGES }>>::IDS[#index] }>>::PAYABLE ) @@ -885,9 +885,9 @@ impl Dispatch<'_> { let constructor_is_payable = (0..count_constructors).map(|index| { let constructor_span = constructor_spans[index]; quote_spanned!(constructor_span=> - <#storage_ident as ::ink_lang::reflect::DispatchableConstructorInfo<{ - <#storage_ident as ::ink_lang::reflect::ContractDispatchableConstructors<{ - <#storage_ident as ::ink_lang::reflect::ContractAmountDispatchables>::CONSTRUCTORS + <#storage_ident as ::ink::reflect::DispatchableConstructorInfo<{ + <#storage_ident as ::ink::reflect::ContractDispatchableConstructors<{ + <#storage_ident as ::ink::reflect::ContractAmountDispatchables>::CONSTRUCTORS }>>::IDS[#index] }>>::PAYABLE ) diff --git a/crates/lang/codegen/src/generator/env.rs b/crates/ink/codegen/src/generator/env.rs similarity index 59% rename from crates/lang/codegen/src/generator/env.rs rename to crates/ink/codegen/src/generator/env.rs index 6dba218cbdd..a9ebd428731 100644 --- a/crates/lang/codegen/src/generator/env.rs +++ b/crates/ink/codegen/src/generator/env.rs @@ -28,17 +28,17 @@ impl GenerateCode for Env<'_> { let env = self.contract.config().env(); let storage_ident = self.contract.module().storage().ident(); quote! { - impl ::ink_lang::reflect::ContractEnv for #storage_ident { + impl ::ink::reflect::ContractEnv for #storage_ident { type Env = #env; } - type Environment = <#storage_ident as ::ink_lang::reflect::ContractEnv>::Env; + type Environment = <#storage_ident as ::ink::reflect::ContractEnv>::Env; - type AccountId = <<#storage_ident as ::ink_lang::reflect::ContractEnv>::Env as ::ink_env::Environment>::AccountId; - type Balance = <<#storage_ident as ::ink_lang::reflect::ContractEnv>::Env as ::ink_env::Environment>::Balance; - type Hash = <<#storage_ident as ::ink_lang::reflect::ContractEnv>::Env as ::ink_env::Environment>::Hash; - type Timestamp = <<#storage_ident as ::ink_lang::reflect::ContractEnv>::Env as ::ink_env::Environment>::Timestamp; - type BlockNumber = <<#storage_ident as ::ink_lang::reflect::ContractEnv>::Env as ::ink_env::Environment>::BlockNumber; + type AccountId = <<#storage_ident as ::ink::reflect::ContractEnv>::Env as ::ink::env::Environment>::AccountId; + type Balance = <<#storage_ident as ::ink::reflect::ContractEnv>::Env as ::ink::env::Environment>::Balance; + type Hash = <<#storage_ident as ::ink::reflect::ContractEnv>::Env as ::ink::env::Environment>::Hash; + type Timestamp = <<#storage_ident as ::ink::reflect::ContractEnv>::Env as ::ink::env::Environment>::Timestamp; + type BlockNumber = <<#storage_ident as ::ink::reflect::ContractEnv>::Env as ::ink::env::Environment>::BlockNumber; } } } diff --git a/crates/lang/codegen/src/generator/events.rs b/crates/ink/codegen/src/generator/events.rs similarity index 79% rename from crates/lang/codegen/src/generator/events.rs rename to crates/ink/codegen/src/generator/events.rs index 3f1ab62b923..c329ad81cf3 100644 --- a/crates/lang/codegen/src/generator/events.rs +++ b/crates/ink/codegen/src/generator/events.rs @@ -59,14 +59,14 @@ impl<'a> Events<'a> { let storage_ident = &self.contract.module().storage().ident(); quote! { const _: () = { - impl<'a> ::ink_lang::codegen::EmitEvent<#storage_ident> for ::ink_lang::EnvAccess<'a, Environment> { + impl<'a> ::ink::codegen::EmitEvent<#storage_ident> for ::ink::EnvAccess<'a, Environment> { fn emit_event(self, event: E) where - E: Into<<#storage_ident as ::ink_lang::reflect::ContractEventBase>::Type>, + E: Into<<#storage_ident as ::ink::reflect::ContractEventBase>::Type>, { - ::ink_env::emit_event::< + ::ink::env::emit_event::< Environment, - <#storage_ident as ::ink_lang::reflect::ContractEventBase>::Type + <#storage_ident as ::ink::reflect::ContractEventBase>::Type >(event.into()); } } @@ -101,7 +101,7 @@ impl<'a> Events<'a> { } const _: () = { - impl ::ink_lang::reflect::ContractEventBase for #storage_ident { + impl ::ink::reflect::ContractEventBase for #storage_ident { type Type = #base_event_ident; } }; @@ -118,25 +118,25 @@ impl<'a> Events<'a> { const _: () = { pub enum __ink_UndefinedAmountOfTopics {} - impl ::ink_env::topics::EventTopicsAmount for __ink_UndefinedAmountOfTopics { + impl ::ink::env::topics::EventTopicsAmount for __ink_UndefinedAmountOfTopics { const AMOUNT: usize = 0; } - impl ::ink_env::Topics for #base_event_ident { + impl ::ink::env::Topics for #base_event_ident { type RemainingTopics = __ink_UndefinedAmountOfTopics; fn topics( &self, - builder: ::ink_env::topics::TopicsBuilder<::ink_env::topics::state::Uninit, E, B>, - ) -> >::Output + builder: ::ink::env::topics::TopicsBuilder<::ink::env::topics::state::Uninit, E, B>, + ) -> >::Output where - E: ::ink_env::Environment, - B: ::ink_env::topics::TopicsBuilderBackend, + E: ::ink::env::Environment, + B: ::ink::env::topics::TopicsBuilderBackend, { match self { #( Self::#event_idents(event) => { - <#event_idents as ::ink_env::Topics>::topics::(event, builder) + <#event_idents as ::ink::env::Topics>::topics::(event, builder) } )* } @@ -153,16 +153,16 @@ impl<'a> Events<'a> { let event_ident = event.ident(); let len_topics = event.fields().filter(|event| event.is_topic).count(); let max_len_topics = quote_spanned!(span=> - <<#storage_ident as ::ink_lang::reflect::ContractEnv>::Env - as ::ink_env::Environment>::MAX_EVENT_TOPICS + <<#storage_ident as ::ink::reflect::ContractEnv>::Env + as ::ink::env::Environment>::MAX_EVENT_TOPICS ); quote_spanned!(span=> - impl ::ink_lang::codegen::EventLenTopics for #event_ident { - type LenTopics = ::ink_lang::codegen::EventTopics<#len_topics>; + impl ::ink::codegen::EventLenTopics for #event_ident { + type LenTopics = ::ink::codegen::EventTopics<#len_topics>; } - const _: () = ::ink_lang::codegen::utils::consume_type::< - ::ink_lang::codegen::EventRespectsTopicLimit< + const _: () = ::ink::codegen::utils::consume_type::< + ::ink::codegen::EventRespectsTopicLimit< #event_ident, { #max_len_topics }, > @@ -208,8 +208,8 @@ impl<'a> Events<'a> { field_ident ).as_bytes(), span); quote_spanned!(span => - .push_topic::<::ink_env::topics::PrefixedValue<#field_type>>( - &::ink_env::topics::PrefixedValue { value: &self.#field_ident, prefix: #signature } + .push_topic::<::ink::env::topics::PrefixedValue<#field_type>>( + &::ink::env::topics::PrefixedValue { value: &self.#field_ident, prefix: #signature } ) ) }); @@ -217,29 +217,29 @@ impl<'a> Events<'a> { let event_signature_topic = match event.anonymous { true => None, false => Some(quote_spanned!(span=> - .push_topic::<::ink_env::topics::PrefixedValue<[u8; #len_event_signature]>>( - &::ink_env::topics::PrefixedValue { value: #event_signature, prefix: b"" } + .push_topic::<::ink::env::topics::PrefixedValue<[u8; #len_event_signature]>>( + &::ink::env::topics::PrefixedValue { value: #event_signature, prefix: b"" } ) )) }; // Anonymous events require 1 fewer topics since they do not include their signature. let anonymous_topics_offset = if event.anonymous { 0 } else { 1 }; let remaining_topics_ty = match len_topics + anonymous_topics_offset { - 0 => quote_spanned!(span=> ::ink_env::topics::state::NoRemainingTopics), - n => quote_spanned!(span=> [::ink_env::topics::state::HasRemainingTopics; #n]), + 0 => quote_spanned!(span=> ::ink::env::topics::state::NoRemainingTopics), + n => quote_spanned!(span=> [::ink::env::topics::state::HasRemainingTopics; #n]), }; quote_spanned!(span => const _: () = { - impl ::ink_env::Topics for #event_ident { + impl ::ink::env::Topics for #event_ident { type RemainingTopics = #remaining_topics_ty; fn topics( &self, - builder: ::ink_env::topics::TopicsBuilder<::ink_env::topics::state::Uninit, E, B>, - ) -> >::Output + builder: ::ink::env::topics::TopicsBuilder<::ink::env::topics::state::Uninit, E, B>, + ) -> >::Output where - E: ::ink_env::Environment, - B: ::ink_env::topics::TopicsBuilderBackend, + E: ::ink::env::Environment, + B: ::ink::env::topics::TopicsBuilderBackend, { builder .build::() diff --git a/crates/lang/codegen/src/generator/ink_test.rs b/crates/ink/codegen/src/generator/ink_test.rs similarity index 93% rename from crates/lang/codegen/src/generator/ink_test.rs rename to crates/ink/codegen/src/generator/ink_test.rs index 439136a02f9..88f669e11c1 100644 --- a/crates/lang/codegen/src/generator/ink_test.rs +++ b/crates/ink/codegen/src/generator/ink_test.rs @@ -45,7 +45,7 @@ impl GenerateCode for InkTest<'_> { #( #attrs )* #[test] #vis fn #fn_name( #fn_args ) { - ::ink_env::test::run_test::<::ink_env::DefaultEnvironment, _>(|_| { + ::ink::env::test::run_test::<::ink::env::DefaultEnvironment, _>(|_| { { { #fn_block @@ -62,7 +62,7 @@ impl GenerateCode for InkTest<'_> { #( #attrs )* #[test] #vis fn #fn_name( #fn_args ) #rarrow #ret_type { - ::ink_env::test::run_test::<::ink_env::DefaultEnvironment, _>(|_| { + ::ink::env::test::run_test::<::ink::env::DefaultEnvironment, _>(|_| { #fn_block }) } diff --git a/crates/lang/codegen/src/generator/item_impls.rs b/crates/ink/codegen/src/generator/item_impls.rs similarity index 87% rename from crates/lang/codegen/src/generator/item_impls.rs rename to crates/ink/codegen/src/generator/item_impls.rs index 17ff0e52614..4122d832519 100644 --- a/crates/lang/codegen/src/generator/item_impls.rs +++ b/crates/ink/codegen/src/generator/item_impls.rs @@ -49,12 +49,12 @@ impl GenerateCode for ItemImpls<'_> { let use_emit_event = self.contract.module().events().next().is_some().then(|| { // Required to make `self.env().emit_event(...)` syntax available. - quote! { use ::ink_lang::codegen::EmitEvent as _; } + quote! { use ::ink::codegen::EmitEvent as _; } }); quote! { const _: () = { // Required to make `self.env()` and `Self::env()` syntax available. - use ::ink_lang::codegen::{Env as _, StaticEnv as _}; + use ::ink::codegen::{Env as _, StaticEnv as _}; #use_emit_event #( #item_impls )* @@ -90,23 +90,23 @@ impl ItemImpls<'_> { let message_local_id = message.local_id().hex_padded_suffixed(); let message_guard_payable = message.is_payable().then(|| { quote_spanned!(message_span=> - const _: ::ink_lang::codegen::TraitMessagePayable<{ - <<::ink_lang::reflect::TraitDefinitionRegistry<<#storage_ident as ::ink_lang::reflect::ContractEnv>::Env> + const _: ::ink::codegen::TraitMessagePayable<{ + <<::ink::reflect::TraitDefinitionRegistry<<#storage_ident as ::ink::reflect::ContractEnv>::Env> as #trait_path>::__ink_TraitInfo - as ::ink_lang::reflect::TraitMessageInfo<#message_local_id>>::PAYABLE - }> = ::ink_lang::codegen::TraitMessagePayable::; + as ::ink::reflect::TraitMessageInfo<#message_local_id>>::PAYABLE + }> = ::ink::codegen::TraitMessagePayable::; ) }); let message_guard_selector = message.user_provided_selector().map(|selector| { let given_selector = selector.into_be_u32().hex_padded_suffixed(); quote_spanned!(message_span=> - const _: ::ink_lang::codegen::TraitMessageSelector<{ + const _: ::ink::codegen::TraitMessageSelector<{ ::core::primitive::u32::from_be_bytes( - <<::ink_lang::reflect::TraitDefinitionRegistry<<#storage_ident as ::ink_lang::reflect::ContractEnv>::Env> + <<::ink::reflect::TraitDefinitionRegistry<<#storage_ident as ::ink::reflect::ContractEnv>::Env> as #trait_path>::__ink_TraitInfo - as ::ink_lang::reflect::TraitMessageInfo<#message_local_id>>::SELECTOR + as ::ink::reflect::TraitMessageInfo<#message_local_id>>::SELECTOR ) - }> = ::ink_lang::codegen::TraitMessageSelector::<#given_selector>; + }> = ::ink::codegen::TraitMessageSelector::<#given_selector>; ) }); quote_spanned!(message_span=> @@ -133,8 +133,8 @@ impl ItemImpls<'_> { let span = input.span(); let input_type = &*input.ty; quote_spanned!(span=> - ::ink_lang::codegen::utils::consume_type::< - ::ink_lang::codegen::DispatchInput<#input_type> + ::ink::codegen::utils::consume_type::< + ::ink::codegen::DispatchInput<#input_type> >(); ) }); @@ -153,16 +153,16 @@ impl ItemImpls<'_> { let span = input.span(); let input_type = &*input.ty; quote_spanned!(span=> - ::ink_lang::codegen::utils::consume_type::< - ::ink_lang::codegen::DispatchInput<#input_type> + ::ink::codegen::utils::consume_type::< + ::ink::codegen::DispatchInput<#input_type> >(); ) }); let message_output = message.output().map(|output_type| { let span = output_type.span(); quote_spanned!(span=> - ::ink_lang::codegen::utils::consume_type::< - ::ink_lang::codegen::DispatchOutput<#output_type> + ::ink::codegen::utils::consume_type::< + ::ink::codegen::DispatchOutput<#output_type> >(); ) }); @@ -218,7 +218,7 @@ impl ItemImpls<'_> { quote_spanned!(span => #( #attrs )* impl #trait_path for #self_type { - type __ink_TraitInfo = <::ink_lang::reflect::TraitDefinitionRegistry + type __ink_TraitInfo = <::ink::reflect::TraitDefinitionRegistry as #trait_path>::__ink_TraitInfo; #( #messages )* @@ -300,8 +300,8 @@ impl ItemImpls<'_> { let span = self_ty.span(); let storage_ident = self.contract.module().storage().ident(); quote_spanned!(span => - const _: ::ink_lang::codegen::utils::IsSameType<#storage_ident> = - ::ink_lang::codegen::utils::IsSameType::<#self_ty>::new(); + const _: ::ink::codegen::utils::IsSameType<#storage_ident> = + ::ink::codegen::utils::IsSameType::<#self_ty>::new(); ) } diff --git a/crates/lang/codegen/src/generator/metadata.rs b/crates/ink/codegen/src/generator/metadata.rs similarity index 88% rename from crates/lang/codegen/src/generator/metadata.rs rename to crates/ink/codegen/src/generator/metadata.rs index ae43c0ec96d..63f477bb232 100644 --- a/crates/lang/codegen/src/generator/metadata.rs +++ b/crates/ink/codegen/src/generator/metadata.rs @@ -45,12 +45,12 @@ impl GenerateCode for Metadata<'_> { #[cfg(not(feature = "ink-as-dependency"))] const _: () = { #[no_mangle] - pub fn __ink_generate_metadata() -> ::ink_metadata::InkProject { + pub fn __ink_generate_metadata() -> ::ink::metadata::InkProject { let layout = #layout; - ::ink_metadata::layout::ValidateLayout::validate(&layout).unwrap_or_else(|error| { + ::ink::metadata::layout::ValidateLayout::validate(&layout).unwrap_or_else(|error| { ::core::panic!("metadata ink! generation failed: {}", error) }); - ::ink_metadata::InkProject::new(layout, #contract) + ::ink::metadata::InkProject::new(layout, #contract) } }; } @@ -61,18 +61,18 @@ impl Metadata<'_> { fn generate_layout(&self) -> TokenStream2 { let storage_span = self.contract.module().storage().span(); let storage_ident = self.contract.module().storage().ident(); - let key = quote! { <#storage_ident as ::ink_storage::traits::StorageKey>::KEY }; + let key = quote! { <#storage_ident as ::ink::storage::traits::StorageKey>::KEY }; let layout_key = quote! { - <::ink_metadata::layout::LayoutKey - as ::core::convert::From<::ink_primitives::Key>>::from(#key) + <::ink::metadata::layout::LayoutKey + as ::core::convert::From<::ink::primitives::Key>>::from(#key) }; quote_spanned!(storage_span=> // Wrap the layout of the contract into the `RootLayout`, because // contract storage key is reserved for all packed fields - ::ink_metadata::layout::Layout::Root(::ink_metadata::layout::RootLayout::new( + ::ink::metadata::layout::Layout::Root(::ink::metadata::layout::RootLayout::new( #layout_key, - <#storage_ident as ::ink_storage::traits::StorageLayout>::layout( + <#storage_ident as ::ink::storage::traits::StorageLayout>::layout( &#key, ), )) @@ -90,7 +90,7 @@ impl Metadata<'_> { .iter() .filter_map(|attr| attr.extract_docs()); quote! { - ::ink_metadata::ContractSpec::new() + ::ink::metadata::ContractSpec::new() .constructors([ #( #constructors ),* ]) @@ -132,7 +132,7 @@ impl Metadata<'_> { let ident = constructor.ident(); let args = constructor.inputs().map(Self::generate_dispatch_argument); quote_spanned!(span=> - ::ink_metadata::ConstructorSpec::from_label(::core::stringify!(#ident)) + ::ink::metadata::ConstructorSpec::from_label(::core::stringify!(#ident)) .selector([ #( #selector_bytes ),* ]) @@ -155,7 +155,7 @@ impl Metadata<'_> { }; let type_spec = Self::generate_type_spec(&pat_type.ty); quote! { - ::ink_metadata::MessageParamSpec::new(::core::stringify!(#ident)) + ::ink::metadata::MessageParamSpec::new(::core::stringify!(#ident)) .of_type(#type_spec) .done() } @@ -164,7 +164,7 @@ impl Metadata<'_> { /// Generates the ink! metadata for the given type. fn generate_type_spec(ty: &syn::Type) -> TokenStream2 { fn without_display_name(ty: &syn::Type) -> TokenStream2 { - quote! { ::ink_metadata::TypeSpec::new::<#ty>() } + quote! { ::ink::metadata::TypeSpec::new::<#ty>() } } if let syn::Type::Path(type_path) = ty { if type_path.qself.is_some() { @@ -180,7 +180,7 @@ impl Metadata<'_> { .map(|seg| &seg.ident) .collect::>(); quote! { - ::ink_metadata::TypeSpec::with_name_segs::<#ty, _>( + ::ink::metadata::TypeSpec::with_name_segs::<#ty, _>( ::core::iter::IntoIterator::into_iter([ #( ::core::stringify!(#segs) ),* ]) .map(::core::convert::AsRef::as_ref) ) @@ -221,7 +221,7 @@ impl Metadata<'_> { let args = message.inputs().map(Self::generate_dispatch_argument); let ret_ty = Self::generate_return_type(message.output()); quote_spanned!(span => - ::ink_metadata::MessageSpec::from_label(::core::stringify!(#ident)) + ::ink::metadata::MessageSpec::from_label(::core::stringify!(#ident)) .selector([ #( #selector_bytes ),* ]) @@ -270,19 +270,19 @@ impl Metadata<'_> { let mutates = message.receiver().is_ref_mut(); let local_id = message.local_id().hex_padded_suffixed(); let is_payable = quote! {{ - <<::ink_lang::reflect::TraitDefinitionRegistry<<#storage_ident as ::ink_lang::reflect::ContractEnv>::Env> + <<::ink::reflect::TraitDefinitionRegistry<<#storage_ident as ::ink::reflect::ContractEnv>::Env> as #trait_path>::__ink_TraitInfo - as ::ink_lang::reflect::TraitMessageInfo<#local_id>>::PAYABLE + as ::ink::reflect::TraitMessageInfo<#local_id>>::PAYABLE }}; let selector = quote! {{ - <<::ink_lang::reflect::TraitDefinitionRegistry<<#storage_ident as ::ink_lang::reflect::ContractEnv>::Env> + <<::ink::reflect::TraitDefinitionRegistry<<#storage_ident as ::ink::reflect::ContractEnv>::Env> as #trait_path>::__ink_TraitInfo - as ::ink_lang::reflect::TraitMessageInfo<#local_id>>::SELECTOR + as ::ink::reflect::TraitMessageInfo<#local_id>>::SELECTOR }}; let ret_ty = Self::generate_return_type(message.output()); let label = [trait_ident.to_string(), message_ident.to_string()].join("::"); quote_spanned!(message_span=> - ::ink_metadata::MessageSpec::from_label(#label) + ::ink::metadata::MessageSpec::from_label(#label) .selector(#selector) .args([ #( #message_args ),* @@ -304,13 +304,13 @@ impl Metadata<'_> { match ret_ty { None => { quote! { - ::ink_metadata::ReturnTypeSpec::new(::core::option::Option::None) + ::ink::metadata::ReturnTypeSpec::new(::core::option::Option::None) } } Some(ty) => { let type_spec = Self::generate_type_spec(ty); quote! { - ::ink_metadata::ReturnTypeSpec::new(#type_spec) + ::ink::metadata::ReturnTypeSpec::new(#type_spec) } } } @@ -324,7 +324,7 @@ impl Metadata<'_> { let docs = event.attrs().iter().filter_map(|attr| attr.extract_docs()); let args = Self::generate_event_args(event); quote_spanned!(span => - ::ink_metadata::EventSpec::new(::core::stringify!(#ident)) + ::ink::metadata::EventSpec::new(::core::stringify!(#ident)) .args([ #( #args ),* ]) @@ -348,7 +348,7 @@ impl Metadata<'_> { .filter_map(|attr| attr.extract_docs()); let ty = Self::generate_type_spec(event_field.ty()); quote_spanned!(span => - ::ink_metadata::EventParamSpec::new(::core::stringify!(#ident)) + ::ink::metadata::EventParamSpec::new(::core::stringify!(#ident)) .of_type(#ty) .indexed(#is_topic) .docs([ diff --git a/crates/lang/codegen/src/generator/mod.rs b/crates/ink/codegen/src/generator/mod.rs similarity index 100% rename from crates/lang/codegen/src/generator/mod.rs rename to crates/ink/codegen/src/generator/mod.rs diff --git a/crates/lang/codegen/src/generator/selector.rs b/crates/ink/codegen/src/generator/selector.rs similarity index 100% rename from crates/lang/codegen/src/generator/selector.rs rename to crates/ink/codegen/src/generator/selector.rs diff --git a/crates/lang/codegen/src/generator/storage.rs b/crates/ink/codegen/src/generator/storage.rs similarity index 81% rename from crates/lang/codegen/src/generator/storage.rs rename to crates/ink/codegen/src/generator/storage.rs index 52c9f2d2509..dcc38a3b0f5 100644 --- a/crates/lang/codegen/src/generator/storage.rs +++ b/crates/ink/codegen/src/generator/storage.rs @@ -36,7 +36,7 @@ impl GenerateCode for Storage<'_> { let use_emit_event = self.contract.module().events().next().is_some().then(|| { // Required to allow for `self.env().emit_event(...)` in messages and constructors. - quote! { use ::ink_lang::codegen::EmitEvent as _; } + quote! { use ::ink::codegen::EmitEvent as _; } }); quote_spanned!(storage_span => #storage_struct @@ -45,7 +45,7 @@ impl GenerateCode for Storage<'_> { const _: () = { // Used to make `self.env()` and `Self::env()` available in message code. #[allow(unused_imports)] - use ::ink_lang::codegen::{ + use ::ink::codegen::{ Env as _, StaticEnv as _, }; @@ -60,22 +60,22 @@ impl Storage<'_> { let storage_ident = &self.contract.module().storage().ident(); quote! { const _: () = { - impl<'a> ::ink_lang::codegen::Env for &'a #storage_ident { - type EnvAccess = ::ink_lang::EnvAccess< - 'a, <#storage_ident as ::ink_lang::reflect::ContractEnv>::Env>; + impl<'a> ::ink::codegen::Env for &'a #storage_ident { + type EnvAccess = ::ink::EnvAccess< + 'a, <#storage_ident as ::ink::reflect::ContractEnv>::Env>; fn env(self) -> Self::EnvAccess { - <::EnvAccess + <::EnvAccess as ::core::default::Default>::default() } } - impl<'a> ::ink_lang::codegen::StaticEnv for #storage_ident { - type EnvAccess = ::ink_lang::EnvAccess< - 'static, <#storage_ident as ::ink_lang::reflect::ContractEnv>::Env>; + impl<'a> ::ink::codegen::StaticEnv for #storage_ident { + type EnvAccess = ::ink::EnvAccess< + 'static, <#storage_ident as ::ink::reflect::ContractEnv>::Env>; fn env() -> Self::EnvAccess { - <::EnvAccess + <::EnvAccess as ::core::default::Default>::default() } } @@ -98,7 +98,7 @@ impl Storage<'_> { let fields = storage.fields(); quote_spanned!( span => #(#attrs)* - #[::ink_lang::storage_item] + #[::ink::storage_item] #[cfg_attr(test, derive(::core::fmt::Debug))] #[cfg(not(feature = "__ink_dylint_Storage"))] pub struct #ident #generics { @@ -106,7 +106,7 @@ impl Storage<'_> { } const _: () = { - impl ::ink_lang::reflect::ContractName for #ident { + impl ::ink::reflect::ContractName for #ident { const NAME: &'static str = ::core::stringify!(#ident); } }; diff --git a/crates/lang/codegen/src/generator/storage_item.rs b/crates/ink/codegen/src/generator/storage_item.rs similarity index 95% rename from crates/lang/codegen/src/generator/storage_item.rs rename to crates/ink/codegen/src/generator/storage_item.rs index d7061d2ff36..3d96fd1a619 100644 --- a/crates/lang/codegen/src/generator/storage_item.rs +++ b/crates/ink/codegen/src/generator/storage_item.rs @@ -58,12 +58,12 @@ impl GenerateCode for StorageItem<'_> { derive = quote! { #[cfg_attr(feature = "std", derive( ::scale_info::TypeInfo, - ::ink_storage::traits::StorageLayout, + ::ink::storage::traits::StorageLayout, ))] #[derive( - ::ink_storage::traits::StorableHint, - ::ink_storage::traits::StorageKey, - ::ink_storage::traits::Storable, + ::ink::storage::traits::StorableHint, + ::ink::storage::traits::StorageKey, + ::ink::storage::traits::Storable, )] }; } @@ -240,8 +240,8 @@ fn convert_into_storage_field( let ty = field.ty.clone().to_token_stream(); let span = field.ty.span(); let new_ty = Type::Verbatim(quote_spanned!(span => - <#ty as ::ink_storage::traits::AutoStorableHint< - ::ink_storage::traits::ManualKey<#key, #salt>, + <#ty as ::ink::storage::traits::AutoStorableHint< + ::ink::storage::traits::ManualKey<#key, #salt>, >>::Type )); new_field.ty = new_ty; diff --git a/crates/lang/codegen/src/generator/trait_def/call_builder.rs b/crates/ink/codegen/src/generator/trait_def/call_builder.rs similarity index 81% rename from crates/lang/codegen/src/generator/trait_def/call_builder.rs rename to crates/ink/codegen/src/generator/trait_def/call_builder.rs index 2f6fc5e3bb9..4cfa4a716b7 100644 --- a/crates/lang/codegen/src/generator/trait_def/call_builder.rs +++ b/crates/ink/codegen/src/generator/trait_def/call_builder.rs @@ -113,9 +113,9 @@ impl CallBuilder<'_> { #[repr(transparent)] pub struct #call_builder_ident where - E: ::ink_env::Environment, + E: ::ink::env::Environment, { - account_id: ::AccountId, + account_id: ::AccountId, } ) } @@ -131,23 +131,23 @@ impl CallBuilder<'_> { let call_builder_ident = self.ident(); quote_spanned!(span=> #[cfg(feature = "std")] - impl ::ink_storage::traits::StorageLayout + impl ::ink::storage::traits::StorageLayout for #call_builder_ident where - E: ::ink_env::Environment, - ::AccountId: ::ink_storage::traits::StorageLayout, + E: ::ink::env::Environment, + ::AccountId: ::ink::storage::traits::StorageLayout, { fn layout( - __key: &::ink_primitives::Key, - ) -> ::ink_metadata::layout::Layout { - ::ink_metadata::layout::Layout::Struct( - ::ink_metadata::layout::StructLayout::new( + __key: &::ink::primitives::Key, + ) -> ::ink::metadata::layout::Layout { + ::ink::metadata::layout::Layout::Struct( + ::ink::metadata::layout::StructLayout::new( ::core::stringify!(#call_builder_ident), [ - ::ink_metadata::layout::FieldLayout::new( + ::ink::metadata::layout::FieldLayout::new( "account_id", - <::AccountId - as ::ink_storage::traits::StorageLayout>::layout(__key) + <::AccountId + as ::ink::storage::traits::StorageLayout>::layout(__key) ) ] ) @@ -172,8 +172,8 @@ impl CallBuilder<'_> { /// We require this manual implementation since the derive produces incorrect trait bounds. impl ::core::clone::Clone for #call_builder_ident where - E: ::ink_env::Environment, - ::AccountId: ::core::clone::Clone, + E: ::ink::env::Environment, + ::AccountId: ::core::clone::Clone, { #[inline] fn clone(&self) -> Self { @@ -186,8 +186,8 @@ impl CallBuilder<'_> { /// We require this manual implementation since the derive produces incorrect trait bounds. impl ::core::fmt::Debug for #call_builder_ident where - E: ::ink_env::Environment, - ::AccountId: ::core::fmt::Debug, + E: ::ink::env::Environment, + ::AccountId: ::core::fmt::Debug, { fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result { f.debug_struct(::core::stringify!(#call_builder_ident)) @@ -208,24 +208,24 @@ impl CallBuilder<'_> { let span = self.span(); let call_builder_ident = self.ident(); quote_spanned!(span=> - impl ::ink_env::call::FromAccountId + impl ::ink::env::call::FromAccountId for #call_builder_ident where - E: ::ink_env::Environment, + E: ::ink::env::Environment, { #[inline] - fn from_account_id(account_id: ::AccountId) -> Self { + fn from_account_id(account_id: ::AccountId) -> Self { Self { account_id } } } - impl ::ink_lang::ToAccountId for #call_builder_ident + impl ::ink::ToAccountId for #call_builder_ident where - E: ::ink_env::Environment, + E: ::ink::env::Environment, { #[inline] - fn to_account_id(&self) -> ::AccountId { - <::AccountId as ::core::clone::Clone>::clone(&self.account_id) + fn to_account_id(&self) -> ::AccountId { + <::AccountId as ::core::clone::Clone>::clone(&self.account_id) } } ) @@ -247,16 +247,16 @@ impl CallBuilder<'_> { let builder_ident = self.ident(); let message_impls = self.generate_ink_trait_impl_messages(); quote_spanned!(span=> - impl ::ink_lang::reflect::ContractEnv for #builder_ident + impl ::ink::reflect::ContractEnv for #builder_ident where - E: ::ink_env::Environment, + E: ::ink::env::Environment, { type Env = E; } impl #trait_ident for #builder_ident where - E: ::ink_env::Environment, + E: ::ink::env::Environment, { #[allow(non_camel_case_types)] type __ink_TraitInfo = #trait_info_ident; @@ -305,11 +305,11 @@ impl CallBuilder<'_> { let mut_tok = message.mutates().then(|| quote! { mut }); quote_spanned!(span => #[allow(clippy::type_complexity)] - type #output_ident = ::ink_env::call::CallBuilder< + type #output_ident = ::ink::env::call::CallBuilder< Self::Env, - ::ink_env::call::utils::Set< ::ink_env::call::Call< Self::Env > >, - ::ink_env::call::utils::Set< ::ink_env::call::ExecutionInput<#arg_list> >, - ::ink_env::call::utils::Set< ::ink_env::call::utils::ReturnType<#output_type> >, + ::ink::env::call::utils::Set< ::ink::env::call::Call< Self::Env > >, + ::ink::env::call::utils::Set< ::ink::env::call::ExecutionInput<#arg_list> >, + ::ink::env::call::utils::Set< ::ink::env::call::utils::ReturnType<#output_type> >, >; #( #attrs )* @@ -318,11 +318,11 @@ impl CallBuilder<'_> { & #mut_tok self #( , #input_bindings : #input_types )* ) -> Self::#output_ident { - ::ink_env::call::build_call::() - .call_type(::ink_env::call::Call::new().callee(::ink_lang::ToAccountId::to_account_id(self))) + ::ink::env::call::build_call::() + .call_type(::ink::env::call::Call::new().callee(::ink::ToAccountId::to_account_id(self))) .exec_input( - ::ink_env::call::ExecutionInput::new( - ::ink_env::call::Selector::new([ #( #selector_bytes ),* ]) + ::ink::env::call::ExecutionInput::new( + ::ink::env::call::Selector::new([ #( #selector_bytes ),* ]) ) #( .push_arg(#input_bindings) diff --git a/crates/lang/codegen/src/generator/trait_def/call_forwarder.rs b/crates/ink/codegen/src/generator/trait_def/call_forwarder.rs similarity index 82% rename from crates/lang/codegen/src/generator/trait_def/call_forwarder.rs rename to crates/ink/codegen/src/generator/trait_def/call_forwarder.rs index 70bdb9a3a4d..d2828712aa7 100644 --- a/crates/lang/codegen/src/generator/trait_def/call_forwarder.rs +++ b/crates/ink/codegen/src/generator/trait_def/call_forwarder.rs @@ -117,9 +117,9 @@ impl CallForwarder<'_> { #[repr(transparent)] pub struct #call_forwarder_ident where - E: ::ink_env::Environment, + E: ::ink::env::Environment, { - builder: ::Builder, + builder: ::Builder, } ) } @@ -135,17 +135,17 @@ impl CallForwarder<'_> { let call_forwarder_ident = self.ident(); quote_spanned!(span=> #[cfg(feature = "std")] - impl ::ink_storage::traits::StorageLayout + impl ::ink::storage::traits::StorageLayout for #call_forwarder_ident where - E: ::ink_env::Environment, - ::AccountId: ::ink_storage::traits::StorageLayout, + E: ::ink::env::Environment, + ::AccountId: ::ink::storage::traits::StorageLayout, { fn layout( - __key: &::ink_primitives::Key, - ) -> ::ink_metadata::layout::Layout { - <::Builder - as ::ink_storage::traits::StorageLayout>::layout(__key) + __key: &::ink::primitives::Key, + ) -> ::ink::metadata::layout::Layout { + <::Builder + as ::ink::storage::traits::StorageLayout>::layout(__key) } } ) @@ -165,13 +165,13 @@ impl CallForwarder<'_> { quote_spanned!(span=> impl ::core::clone::Clone for #call_forwarder_ident where - E: ::ink_env::Environment, - ::AccountId: ::core::clone::Clone, + E: ::ink::env::Environment, + ::AccountId: ::core::clone::Clone, { #[inline] fn clone(&self) -> Self { Self { - builder: <::Builder + builder: <::Builder as ::core::clone::Clone>::clone(&self.builder), } } @@ -179,8 +179,8 @@ impl CallForwarder<'_> { impl ::core::fmt::Debug for #call_forwarder_ident where - E: ::ink_env::Environment, - ::AccountId: ::core::fmt::Debug, + E: ::ink::env::Environment, + ::AccountId: ::core::fmt::Debug, { fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result { f.debug_struct(::core::stringify!(#call_forwarder_ident)) @@ -201,26 +201,26 @@ impl CallForwarder<'_> { let span = self.span(); let call_forwarder_ident = self.ident(); quote_spanned!(span=> - impl ::ink_env::call::FromAccountId + impl ::ink::env::call::FromAccountId for #call_forwarder_ident where - E: ::ink_env::Environment, + E: ::ink::env::Environment, { #[inline] - fn from_account_id(account_id: ::AccountId) -> Self { - Self { builder: <::Builder - as ::ink_env::call::FromAccountId>::from_account_id(account_id) } + fn from_account_id(account_id: ::AccountId) -> Self { + Self { builder: <::Builder + as ::ink::env::call::FromAccountId>::from_account_id(account_id) } } } - impl ::ink_lang::ToAccountId for #call_forwarder_ident + impl ::ink::ToAccountId for #call_forwarder_ident where - E: ::ink_env::Environment, + E: ::ink::env::Environment, { #[inline] - fn to_account_id(&self) -> ::AccountId { - <::Builder - as ::ink_lang::ToAccountId>::to_account_id(&self.builder) + fn to_account_id(&self) -> ::AccountId { + <::Builder + as ::ink::ToAccountId>::to_account_id(&self.builder) } } ) @@ -242,19 +242,19 @@ impl CallForwarder<'_> { /// Also this explains why we designed the generated code so that we have /// both types and why the forwarder is a thin-wrapper around the builder /// as this allows to perform this operation safely. - impl ::ink_lang::codegen::TraitCallBuilder for #call_forwarder_ident + impl ::ink::codegen::TraitCallBuilder for #call_forwarder_ident where - E: ::ink_env::Environment, + E: ::ink::env::Environment, { type Builder = #call_builder_ident; #[inline] - fn call(&self) -> &::Builder { + fn call(&self) -> &::Builder { &self.builder } #[inline] - fn call_mut(&mut self) -> &mut ::Builder { + fn call_mut(&mut self) -> &mut ::Builder { &mut self.builder } } @@ -274,16 +274,16 @@ impl CallForwarder<'_> { let forwarder_ident = self.ident(); let message_impls = self.generate_ink_trait_impl_messages(); quote_spanned!(span=> - impl ::ink_lang::reflect::ContractEnv for #forwarder_ident + impl ::ink::reflect::ContractEnv for #forwarder_ident where - E: ::ink_env::Environment, + E: ::ink::env::Environment, { type Env = E; } impl #trait_ident for #forwarder_ident where - E: ::ink_env::Environment, + E: ::ink::env::Environment, { #[allow(non_camel_case_types)] type __ink_TraitInfo = #trait_info_ident; @@ -349,8 +349,8 @@ impl CallForwarder<'_> { & #mut_tok self #( , #input_bindings : #input_types )* ) -> Self::#output_ident { - <::Builder as #trait_ident>::#message_ident( - ::#call_op(self) + <::Builder as #trait_ident>::#message_ident( + ::#call_op(self) #( , #input_bindings )* diff --git a/crates/lang/codegen/src/generator/trait_def/definition.rs b/crates/ink/codegen/src/generator/trait_def/definition.rs similarity index 91% rename from crates/lang/codegen/src/generator/trait_def/definition.rs rename to crates/ink/codegen/src/generator/trait_def/definition.rs index a65e0ae263a..f29de733f72 100644 --- a/crates/lang/codegen/src/generator/trait_def/definition.rs +++ b/crates/ink/codegen/src/generator/trait_def/definition.rs @@ -38,7 +38,7 @@ impl<'a> TraitDefinition<'a> { format_ident!("{}Output", ident.to_string().to_lower_camel_case()); quote_spanned!(span => /// Output type of the respective trait message. - type #output_ident: ::ink_lang::codegen::ImpliesReturn<#output>; + type #output_ident: ::ink::codegen::ImpliesReturn<#output>; #(#attrs)* fn #ident(#inputs) -> Self::#output_ident; @@ -59,11 +59,11 @@ impl TraitDefinition<'_> { .map(Self::generate_for_message); quote_spanned!(span => #(#attrs)* - pub trait #ident: ::ink_lang::reflect::ContractEnv { + pub trait #ident: ::ink::reflect::ContractEnv { /// Holds general and global information about the trait. #[doc(hidden)] #[allow(non_camel_case_types)] - type __ink_TraitInfo: ::ink_lang::codegen::TraitCallForwarder; + type __ink_TraitInfo: ::ink::codegen::TraitCallForwarder; #(#messages)* } diff --git a/crates/lang/codegen/src/generator/trait_def/mod.rs b/crates/ink/codegen/src/generator/trait_def/mod.rs similarity index 100% rename from crates/lang/codegen/src/generator/trait_def/mod.rs rename to crates/ink/codegen/src/generator/trait_def/mod.rs diff --git a/crates/lang/codegen/src/generator/trait_def/trait_registry.rs b/crates/ink/codegen/src/generator/trait_def/trait_registry.rs similarity index 91% rename from crates/lang/codegen/src/generator/trait_def/trait_registry.rs rename to crates/ink/codegen/src/generator/trait_def/trait_registry.rs index 5072aa4fd65..8200c8d146c 100644 --- a/crates/lang/codegen/src/generator/trait_def/trait_registry.rs +++ b/crates/ink/codegen/src/generator/trait_def/trait_registry.rs @@ -96,7 +96,7 @@ impl TraitRegistry<'_> { /// call forwarder and call builder types as such for the ink! trait. /// /// This is done by the fact that ink! implements all ink! traits by the - /// [`ink_lang::TraitDefinitionRegistry`] type and uses the `__ink_ConcreteImplementer` + /// [`ink::TraitDefinitionRegistry`] type and uses the `__ink_ConcreteImplementer` /// associated type to refer back to the actual call forwarder and call builder types. fn generate_registry_impl(&self) -> TokenStream2 { let span = self.span(); @@ -104,9 +104,9 @@ impl TraitRegistry<'_> { let trait_info_ident = self.trait_def.trait_info_ident(); let messages = self.generate_registry_messages(); quote_spanned!(span=> - impl #name for ::ink_lang::reflect::TraitDefinitionRegistry + impl #name for ::ink::reflect::TraitDefinitionRegistry where - E: ::ink_env::Environment, + E: ::ink::env::Environment, { /// Holds general and global information about the trait. #[allow(non_camel_case_types)] @@ -137,16 +137,16 @@ impl TraitRegistry<'_> { let input_span = input.span(); let input_type = &*input.ty; quote_spanned!(input_span=> - ::ink_lang::codegen::utils::consume_type::< - ::ink_lang::codegen::DispatchInput<#input_type> + ::ink::codegen::utils::consume_type::< + ::ink::codegen::DispatchInput<#input_type> >(); ) }); let message_output = message.output().map(|output_type| { let output_span = output_type.span(); quote_spanned!(output_span=> - ::ink_lang::codegen::utils::consume_type::< - ::ink_lang::codegen::DispatchOutput<#output_type> + ::ink::codegen::utils::consume_type::< + ::ink::codegen::DispatchOutput<#output_type> >(); ) }); @@ -236,7 +236,7 @@ impl TraitRegistry<'_> { /// Phantom type that implements the following traits for every ink! trait: /// - /// - `ink_lang::TraitCallForwarder` + /// - `ink::TraitCallForwarder` /// /// It is mainly used to access global information about the ink! trait. fn generate_trait_info_object(&self) -> TokenStream2 { @@ -255,9 +255,9 @@ impl TraitRegistry<'_> { #trait_message_info - impl ::ink_lang::reflect::TraitInfo for #trait_info_ident + impl ::ink::reflect::TraitInfo for #trait_info_ident where - E: ::ink_env::Environment, + E: ::ink::env::Environment, { const ID: u32 = #trait_id; @@ -266,9 +266,9 @@ impl TraitRegistry<'_> { const NAME: &'static ::core::primitive::str = ::core::stringify!(#trait_ident); } - impl ::ink_lang::codegen::TraitCallForwarder for #trait_info_ident + impl ::ink::codegen::TraitCallForwarder for #trait_info_ident where - E: ::ink_env::Environment, + E: ::ink::env::Environment, { type Forwarder = #trait_call_forwarder; } @@ -294,7 +294,7 @@ impl TraitRegistry<'_> { syn::LitInt::new(&format!("{}", id), span) } - /// Generates the [`::ink_lang::reflect::TraitMessageInfo`] implementations for all + /// Generates the [`::ink::reflect::TraitMessageInfo`] implementations for all /// ink! messages defined by the ink! trait definition. fn generate_info_for_trait_messages(&self) -> TokenStream2 { let span = self.span(); @@ -310,7 +310,7 @@ impl TraitRegistry<'_> { ) } - /// Generates the [`::ink_lang::reflect::TraitMessageInfo`] implementation for a single + /// Generates the [`::ink::reflect::TraitMessageInfo`] implementation for a single /// ink! message defined by the ink! trait definition. fn generate_info_for_trait_for_message( &self, @@ -323,7 +323,7 @@ impl TraitRegistry<'_> { let selector_bytes = selector.hex_lits(); let is_payable = message.ink_attrs().is_payable(); quote_spanned!(span=> - impl ::ink_lang::reflect::TraitMessageInfo<#local_id> for #trait_info_ident { + impl ::ink::reflect::TraitMessageInfo<#local_id> for #trait_info_ident { const PAYABLE: ::core::primitive::bool = #is_payable; const SELECTOR: [::core::primitive::u8; 4usize] = [ #( #selector_bytes ),* ]; diff --git a/crates/lang/codegen/src/lib.rs b/crates/ink/codegen/src/lib.rs similarity index 100% rename from crates/lang/codegen/src/lib.rs rename to crates/ink/codegen/src/lib.rs diff --git a/crates/lang/codegen/src/traits.rs b/crates/ink/codegen/src/traits.rs similarity index 100% rename from crates/lang/codegen/src/traits.rs rename to crates/ink/codegen/src/traits.rs diff --git a/crates/lang/ir/Cargo.toml b/crates/ink/ir/Cargo.toml similarity index 91% rename from crates/lang/ir/Cargo.toml rename to crates/ink/ir/Cargo.toml index 6e71ad7ae23..5169746408a 100644 --- a/crates/lang/ir/Cargo.toml +++ b/crates/ink/ir/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "ink_lang_ir" +name = "ink_ir" version = "4.0.0-alpha.1" authors = ["Parity Technologies ", "Robin Freyler "] edition = "2021" @@ -7,7 +7,7 @@ edition = "2021" license = "Apache-2.0" readme = "README.md" repository = "https://github.com/paritytech/ink" -documentation = "https://docs.rs/ink_lang_ir/" +documentation = "https://docs.rs/ink_ir/" homepage = "https://www.parity.io/" description = "data structures and algorithms for ink! intermediate representation" keywords = ["wasm", "parity", "webassembly", "blockchain", "edsl"] @@ -15,7 +15,7 @@ categories = ["no-std", "embedded"] include = ["Cargo.toml", "src/**/*.rs", "README.md", "LICENSE"] [lib] -name = "ink_lang_ir" +name = "ink_ir" [dependencies] ink_storage_codegen = { version = "4.0.0-alpha.1", path = "../../storage/traits/codegen" } diff --git a/crates/lang/ir/LICENSE b/crates/ink/ir/LICENSE similarity index 100% rename from crates/lang/ir/LICENSE rename to crates/ink/ir/LICENSE diff --git a/crates/lang/ir/README.md b/crates/ink/ir/README.md similarity index 100% rename from crates/lang/ir/README.md rename to crates/ink/ir/README.md diff --git a/crates/lang/ir/src/ast/attr_args.rs b/crates/ink/ir/src/ast/attr_args.rs similarity index 100% rename from crates/lang/ir/src/ast/attr_args.rs rename to crates/ink/ir/src/ast/attr_args.rs diff --git a/crates/lang/ir/src/ast/mod.rs b/crates/ink/ir/src/ast/mod.rs similarity index 100% rename from crates/lang/ir/src/ast/mod.rs rename to crates/ink/ir/src/ast/mod.rs diff --git a/crates/lang/ir/src/error.rs b/crates/ink/ir/src/error.rs similarity index 100% rename from crates/lang/ir/src/error.rs rename to crates/ink/ir/src/error.rs diff --git a/crates/lang/ir/src/ir/attrs.rs b/crates/ink/ir/src/ir/attrs.rs similarity index 100% rename from crates/lang/ir/src/ir/attrs.rs rename to crates/ink/ir/src/ir/attrs.rs diff --git a/crates/lang/ir/src/ir/blake2.rs b/crates/ink/ir/src/ir/blake2.rs similarity index 100% rename from crates/lang/ir/src/ir/blake2.rs rename to crates/ink/ir/src/ir/blake2.rs diff --git a/crates/lang/ir/src/ir/chain_extension.rs b/crates/ink/ir/src/ir/chain_extension.rs similarity index 99% rename from crates/lang/ir/src/ir/chain_extension.rs rename to crates/ink/ir/src/ir/chain_extension.rs index 219b27d4b34..a815b216ba9 100644 --- a/crates/lang/ir/src/ir/chain_extension.rs +++ b/crates/ink/ir/src/ir/chain_extension.rs @@ -78,7 +78,7 @@ pub struct ChainExtensionMethod { /// to be queried and decoded into the chain extension method's output type. /// /// If `true` the returned `u32` status code `code` is queried and - /// `::from_status_code(code)` is called. + /// `::from_status_code(code)` is called. /// The call to `from_status_code` returns `Result<(), Self::ErrorCode>`. If `Ok(())` /// the output buffer is queried and decoded as described above. /// If `Err(Self::ErrorCode)` the `Self::ErrorCode` is converted into `E` of `Result` diff --git a/crates/lang/ir/src/ir/config.rs b/crates/ink/ir/src/ir/config.rs similarity index 98% rename from crates/lang/ir/src/ir/config.rs rename to crates/ink/ir/src/ir/config.rs index 54455509c9f..52bc077ba9b 100644 --- a/crates/lang/ir/src/ir/config.rs +++ b/crates/ink/ir/src/ir/config.rs @@ -97,7 +97,7 @@ pub struct Environment { impl Default for Environment { fn default() -> Self { Self { - path: syn::parse_quote! { ::ink_env::DefaultEnvironment }, + path: syn::parse_quote! { ::ink::env::DefaultEnvironment }, } } } diff --git a/crates/lang/ir/src/ir/contract.rs b/crates/ink/ir/src/ir/contract.rs similarity index 100% rename from crates/lang/ir/src/ir/contract.rs rename to crates/ink/ir/src/ir/contract.rs diff --git a/crates/lang/ir/src/ir/idents_lint.rs b/crates/ink/ir/src/ir/idents_lint.rs similarity index 100% rename from crates/lang/ir/src/ir/idents_lint.rs rename to crates/ink/ir/src/ir/idents_lint.rs diff --git a/crates/lang/ir/src/ir/ink_test.rs b/crates/ink/ir/src/ir/ink_test.rs similarity index 100% rename from crates/lang/ir/src/ir/ink_test.rs rename to crates/ink/ir/src/ir/ink_test.rs diff --git a/crates/lang/ir/src/ir/item/event.rs b/crates/ink/ir/src/ir/item/event.rs similarity index 99% rename from crates/lang/ir/src/ir/item/event.rs rename to crates/ink/ir/src/ir/item/event.rs index 631e3f692a6..aabe9b35268 100644 --- a/crates/lang/ir/src/ir/item/event.rs +++ b/crates/ink/ir/src/ir/item/event.rs @@ -28,7 +28,7 @@ use syn::spanned::Spanned as _; /// # Example /// /// ``` -/// # let event = >::try_from(syn::parse_quote! { +/// # let event = >::try_from(syn::parse_quote! { /// #[ink(event)] /// pub struct Transaction { /// #[ink(topic)] diff --git a/crates/lang/ir/src/ir/item/mod.rs b/crates/ink/ir/src/ir/item/mod.rs similarity index 100% rename from crates/lang/ir/src/ir/item/mod.rs rename to crates/ink/ir/src/ir/item/mod.rs diff --git a/crates/lang/ir/src/ir/item/storage.rs b/crates/ink/ir/src/ir/item/storage.rs similarity index 98% rename from crates/lang/ir/src/ir/item/storage.rs rename to crates/ink/ir/src/ir/item/storage.rs index 52a16f35bd1..e9129475806 100644 --- a/crates/lang/ir/src/ir/item/storage.rs +++ b/crates/ink/ir/src/ir/item/storage.rs @@ -31,7 +31,7 @@ use syn::spanned::Spanned as _; /// # Example /// /// ``` -/// # >::try_from(syn::parse_quote! { +/// # >::try_from(syn::parse_quote! { /// #[ink(storage)] /// pub struct MyStorage { /// my_value: bool, diff --git a/crates/lang/ir/src/ir/item/tests.rs b/crates/ink/ir/src/ir/item/tests.rs similarity index 100% rename from crates/lang/ir/src/ir/item/tests.rs rename to crates/ink/ir/src/ir/item/tests.rs diff --git a/crates/lang/ir/src/ir/item_impl/callable.rs b/crates/ink/ir/src/ir/item_impl/callable.rs similarity index 100% rename from crates/lang/ir/src/ir/item_impl/callable.rs rename to crates/ink/ir/src/ir/item_impl/callable.rs diff --git a/crates/lang/ir/src/ir/item_impl/constructor.rs b/crates/ink/ir/src/ir/item_impl/constructor.rs similarity index 99% rename from crates/lang/ir/src/ir/item_impl/constructor.rs rename to crates/ink/ir/src/ir/item_impl/constructor.rs index 3e543fb6226..aa753ca8324 100644 --- a/crates/lang/ir/src/ir/item_impl/constructor.rs +++ b/crates/ink/ir/src/ir/item_impl/constructor.rs @@ -36,7 +36,7 @@ use syn::spanned::Spanned as _; /// ## Inherent implementation constructor: /// /// ``` -/// # let event = >::try_from(syn::parse_quote! { +/// # let event = >::try_from(syn::parse_quote! { /// impl MyStorage { /// #[ink(constructor)] /// pub fn new(init_value: i32) -> Self { @@ -50,7 +50,7 @@ use syn::spanned::Spanned as _; /// ## Trait implementation constructor: /// /// ``` -/// # >::try_from(syn::parse_quote! { +/// # >::try_from(syn::parse_quote! { /// impl MyTrait for MyStorage { /// #[ink(constructor)] /// fn new(init_value: i32) -> Self { diff --git a/crates/lang/ir/src/ir/item_impl/impl_item.rs b/crates/ink/ir/src/ir/item_impl/impl_item.rs similarity index 100% rename from crates/lang/ir/src/ir/item_impl/impl_item.rs rename to crates/ink/ir/src/ir/item_impl/impl_item.rs diff --git a/crates/lang/ir/src/ir/item_impl/iter.rs b/crates/ink/ir/src/ir/item_impl/iter.rs similarity index 100% rename from crates/lang/ir/src/ir/item_impl/iter.rs rename to crates/ink/ir/src/ir/item_impl/iter.rs diff --git a/crates/lang/ir/src/ir/item_impl/message.rs b/crates/ink/ir/src/ir/item_impl/message.rs similarity index 99% rename from crates/lang/ir/src/ir/item_impl/message.rs rename to crates/ink/ir/src/ir/item_impl/message.rs index 3830a872079..85ebcb29015 100644 --- a/crates/lang/ir/src/ir/item_impl/message.rs +++ b/crates/ink/ir/src/ir/item_impl/message.rs @@ -68,7 +68,7 @@ impl Receiver { /// ## Inherent implementation message: /// /// ``` -/// # >::try_from(syn::parse_quote! { +/// # >::try_from(syn::parse_quote! { /// impl MyStorage { /// #[ink(message)] /// pub fn my_message(&self, input: i32) -> bool { @@ -82,7 +82,7 @@ impl Receiver { /// ## Trait implementation message: /// /// ``` -/// # let event = >::try_from(syn::parse_quote! { +/// # let event = >::try_from(syn::parse_quote! { /// impl MyTrait for MyStorage { /// #[ink(message)] /// fn my_message(&mut self, input: bool) -> i32 { diff --git a/crates/lang/ir/src/ir/item_impl/mod.rs b/crates/ink/ir/src/ir/item_impl/mod.rs similarity index 98% rename from crates/lang/ir/src/ir/item_impl/mod.rs rename to crates/ink/ir/src/ir/item_impl/mod.rs index 0ffd6505536..f9170823e83 100644 --- a/crates/lang/ir/src/ir/item_impl/mod.rs +++ b/crates/ink/ir/src/ir/item_impl/mod.rs @@ -123,7 +123,7 @@ impl ItemImpl { /// - The ink! implementation block has been annotated as in: /// /// ``` - /// # >::try_from(syn::parse_quote! { + /// # >::try_from(syn::parse_quote! { /// #[ink(impl)] /// impl MyStorage { /// fn my_function(&self) { @@ -138,7 +138,7 @@ impl ItemImpl { /// specific annotations: /// /// ``` - /// # >::try_from(syn::parse_quote! { + /// # >::try_from(syn::parse_quote! { /// impl MyStorage { /// #[ink(constructor)] /// pub fn my_constructor() -> Self { diff --git a/crates/lang/ir/src/ir/item_impl/tests.rs b/crates/ink/ir/src/ir/item_impl/tests.rs similarity index 100% rename from crates/lang/ir/src/ir/item_impl/tests.rs rename to crates/ink/ir/src/ir/item_impl/tests.rs diff --git a/crates/lang/ir/src/ir/item_mod.rs b/crates/ink/ir/src/ir/item_mod.rs similarity index 99% rename from crates/lang/ir/src/ir/item_mod.rs rename to crates/ink/ir/src/ir/item_mod.rs index b26890a84a4..2fa9724d69d 100644 --- a/crates/lang/ir/src/ir/item_mod.rs +++ b/crates/ink/ir/src/ir/item_mod.rs @@ -40,7 +40,7 @@ use syn::{ /// /// ``` /// // #[ink::contract] <-- this line belongs to the ink! configuration! -/// # use ink_lang_ir as ir; +/// # use ink_ir as ir; /// # >::try_from(syn::parse_quote! { /// mod my_contract { /// #[ink(storage)] @@ -411,7 +411,7 @@ impl ItemMod { /// least one `#[ink(message)]` or `#[ink(constructor)]` annotation, e.g.: /// /// ``` - /// # use ink_lang_ir as ir; + /// # use ink_ir as ir; /// # >::try_from(syn::parse_quote! { /// # mod my_module { /// # #[ink(storage)] @@ -439,7 +439,7 @@ impl ItemMod { /// e.g.: /// /// ``` - /// # use ink_lang_ir as ir; + /// # use ink_ir as ir; /// # >::try_from(syn::parse_quote! { /// # mod my_module { /// # #[ink(storage)] diff --git a/crates/lang/ir/src/ir/mod.rs b/crates/ink/ir/src/ir/mod.rs similarity index 100% rename from crates/lang/ir/src/ir/mod.rs rename to crates/ink/ir/src/ir/mod.rs diff --git a/crates/lang/ir/src/ir/selector.rs b/crates/ink/ir/src/ir/selector.rs similarity index 100% rename from crates/lang/ir/src/ir/selector.rs rename to crates/ink/ir/src/ir/selector.rs diff --git a/crates/lang/ir/src/ir/storage_item/config.rs b/crates/ink/ir/src/ir/storage_item/config.rs similarity index 100% rename from crates/lang/ir/src/ir/storage_item/config.rs rename to crates/ink/ir/src/ir/storage_item/config.rs diff --git a/crates/lang/ir/src/ir/storage_item/mod.rs b/crates/ink/ir/src/ir/storage_item/mod.rs similarity index 100% rename from crates/lang/ir/src/ir/storage_item/mod.rs rename to crates/ink/ir/src/ir/storage_item/mod.rs diff --git a/crates/lang/ir/src/ir/trait_def/config.rs b/crates/ink/ir/src/ir/trait_def/config.rs similarity index 100% rename from crates/lang/ir/src/ir/trait_def/config.rs rename to crates/ink/ir/src/ir/trait_def/config.rs diff --git a/crates/lang/ir/src/ir/trait_def/item/iter.rs b/crates/ink/ir/src/ir/trait_def/item/iter.rs similarity index 100% rename from crates/lang/ir/src/ir/trait_def/item/iter.rs rename to crates/ink/ir/src/ir/trait_def/item/iter.rs diff --git a/crates/lang/ir/src/ir/trait_def/item/mod.rs b/crates/ink/ir/src/ir/trait_def/item/mod.rs similarity index 100% rename from crates/lang/ir/src/ir/trait_def/item/mod.rs rename to crates/ink/ir/src/ir/trait_def/item/mod.rs diff --git a/crates/lang/ir/src/ir/trait_def/item/trait_item.rs b/crates/ink/ir/src/ir/trait_def/item/trait_item.rs similarity index 100% rename from crates/lang/ir/src/ir/trait_def/item/trait_item.rs rename to crates/ink/ir/src/ir/trait_def/item/trait_item.rs diff --git a/crates/lang/ir/src/ir/trait_def/mod.rs b/crates/ink/ir/src/ir/trait_def/mod.rs similarity index 100% rename from crates/lang/ir/src/ir/trait_def/mod.rs rename to crates/ink/ir/src/ir/trait_def/mod.rs diff --git a/crates/lang/ir/src/ir/trait_def/tests.rs b/crates/ink/ir/src/ir/trait_def/tests.rs similarity index 100% rename from crates/lang/ir/src/ir/trait_def/tests.rs rename to crates/ink/ir/src/ir/trait_def/tests.rs diff --git a/crates/lang/ir/src/ir/utils.rs b/crates/ink/ir/src/ir/utils.rs similarity index 100% rename from crates/lang/ir/src/ir/utils.rs rename to crates/ink/ir/src/ir/utils.rs diff --git a/crates/lang/ir/src/lib.rs b/crates/ink/ir/src/lib.rs similarity index 100% rename from crates/lang/ir/src/lib.rs rename to crates/ink/ir/src/lib.rs diff --git a/crates/lang/ir/src/literal.rs b/crates/ink/ir/src/literal.rs similarity index 100% rename from crates/lang/ir/src/literal.rs rename to crates/ink/ir/src/literal.rs diff --git a/crates/lang/macro/Cargo.toml b/crates/ink/macro/Cargo.toml similarity index 77% rename from crates/lang/macro/Cargo.toml rename to crates/ink/macro/Cargo.toml index 891c4970e89..760e99b05b7 100644 --- a/crates/lang/macro/Cargo.toml +++ b/crates/ink/macro/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "ink_lang_macro" +name = "ink_macro" version = "4.0.0-alpha.1" authors = ["Parity Technologies ", "Robin Freyler "] edition = "2021" @@ -7,7 +7,7 @@ edition = "2021" license = "Apache-2.0" readme = "README.md" repository = "https://github.com/paritytech/ink" -documentation = "https://docs.rs/ink_lang_macro/" +documentation = "https://docs.rs/ink_macro/" homepage = "https://www.parity.io/" description = "[ink!] Rust based eDSL for writing smart contracts for Substrate" keywords = ["wasm", "parity", "webassembly", "blockchain", "edsl"] @@ -15,8 +15,8 @@ categories = ["no-std", "embedded"] include = ["Cargo.toml", "src/**/*.rs", "README.md", "LICENSE"] [dependencies] -ink_lang_ir = { version = "4.0.0-alpha.1", path = "../ir", default-features = false } -ink_lang_codegen = { version = "4.0.0-alpha.1", path = "../codegen", default-features = false } +ink_ir = { version = "4.0.0-alpha.1", path = "../ir", default-features = false } +ink_codegen = { version = "4.0.0-alpha.1", path = "../codegen", default-features = false } ink_primitives = { version = "4.0.0-alpha.1", path = "../../primitives/", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } @@ -25,20 +25,20 @@ proc-macro2 = "1" [dev-dependencies] ink_env = { path = "../../env" } -ink_lang = { path = ".." } +ink = { path = ".." } ink_metadata = { path = "../../metadata" } ink_prelude = { path = "../../prelude" } ink_storage = { path = "../../storage" } scale-info = { version = "2", default-features = false, features = ["derive"] } [lib] -name = "ink_lang_macro" +name = "ink_macro" proc-macro = true [features] default = ["std"] std = [ "scale/std", - "ink_lang_ir/std", + "ink_ir/std", "ink_primitives/std", ] diff --git a/crates/lang/macro/LICENSE b/crates/ink/macro/LICENSE similarity index 100% rename from crates/lang/macro/LICENSE rename to crates/ink/macro/LICENSE diff --git a/crates/lang/macro/README.md b/crates/ink/macro/README.md similarity index 100% rename from crates/lang/macro/README.md rename to crates/ink/macro/README.md diff --git a/crates/lang/macro/src/blake2b.rs b/crates/ink/macro/src/blake2b.rs similarity index 93% rename from crates/lang/macro/src/blake2b.rs rename to crates/ink/macro/src/blake2b.rs index d474fb884c0..d3b9f169b3a 100644 --- a/crates/lang/macro/src/blake2b.rs +++ b/crates/ink/macro/src/blake2b.rs @@ -12,8 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -use ink_lang_codegen::generate_code; -use ink_lang_ir::Blake2x256Macro; +use ink_codegen::generate_code; +use ink_ir::Blake2x256Macro; use proc_macro2::TokenStream as TokenStream2; use syn::Result; diff --git a/crates/lang/macro/src/chain_extension.rs b/crates/ink/macro/src/chain_extension.rs similarity index 90% rename from crates/lang/macro/src/chain_extension.rs rename to crates/ink/macro/src/chain_extension.rs index ceac1b9e85c..caf4e315f7f 100644 --- a/crates/lang/macro/src/chain_extension.rs +++ b/crates/ink/macro/src/chain_extension.rs @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -use ink_lang_codegen::generate_code; +use ink_codegen::generate_code; use proc_macro2::TokenStream as TokenStream2; use syn::Result; @@ -24,6 +24,6 @@ pub fn generate(attr: TokenStream2, input: TokenStream2) -> TokenStream2 { } pub fn generate_or_err(attr: TokenStream2, input: TokenStream2) -> Result { - let chain_extension = ink_lang_ir::ChainExtension::new(attr, input)?; + let chain_extension = ink_ir::ChainExtension::new(attr, input)?; Ok(generate_code(&chain_extension)) } diff --git a/crates/lang/macro/src/contract.rs b/crates/ink/macro/src/contract.rs similarity index 94% rename from crates/lang/macro/src/contract.rs rename to crates/ink/macro/src/contract.rs index 409fd2043c6..34717927778 100644 --- a/crates/lang/macro/src/contract.rs +++ b/crates/ink/macro/src/contract.rs @@ -12,8 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -use ink_lang_codegen::generate_code; -use ink_lang_ir::Contract; +use ink_codegen::generate_code; +use ink_ir::Contract; use proc_macro2::TokenStream as TokenStream2; use syn::Result; diff --git a/crates/lang/macro/src/ink_test.rs b/crates/ink/macro/src/ink_test.rs similarity index 90% rename from crates/lang/macro/src/ink_test.rs rename to crates/ink/macro/src/ink_test.rs index 506140f8279..ac65f0786aa 100644 --- a/crates/lang/macro/src/ink_test.rs +++ b/crates/ink/macro/src/ink_test.rs @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -use ink_lang_codegen::generate_code; +use ink_codegen::generate_code; use proc_macro2::TokenStream as TokenStream2; use syn::Result; @@ -24,6 +24,6 @@ pub fn generate(attr: TokenStream2, input: TokenStream2) -> TokenStream2 { } pub fn generate_or_err(attr: TokenStream2, input: TokenStream2) -> Result { - let test_definition = ink_lang_ir::InkTest::new(attr, input)?; + let test_definition = ink_ir::InkTest::new(attr, input)?; Ok(generate_code(&test_definition)) } diff --git a/crates/lang/macro/src/lib.rs b/crates/ink/macro/src/lib.rs similarity index 97% rename from crates/lang/macro/src/lib.rs rename to crates/ink/macro/src/lib.rs index bf37a8438fc..16c4e21e2b0 100644 --- a/crates/lang/macro/src/lib.rs +++ b/crates/ink/macro/src/lib.rs @@ -34,8 +34,8 @@ use proc_macro::TokenStream; /// # Example /// /// ``` -/// # use ink_lang_macro::blake2x256; -/// # use ink_lang_ir::blake2b_256; +/// # use ink_macro::blake2x256; +/// # use ink_ir::blake2b_256; /// assert_eq!( /// blake2x256!("hello"), /// { @@ -59,7 +59,7 @@ pub fn blake2x256(input: TokenStream) -> TokenStream { /// # Example /// /// ``` -/// # use ink_lang_macro::selector_id; +/// # use ink_macro::selector_id; /// assert_eq!( /// selector_id!("hello"), /// 843960066, @@ -79,7 +79,7 @@ pub fn selector_id(input: TokenStream) -> TokenStream { /// # Example /// /// ``` -/// # use ink_lang_macro::selector_bytes; +/// # use ink_macro::selector_bytes; /// assert_eq!( /// selector_bytes!("hello"), /// [50, 77, 207, 2], @@ -95,10 +95,6 @@ pub fn selector_bytes(input: TokenStream) -> TokenStream { /// If you are a beginner trying to learn ink! we recommend you to check out /// our extensive [ink! workshop](https://docs.substrate.io/tutorials/v3/ink-workshop/pt1). /// -/// **Note:** In all below examples we will be using `ink_lang` crate aliased as just `ink`. -/// You can do this yourself by adding the following line to your code: -/// `use ink_lang as ink;` -/// /// # Description /// /// The macro does analysis on the provided smart contract code and generates @@ -128,7 +124,6 @@ pub fn selector_bytes(input: TokenStream) -> TokenStream { /// /// **Usage Example:** /// ``` -/// # use ink_lang as ink; /// #[ink::contract(keep_attr = "foo, bar")] /// mod my_contract { /// # #[ink(storage)] @@ -171,13 +166,12 @@ pub fn selector_bytes(input: TokenStream) -> TokenStream { /// type Hash = [u8; 32]; /// type Timestamp = u64; /// type BlockNumber = u32; -/// type ChainExtension = ::ink_env::NoChainExtension; +/// type ChainExtension = ::ink::env::NoChainExtension; /// } /// ``` /// A user might implement their ink! smart contract using the above custom `Environment` /// implementation as demonstrated below: /// ``` -/// # use ink_lang as ink; /// #[ink::contract(env = MyEnvironment)] /// mod my_contract { /// # pub struct MyEnvironment; @@ -189,7 +183,7 @@ pub fn selector_bytes(input: TokenStream) -> TokenStream { /// # type Hash = [u8; 32]; /// # type Timestamp = u64; /// # type BlockNumber = u32; -/// # type ChainExtension = ::ink_env::NoChainExtension; +/// # type ChainExtension = ::ink::env::NoChainExtension; /// # } /// # /// # #[ink(storage)] @@ -224,7 +218,6 @@ pub fn selector_bytes(input: TokenStream) -> TokenStream { /// **Example:** /// /// ``` -/// # use ink_lang as ink; /// #[ink::contract] /// mod flipper { /// #[ink(storage)] @@ -252,7 +245,6 @@ pub fn selector_bytes(input: TokenStream) -> TokenStream { /// as follows: /// /// ``` -/// # use ink_lang as ink; /// # #[ink::contract] /// # mod flipper { /// # #[ink(storage)] @@ -289,7 +281,6 @@ pub fn selector_bytes(input: TokenStream) -> TokenStream { /// as follows: /// /// ``` -/// # use ink_lang as ink; /// # #[ink::contract] /// # mod flipper { /// # #[ink(storage)] @@ -326,7 +317,6 @@ pub fn selector_bytes(input: TokenStream) -> TokenStream { /// as such. /// /// ``` -/// # use ink_lang as ink; /// # #[ink::contract] /// # mod flipper { /// # #[ink(storage)] @@ -364,7 +354,6 @@ pub fn selector_bytes(input: TokenStream) -> TokenStream { /// constructor using the `selector` flag. An example is shown below: /// /// ``` -/// # use ink_lang as ink; /// # #[ink::contract] /// # mod flipper { /// # #[ink(storage)] @@ -412,8 +401,6 @@ pub fn selector_bytes(input: TokenStream) -> TokenStream { /// via its environment accessor. An example below: /// /// ``` -/// # use ink_lang as ink; -/// # /// #[ink::contract] /// mod greeter { /// use ink_env::debug_println; @@ -449,8 +436,6 @@ pub fn selector_bytes(input: TokenStream) -> TokenStream { /// emitted in the `#[ink(constructor)]`. /// /// ``` -/// # use ink_lang as ink; -/// # /// #[ink::contract] /// mod erc20 { /// /// Defines an event that is emitted every time value is transferred. @@ -499,8 +484,6 @@ pub fn selector_bytes(input: TokenStream) -> TokenStream { /// or retrieve the current value using `Flipper::get`. /// /// ``` -/// use ink_lang as ink; -/// /// #[ink::contract] /// pub mod flipper { /// #[ink(storage)] @@ -546,7 +529,6 @@ pub fn contract(attr: TokenStream, item: TokenStream) -> TokenStream { /// # Trait definition: /// /// ``` -/// use ink_lang as ink; /// # type Balance = ::Balance; /// # type AccountId = ::AccountId; /// @@ -569,12 +551,10 @@ pub fn contract(attr: TokenStream, item: TokenStream) -> TokenStream { /// Given the above trait definition you can implement it as shown below: /// /// ``` -/// # use ink_lang as ink; -/// # /// #[ink::contract] /// mod base_erc20 { /// # // We somehow cannot put the trait in the doc-test crate root due to bugs. -/// # #[ink_lang::trait_definition] +/// # #[ink::trait_definition] /// # pub trait Erc20 { /// # /// Returns the total supply of the ERC-20 smart contract. /// # #[ink(message)] @@ -625,7 +605,6 @@ pub fn contract(attr: TokenStream, item: TokenStream) -> TokenStream { /// /// **Usage Example:** /// ``` -/// # use ink_lang as ink; /// #[ink::trait_definition(namespace = "foo")] /// pub trait TraitDefinition { /// #[ink(message)] @@ -646,7 +625,6 @@ pub fn contract(attr: TokenStream, item: TokenStream) -> TokenStream { /// /// **Usage Example:** /// ``` -/// # use ink_lang as ink; /// #[ink::trait_definition(keep_attr = "foo, bar")] /// pub trait Storage { /// #[ink(message)] @@ -733,14 +711,14 @@ pub fn trait_definition(attr: TokenStream, item: TokenStream) -> TokenStream { /// } /// /// // Example of how to define the non-packed type. -/// #[ink_lang::storage_item] +/// #[ink::storage_item] /// struct NonPacked { /// s1: Mapping, /// s2: Lazy, /// } /// /// // Example of how to define the non-packed generic type. -/// #[ink_lang::storage_item(derive = false)] +/// #[ink::storage_item(derive = false)] /// #[derive(Storable, StorableHint, StorageKey)] /// #[cfg_attr( /// feature = "std", @@ -765,7 +743,7 @@ pub fn trait_definition(attr: TokenStream, item: TokenStream) -> TokenStream { /// } /// /// // Example of how to define a complex non-packed type. -/// #[ink_lang::storage_item] +/// #[ink::storage_item] /// struct NonPackedComplex { /// s1: (String, u128, Packed), /// s2: Mapping, @@ -798,7 +776,7 @@ pub fn trait_definition(attr: TokenStream, item: TokenStream) -> TokenStream { /// }; /// use ink_storage::traits::Storable; /// -/// #[ink_lang::storage_item(derive = false)] +/// #[ink::storage_item(derive = false)] /// #[derive(StorableHint, Storable, StorageKey)] /// struct NonPackedGeneric { /// s1: u32, @@ -834,8 +812,7 @@ pub fn storage_item(attr: TokenStream, item: TokenStream) -> TokenStream { /// # Example /// /// ``` -/// use ink_lang as ink; -/// +/// /// #[cfg(test)] /// mod tests { /// // Conventional unit test that works with assertions. @@ -895,7 +872,6 @@ pub fn test(attr: TokenStream, item: TokenStream) -> TokenStream { /// As with all ink! attributes multiple of them can either appear in a contiguous list: /// ``` /// # type Access = i32; -/// # use ink_lang as ink; /// # #[ink::chain_extension] /// # pub trait MyChainExtension { /// # type ErrorCode = i32; @@ -906,7 +882,6 @@ pub fn test(attr: TokenStream, item: TokenStream) -> TokenStream { /// …or as multiple stand alone ink! attributes applied to the same item: /// ``` /// # type Access = i32; -/// # use ink_lang as ink; /// # #[ink::chain_extension] /// # pub trait MyChainExtension { /// # type ErrorCode = i32; @@ -968,8 +943,7 @@ pub fn test(attr: TokenStream, item: TokenStream) -> TokenStream { /// Every chain extension defines exactly one `ErrorCode` using the following syntax: /// /// ``` -/// use ink_lang as ink; -/// +/// /// #[ink::chain_extension] /// pub trait MyChainExtension { /// type ErrorCode = MyErrorCode; @@ -991,8 +965,7 @@ pub fn test(attr: TokenStream, item: TokenStream) -> TokenStream { /// from and to the runtime storage using access privileges: /// /// ``` -/// use ink_lang as ink; -/// +/// /// /// Custom chain extension to read to and write from the runtime. /// #[ink::chain_extension] /// pub trait RuntimeReadWrite { @@ -1149,12 +1122,8 @@ pub fn test(attr: TokenStream, item: TokenStream) -> TokenStream { /// `self.extension().read(...)`. /// /// ``` -/// # use ink_lang as ink; -/// # /// #[ink::contract(env = CustomEnvironment)] /// mod read_writer { -/// # use ink_lang as ink; -/// # /// #[ink(storage)] /// pub struct ReadWriter {} /// diff --git a/crates/lang/macro/src/selector.rs b/crates/ink/macro/src/selector.rs similarity index 96% rename from crates/lang/macro/src/selector.rs rename to crates/ink/macro/src/selector.rs index b289558a0cf..59cb39e1eab 100644 --- a/crates/lang/macro/src/selector.rs +++ b/crates/ink/macro/src/selector.rs @@ -12,8 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -use ink_lang_codegen::generate_code; -use ink_lang_ir::{ +use ink_codegen::generate_code; +use ink_ir::{ marker::{ SelectorBytes, SelectorId, diff --git a/crates/lang/macro/src/storage_item.rs b/crates/ink/macro/src/storage_item.rs similarity index 90% rename from crates/lang/macro/src/storage_item.rs rename to crates/ink/macro/src/storage_item.rs index ed7861ea8f8..4f7ea846080 100644 --- a/crates/lang/macro/src/storage_item.rs +++ b/crates/ink/macro/src/storage_item.rs @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -use ink_lang_codegen::generate_code; +use ink_codegen::generate_code; use proc_macro2::TokenStream as TokenStream2; use syn::Result; @@ -27,6 +27,6 @@ pub fn generate_or_err( config: TokenStream2, input: TokenStream2, ) -> Result { - let storage_item = ink_lang_ir::StorageItem::new(config, input)?; + let storage_item = ink_ir::StorageItem::new(config, input)?; Ok(generate_code(&storage_item)) } diff --git a/crates/lang/macro/src/trait_def.rs b/crates/ink/macro/src/trait_def.rs similarity index 89% rename from crates/lang/macro/src/trait_def.rs rename to crates/ink/macro/src/trait_def.rs index 56e404c815c..581db1a7a4c 100644 --- a/crates/lang/macro/src/trait_def.rs +++ b/crates/ink/macro/src/trait_def.rs @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -use ink_lang_codegen::generate_code; +use ink_codegen::generate_code; use proc_macro2::TokenStream as TokenStream2; use syn::Result; @@ -24,6 +24,6 @@ pub fn analyze(config: TokenStream2, input: TokenStream2) -> TokenStream2 { } pub fn analyze_or_err(config: TokenStream2, input: TokenStream2) -> Result { - let trait_definition = ink_lang_ir::InkTraitDefinition::new(config, input)?; + let trait_definition = ink_ir::InkTraitDefinition::new(config, input)?; Ok(generate_code(&trait_definition)) } diff --git a/crates/lang/src/chain_extension.rs b/crates/ink/src/chain_extension.rs similarity index 100% rename from crates/lang/src/chain_extension.rs rename to crates/ink/src/chain_extension.rs diff --git a/crates/lang/src/codegen/dispatch/execution.rs b/crates/ink/src/codegen/dispatch/execution.rs similarity index 100% rename from crates/lang/src/codegen/dispatch/execution.rs rename to crates/ink/src/codegen/dispatch/execution.rs diff --git a/crates/lang/src/codegen/dispatch/info.rs b/crates/ink/src/codegen/dispatch/info.rs similarity index 100% rename from crates/lang/src/codegen/dispatch/info.rs rename to crates/ink/src/codegen/dispatch/info.rs diff --git a/crates/lang/src/codegen/dispatch/mod.rs b/crates/ink/src/codegen/dispatch/mod.rs similarity index 100% rename from crates/lang/src/codegen/dispatch/mod.rs rename to crates/ink/src/codegen/dispatch/mod.rs diff --git a/crates/lang/src/codegen/dispatch/type_check.rs b/crates/ink/src/codegen/dispatch/type_check.rs similarity index 77% rename from crates/lang/src/codegen/dispatch/type_check.rs rename to crates/ink/src/codegen/dispatch/type_check.rs index 2b66563368f..a8e397798d9 100644 --- a/crates/lang/src/codegen/dispatch/type_check.rs +++ b/crates/ink/src/codegen/dispatch/type_check.rs @@ -24,17 +24,17 @@ /// This compiles since `i32` fulfills the requirements of an ink! input. /// /// ``` -/// # use ink_lang::codegen::DispatchInput; -/// const _: () = ink_lang::codegen::utils::consume_type::>(); +/// # use ink::codegen::DispatchInput; +/// const _: () = ink::codegen::utils::consume_type::>(); /// ``` /// /// This fails to compile since `Foo` does not fulfill all requirements. /// /// ```compile_fail -/// # use ink_lang::codegen::DispatchInput; +/// # use ink::codegen::DispatchInput; /// // Foo is missing scale codec implementations. /// struct Foo {} -/// const _: () = ink_lang::codegen::utils::consume_type::>(); +/// const _: () = ink::codegen::utils::consume_type::>(); /// ``` pub struct DispatchInput(T) where @@ -52,17 +52,17 @@ where /// This compiles since `i32` fulfills the requirements of an ink! output. /// /// ``` -/// # use ink_lang::codegen::DispatchOutput; -/// const _: () = ink_lang::codegen::utils::consume_type::>(); +/// # use ink::codegen::DispatchOutput; +/// const _: () = ink::codegen::utils::consume_type::>(); /// ``` /// /// This fails to compile since `Foo` does not fulfill all requirements. /// /// ```compile_fail -/// # use ink_lang::codegen::DispatchOutput; +/// # use ink::codegen::DispatchOutput; /// // Foo is missing scale codec implementations. /// struct Foo {} -/// const _: () = ink_lang::codegen::utils::consume_type::>(); +/// const _: () = ink::codegen::utils::consume_type::>(); /// ``` pub struct DispatchOutput(T) where diff --git a/crates/lang/src/codegen/env.rs b/crates/ink/src/codegen/env.rs similarity index 100% rename from crates/lang/src/codegen/env.rs rename to crates/ink/src/codegen/env.rs diff --git a/crates/lang/src/codegen/event/emit.rs b/crates/ink/src/codegen/event/emit.rs similarity index 100% rename from crates/lang/src/codegen/event/emit.rs rename to crates/ink/src/codegen/event/emit.rs diff --git a/crates/lang/src/codegen/event/mod.rs b/crates/ink/src/codegen/event/mod.rs similarity index 100% rename from crates/lang/src/codegen/event/mod.rs rename to crates/ink/src/codegen/event/mod.rs diff --git a/crates/lang/src/codegen/event/topics.rs b/crates/ink/src/codegen/event/topics.rs similarity index 91% rename from crates/lang/src/codegen/event/topics.rs rename to crates/ink/src/codegen/event/topics.rs index fff720acdf0..a2df5e8d7b4 100644 --- a/crates/lang/src/codegen/event/topics.rs +++ b/crates/ink/src/codegen/event/topics.rs @@ -28,15 +28,15 @@ use core::marker::PhantomData; /// /// The limit for the amount of topics per ink! event definition. /// const TOPICS_LIMIT: usize = 4; /// -/// impl ::ink_lang::codegen::EventLenTopics for ExampleEvent { -/// type LenTopics = ::ink_lang::codegen::EventTopics; +/// impl ::ink::codegen::EventLenTopics for ExampleEvent { +/// type LenTopics = ::ink::codegen::EventTopics; /// } /// /// // The below code only compiles successfully if the example ink! event /// // definitions respects the topic limitation: it must have an amount of /// // topics less than or equal to the topic limit. -/// const _: () = ::ink_lang::codegen::utils::consume_type::< -/// ::ink_lang::codegen::EventRespectsTopicLimit< +/// const _: () = ::ink::codegen::utils::consume_type::< +/// ::ink::codegen::EventRespectsTopicLimit< /// ExampleEvent, /// TOPICS_LIMIT, /// > diff --git a/crates/lang/src/codegen/implies_return.rs b/crates/ink/src/codegen/implies_return.rs similarity index 100% rename from crates/lang/src/codegen/implies_return.rs rename to crates/ink/src/codegen/implies_return.rs diff --git a/crates/lang/src/codegen/is_same_type.rs b/crates/ink/src/codegen/is_same_type.rs similarity index 93% rename from crates/lang/src/codegen/is_same_type.rs rename to crates/ink/src/codegen/is_same_type.rs index 3af1df6c08a..2d9549c6672 100644 --- a/crates/lang/src/codegen/is_same_type.rs +++ b/crates/ink/src/codegen/is_same_type.rs @@ -21,14 +21,14 @@ use core::marker::PhantomData; /// This code compiles: /// /// ``` -/// # use ink_lang::codegen::IsSameType; +/// # use ink::codegen::IsSameType; /// const _: IsSameType = IsSameType::::new(); /// ``` /// /// While this code does not: /// /// ```compile_fail -/// # use ink_lang::codegen::IsSameType; +/// # use ink::codegen::IsSameType; /// const _: IsSameType = IsSameType::::new(); /// ``` pub struct IsSameType { diff --git a/crates/lang/src/codegen/mod.rs b/crates/ink/src/codegen/mod.rs similarity index 100% rename from crates/lang/src/codegen/mod.rs rename to crates/ink/src/codegen/mod.rs diff --git a/crates/lang/src/codegen/trait_def/call_builder.rs b/crates/ink/src/codegen/trait_def/call_builder.rs similarity index 100% rename from crates/lang/src/codegen/trait_def/call_builder.rs rename to crates/ink/src/codegen/trait_def/call_builder.rs diff --git a/crates/lang/src/codegen/trait_def/mod.rs b/crates/ink/src/codegen/trait_def/mod.rs similarity index 100% rename from crates/lang/src/codegen/trait_def/mod.rs rename to crates/ink/src/codegen/trait_def/mod.rs diff --git a/crates/lang/src/codegen/trait_def/trait_message.rs b/crates/ink/src/codegen/trait_def/trait_message.rs similarity index 100% rename from crates/lang/src/codegen/trait_def/trait_message.rs rename to crates/ink/src/codegen/trait_def/trait_message.rs diff --git a/crates/lang/src/codegen/utils/identity_type.rs b/crates/ink/src/codegen/utils/identity_type.rs similarity index 93% rename from crates/lang/src/codegen/utils/identity_type.rs rename to crates/ink/src/codegen/utils/identity_type.rs index 4d991766ce5..bd71149e6b7 100644 --- a/crates/lang/src/codegen/utils/identity_type.rs +++ b/crates/ink/src/codegen/utils/identity_type.rs @@ -23,7 +23,7 @@ /// # Usage: Compiles /// /// ``` -/// # use ink_lang::codegen::utils::consume_type; +/// # use ink::codegen::utils::consume_type; /// # use core::marker::PhantomData; /// # /// pub struct RequiresCopy(PhantomData); @@ -35,7 +35,7 @@ /// # Usage: Compile Error /// /// ```compile_fail -/// # use ink_lang::codegen::utils::consume_type; +/// # use ink::codegen::utils::consume_type; /// # use core::marker::PhantomData; /// # /// pub struct RequiresCopy(PhantomData); diff --git a/crates/lang/src/codegen/utils/mod.rs b/crates/ink/src/codegen/utils/mod.rs similarity index 100% rename from crates/lang/src/codegen/utils/mod.rs rename to crates/ink/src/codegen/utils/mod.rs diff --git a/crates/lang/src/codegen/utils/same_type.rs b/crates/ink/src/codegen/utils/same_type.rs similarity index 92% rename from crates/lang/src/codegen/utils/same_type.rs rename to crates/ink/src/codegen/utils/same_type.rs index bb70a0a56ab..c041e204c03 100644 --- a/crates/lang/src/codegen/utils/same_type.rs +++ b/crates/ink/src/codegen/utils/same_type.rs @@ -21,14 +21,14 @@ use core::marker::PhantomData; /// This code compiles: /// /// ``` -/// # use ink_lang::codegen::utils::IsSameType; +/// # use ink::codegen::utils::IsSameType; /// const _: IsSameType = IsSameType::::new(); /// ``` /// /// While this code does not: /// /// ```compile_fail -/// # use ink_lang::codegen::utils::IsSameType; +/// # use ink::codegen::utils::IsSameType; /// const _: IsSameType = IsSameType::::new(); /// ``` pub struct IsSameType { diff --git a/crates/lang/src/contract_ref.rs b/crates/ink/src/contract_ref.rs similarity index 100% rename from crates/lang/src/contract_ref.rs rename to crates/ink/src/contract_ref.rs diff --git a/crates/lang/src/env_access.rs b/crates/ink/src/env_access.rs similarity index 96% rename from crates/lang/src/env_access.rs rename to crates/ink/src/env_access.rs index 6927eefe84f..538bcbba7de 100644 --- a/crates/lang/src/env_access.rs +++ b/crates/ink/src/env_access.rs @@ -77,8 +77,6 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; - /// # /// # #[ink::contract] /// # pub mod my_contract { /// # #[ink(storage)] @@ -93,7 +91,7 @@ where /// #[ink(message)] /// pub fn call_me(&self) { /// let caller = self.env().caller(); - /// ink_env::debug_println!("got a call from {:?}", &caller); + /// ink::env::debug_println!("got a call from {:?}", &caller); /// } /// # /// # } @@ -112,8 +110,6 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; - /// # /// # #[ink::contract] /// # pub mod my_contract { /// # #[ink(storage)] @@ -130,7 +126,7 @@ where /// pub fn fund(&self) { /// let caller = self.env().caller(); /// let value = self.env().transferred_value(); - /// ink_env::debug_println!("thanks for the funding of {:?} from {:?}", value, caller); + /// ink::env::debug_println!("thanks for the funding of {:?} from {:?}", value, caller); /// } /// # /// # } @@ -149,8 +145,6 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; - /// # /// # #[ink::contract] /// # pub mod my_contract { /// # #[ink(storage)] @@ -192,7 +186,6 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; /// # #[ink::contract] /// # pub mod my_contract { /// # #[ink(storage)] @@ -231,8 +224,6 @@ where /// # Example /// /// ``` - /// use ink_lang as ink; - /// /// #[ink::contract] /// pub mod my_contract { /// #[ink(storage)] @@ -273,8 +264,7 @@ where /// # Example /// /// ``` - /// use ink_lang as ink; - /// + /// /// #[ink::contract] /// pub mod only_owner { /// #[ink(storage)] @@ -319,7 +309,6 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; /// # #[ink::contract] /// # pub mod my_contract { /// # #[ink(storage)] @@ -353,8 +342,7 @@ where /// # Example /// /// ``` - /// use ink_lang as ink; - /// + /// /// #[ink::contract] /// pub mod my_contract { /// #[ink(storage)] @@ -394,7 +382,6 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; /// # #[ink::contract] /// # pub mod my_contract { /// # #[ink(storage)] @@ -427,7 +414,6 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; /// # #[ink::contract] /// # pub mod my_contract { /// # // In order for this to actually work with another contract we'd need a way @@ -439,7 +425,7 @@ where /// # pub mod other_contract { /// # pub use super::MyContractRef as OtherContractRef; /// # } - /// use ink_env::{ + /// use ink::env::{ /// DefaultEnvironment, /// call::{build_create, Selector, ExecutionInput} /// }; @@ -499,10 +485,9 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; /// # #[ink::contract] /// # pub mod my_contract { - /// use ink_env::{ + /// use ink::env::{ /// DefaultEnvironment, /// call::{build_call, Call, Selector, ExecutionInput} /// }; @@ -560,10 +545,9 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; /// # #[ink::contract] /// # pub mod my_contract { - /// use ink_env::{ + /// use ink::env::{ /// DefaultEnvironment, /// call::{build_call, DelegateCall, Selector, ExecutionInput, utils::ReturnType} /// }; @@ -585,7 +569,7 @@ where /// let call_params = build_call::() /// .call_type( /// DelegateCall::new() - /// .code_hash(::Hash::clear())) + /// .code_hash(::Hash::clear())) /// .exec_input( /// ExecutionInput::new(Selector::new([0xCA, 0xFE, 0xBA, 0xBE])) /// .push_arg(42u8) @@ -620,7 +604,6 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; /// # #[ink::contract] /// # pub mod my_contract { /// # #[ink(storage)] @@ -654,7 +637,6 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; /// # #[ink::contract] /// # pub mod my_contract { /// # #[ink(storage)] @@ -689,7 +671,6 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; /// # #[ink::contract] /// # pub mod my_contract { /// # #[ink(storage)] @@ -780,7 +761,6 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; /// # #[ink::contract] /// # pub mod my_contract { /// # #[ink(storage)] @@ -817,7 +797,7 @@ where /// let failed_result = self.env().ecdsa_recover(&signature, &[0; 32]); /// assert!(failed_result.is_err()); /// if let Err(e) = failed_result { - /// assert_eq!(e, ink_env::Error::EcdsaRecoveryFailed); + /// assert_eq!(e, ink::env::Error::EcdsaRecoveryFailed); /// } /// } /// # @@ -840,7 +820,6 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; /// # #[ink::contract] /// # pub mod my_contract { /// # #[ink(storage)] @@ -888,7 +867,6 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; /// # #[ink::contract] /// # pub mod my_contract { /// # #[ink(storage)] @@ -920,7 +898,6 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; /// # #[ink::contract] /// # pub mod my_contract { /// # #[ink(storage)] @@ -952,7 +929,6 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; /// # #[ink::contract] /// # pub mod my_contract { /// # #[ink(storage)] @@ -984,7 +960,6 @@ where /// # Example /// /// ``` - /// # use ink_lang as ink; /// # #[ink::contract] /// # pub mod my_contract { /// # #[ink(storage)] diff --git a/crates/lang/src/lib.rs b/crates/ink/src/lib.rs similarity index 84% rename from crates/lang/src/lib.rs rename to crates/ink/src/lib.rs index e0e3cd85c74..78af6d57fe4 100644 --- a/crates/lang/src/lib.rs +++ b/crates/ink/src/lib.rs @@ -27,6 +27,13 @@ mod chain_extension; mod contract_ref; mod env_access; +pub use ink_env as env; +#[cfg(feature = "std")] +pub use ink_metadata as metadata; +pub use ink_prelude as prelude; +pub use ink_primitives as primitives; +pub use ink_storage as storage; + pub use self::{ chain_extension::{ ChainExtensionInstance, @@ -35,7 +42,7 @@ pub use self::{ contract_ref::ToAccountId, env_access::EnvAccess, }; -pub use ink_lang_macro::{ +pub use ink_macro::{ blake2x256, chain_extension, contract, diff --git a/crates/lang/src/reflect/contract.rs b/crates/ink/src/reflect/contract.rs similarity index 91% rename from crates/lang/src/reflect/contract.rs rename to crates/ink/src/reflect/contract.rs index d05958dcab6..3488980a3cf 100644 --- a/crates/lang/src/reflect/contract.rs +++ b/crates/ink/src/reflect/contract.rs @@ -21,8 +21,6 @@ /// # Usage /// /// ``` -/// use ink_lang as ink; -/// /// #[ink::contract] /// pub mod contract { /// #[ink(storage)] @@ -39,7 +37,7 @@ /// /// use contract::Contract; /// -/// # use ink_lang::reflect::ContractName; +/// # use ink::reflect::ContractName; /// assert_eq!( /// ::NAME, /// "Contract", @@ -66,8 +64,7 @@ pub trait ContractName { /// # Usage: Default Environment /// /// ``` -/// use ink_lang as ink; -/// +/// /// #[ink::contract] /// pub mod contract { /// #[ink(storage)] @@ -84,8 +81,8 @@ pub trait ContractName { /// /// use contract::Contract; /// -/// # use ink_lang::reflect::ContractEnv; -/// # use ink_lang::codegen::utils::IsSameType; +/// # use ink::reflect::ContractEnv; +/// # use ink::codegen::utils::IsSameType; /// /// // The following line only compiles successfully if both /// // `ink_env::DefaultEnvironment` and `::Env` @@ -97,7 +94,6 @@ pub trait ContractName { /// # Usage: Custom Environment /// /// ``` -/// use ink_lang as ink; /// # use ink_env::{Environment, DefaultEnvironment}; /// /// pub struct CustomEnvironment {} @@ -128,8 +124,8 @@ pub trait ContractName { /// } /// /// use contract::Contract; -/// # use ink_lang::reflect::ContractEnv; -/// # use ink_lang::codegen::utils::IsSameType; +/// # use ink::reflect::ContractEnv; +/// # use ink::codegen::utils::IsSameType; /// /// // The following line only compiles successfully if both /// // `CustomEnvironment` and `::Env` @@ -157,8 +153,7 @@ pub trait ContractEnv { /// # Usage /// /// ``` -/// use ink_lang as ink; -/// +/// /// #[ink::contract] /// pub mod contract { /// #[ink(storage)] @@ -174,8 +169,8 @@ pub trait ContractEnv { /// } /// /// use contract::{Contract, ContractRef}; -/// # use ink_lang::codegen::utils::IsSameType; -/// # use ink_lang::reflect::ContractReference; +/// # use ink::codegen::utils::IsSameType; +/// # use ink::reflect::ContractReference; /// /// // The following line only compiles successfully if both /// // `ContractReference` and `::Type` diff --git a/crates/lang/src/reflect/dispatch.rs b/crates/ink/src/reflect/dispatch.rs similarity index 94% rename from crates/lang/src/reflect/dispatch.rs rename to crates/ink/src/reflect/dispatch.rs index e18e5212214..e5c64e67f63 100644 --- a/crates/lang/src/reflect/dispatch.rs +++ b/crates/ink/src/reflect/dispatch.rs @@ -25,8 +25,7 @@ use core::fmt::Display; /// # Usage /// /// ``` -/// use ink_lang as ink; -/// # use ink_lang::reflect::ContractAmountDispatchables; +/// # use ink::reflect::ContractAmountDispatchables; /// /// #[ink::contract] /// pub mod contract { @@ -74,10 +73,9 @@ pub trait ContractAmountDispatchables { /// # Usage /// /// ``` -/// use ink_lang as ink; -/// # use ink_lang::reflect::ContractAmountDispatchables; -/// # use ink_lang::reflect::ContractDispatchableMessages; -/// # use ink_lang::selector_id; +/// # use ink::reflect::ContractAmountDispatchables; +/// # use ink::reflect::ContractDispatchableMessages; +/// # use ink::selector_id; /// /// #[ink::contract] /// pub mod contract { @@ -124,10 +122,9 @@ pub trait ContractDispatchableMessages { /// # Usage /// /// ``` -/// use ink_lang as ink; -/// # use ink_lang::reflect::ContractAmountDispatchables; -/// # use ink_lang::reflect::ContractDispatchableConstructors; -/// # use ink_lang::selector_id; +/// # use ink::reflect::ContractAmountDispatchables; +/// # use ink::reflect::ContractDispatchableConstructors; +/// # use ink::selector_id; /// /// #[ink::contract] /// pub mod contract { @@ -176,9 +173,8 @@ pub trait ContractDispatchableConstructors { /// # Usage /// /// ``` -/// use ink_lang as ink; -/// # use ink_lang::reflect::DispatchableMessageInfo; -/// # use ink_lang::{selector_id, selector_bytes}; +/// # use ink::reflect::DispatchableMessageInfo; +/// # use ink::{selector_id, selector_bytes}; /// /// #[ink::contract] /// pub mod contract { @@ -274,9 +270,8 @@ pub trait DispatchableMessageInfo { /// # Usage /// /// ``` -/// use ink_lang as ink; -/// # use ink_lang::reflect::DispatchableConstructorInfo; -/// # use ink_lang::{selector_id, selector_bytes}; +/// # use ink::reflect::DispatchableConstructorInfo; +/// # use ink::{selector_id, selector_bytes}; /// /// #[ink::contract] /// pub mod contract { @@ -359,9 +354,8 @@ pub trait DispatchableConstructorInfo { /// # Usage /// /// ``` -/// use ink_lang as ink; -/// # use ink_lang::reflect::ContractMessageDecoder; -/// # use ink_lang::selector_bytes; +/// # use ink::reflect::ContractMessageDecoder; +/// # use ink::selector_bytes; /// # use scale::{Encode, Decode}; /// /// #[ink::contract] @@ -439,9 +433,8 @@ pub trait ContractMessageDecoder { /// # Usage /// /// ``` -/// use ink_lang as ink; -/// # use ink_lang::reflect::ContractConstructorDecoder; -/// # use ink_lang::selector_bytes; +/// # use ink::reflect::ContractConstructorDecoder; +/// # use ink::selector_bytes; /// # use scale::{Encode, Decode}; /// /// #[ink::contract] @@ -580,9 +573,8 @@ impl From for scale::Error { /// # Usage /// /// ``` -/// use ink_lang as ink; -/// # use ink_lang::reflect::{ContractMessageDecoder, DecodeDispatch, DispatchError}; -/// # use ink_lang::selector_bytes; +/// # use ink::reflect::{ContractMessageDecoder, DecodeDispatch, DispatchError}; +/// # use ink::selector_bytes; /// # use scale::Encode; /// /// #[ink::contract] diff --git a/crates/lang/src/reflect/event.rs b/crates/ink/src/reflect/event.rs similarity index 94% rename from crates/lang/src/reflect/event.rs rename to crates/ink/src/reflect/event.rs index 887e2496da8..4b4554d4b25 100644 --- a/crates/lang/src/reflect/event.rs +++ b/crates/ink/src/reflect/event.rs @@ -19,8 +19,6 @@ /// # Usage /// /// ``` -/// use ink_lang as ink; -/// /// #[ink::contract] /// pub mod contract { /// #[ink(storage)] @@ -42,7 +40,7 @@ /// } /// /// use contract::Contract; -/// # use ink_lang::reflect::ContractEventBase; +/// # use ink::reflect::ContractEventBase; /// /// type BaseEvent = ::Type; /// ``` diff --git a/crates/lang/src/reflect/mod.rs b/crates/ink/src/reflect/mod.rs similarity index 100% rename from crates/lang/src/reflect/mod.rs rename to crates/ink/src/reflect/mod.rs diff --git a/crates/lang/src/reflect/trait_def/info.rs b/crates/ink/src/reflect/trait_def/info.rs similarity index 96% rename from crates/lang/src/reflect/trait_def/info.rs rename to crates/ink/src/reflect/trait_def/info.rs index 5c561b09306..02269b70b1f 100644 --- a/crates/lang/src/reflect/trait_def/info.rs +++ b/crates/ink/src/reflect/trait_def/info.rs @@ -44,8 +44,6 @@ /// # Usage /// /// ``` -/// use ink_lang as ink; -/// /// #[ink::trait_definition] /// pub trait InkTrait { /// #[ink(message)] @@ -87,10 +85,10 @@ /// } /// } /// -/// # use ink_lang::reflect::TraitDefinitionRegistry; -/// # use ink_lang::reflect::TraitMessageInfo; +/// # use ink::reflect::TraitDefinitionRegistry; +/// # use ink::reflect::TraitMessageInfo; /// # use ink_env::DefaultEnvironment; -/// # use ink_lang::{selector_id, selector_bytes}; +/// # use ink::{selector_id, selector_bytes}; /// /// fn main() { /// assert_eq!( diff --git a/crates/lang/src/reflect/trait_def/mod.rs b/crates/ink/src/reflect/trait_def/mod.rs similarity index 100% rename from crates/lang/src/reflect/trait_def/mod.rs rename to crates/ink/src/reflect/trait_def/mod.rs diff --git a/crates/lang/src/reflect/trait_def/registry.rs b/crates/ink/src/reflect/trait_def/registry.rs similarity index 96% rename from crates/lang/src/reflect/trait_def/registry.rs rename to crates/ink/src/reflect/trait_def/registry.rs index b85a162403b..005d8eb1cc4 100644 --- a/crates/lang/src/reflect/trait_def/registry.rs +++ b/crates/ink/src/reflect/trait_def/registry.rs @@ -37,8 +37,7 @@ use core::marker::PhantomData; /// # Usage /// /// ``` -/// # use ink_lang as ink; -/// # use ink_lang::reflect::TraitDefinitionRegistry; +/// # use ink::reflect::TraitDefinitionRegistry; /// use ink_env::DefaultEnvironment; /// /// #[ink::trait_definition] diff --git a/crates/lang/src/result_info.rs b/crates/ink/src/result_info.rs similarity index 100% rename from crates/lang/src/result_info.rs rename to crates/ink/src/result_info.rs diff --git a/crates/lang/tests/compile_tests.rs b/crates/ink/tests/compile_tests.rs similarity index 100% rename from crates/lang/tests/compile_tests.rs rename to crates/ink/tests/compile_tests.rs diff --git a/crates/lang/tests/ui/blake2b/fail/invalid_parameter_type_01.rs b/crates/ink/tests/ui/blake2b/fail/invalid_parameter_type_01.rs similarity index 72% rename from crates/lang/tests/ui/blake2b/fail/invalid_parameter_type_01.rs rename to crates/ink/tests/ui/blake2b/fail/invalid_parameter_type_01.rs index 9fdedd35d81..6641cfa8d6e 100644 --- a/crates/lang/tests/ui/blake2b/fail/invalid_parameter_type_01.rs +++ b/crates/ink/tests/ui/blake2b/fail/invalid_parameter_type_01.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - const _: [u8; 32] = ink::blake2x256!(true); fn main() {} diff --git a/crates/lang/tests/ui/blake2b/fail/invalid_parameter_type_01.stderr b/crates/ink/tests/ui/blake2b/fail/invalid_parameter_type_01.stderr similarity index 56% rename from crates/lang/tests/ui/blake2b/fail/invalid_parameter_type_01.stderr rename to crates/ink/tests/ui/blake2b/fail/invalid_parameter_type_01.stderr index 4d1451ec437..d0faadef29c 100644 --- a/crates/lang/tests/ui/blake2b/fail/invalid_parameter_type_01.stderr +++ b/crates/ink/tests/ui/blake2b/fail/invalid_parameter_type_01.stderr @@ -1,5 +1,5 @@ error: expected string or byte string literal as input. found Bool(LitBool { value: true }) - --> tests/ui/blake2b/fail/invalid_parameter_type_01.rs:3:38 + --> tests/ui/blake2b/fail/invalid_parameter_type_01.rs:1:38 | -3 | const _: [u8; 32] = ink::blake2x256!(true); +1 | const _: [u8; 32] = ink::blake2x256!(true); | ^^^^ diff --git a/crates/lang/tests/ui/blake2b/fail/invalid_parameter_type_02.rs b/crates/ink/tests/ui/blake2b/fail/invalid_parameter_type_02.rs similarity index 71% rename from crates/lang/tests/ui/blake2b/fail/invalid_parameter_type_02.rs rename to crates/ink/tests/ui/blake2b/fail/invalid_parameter_type_02.rs index a2c17aa8a8e..00d68294b0b 100644 --- a/crates/lang/tests/ui/blake2b/fail/invalid_parameter_type_02.rs +++ b/crates/ink/tests/ui/blake2b/fail/invalid_parameter_type_02.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - const _: [u8; 32] = ink::blake2x256!(42); fn main() {} diff --git a/crates/lang/tests/ui/blake2b/fail/invalid_parameter_type_02.stderr b/crates/ink/tests/ui/blake2b/fail/invalid_parameter_type_02.stderr similarity index 55% rename from crates/lang/tests/ui/blake2b/fail/invalid_parameter_type_02.stderr rename to crates/ink/tests/ui/blake2b/fail/invalid_parameter_type_02.stderr index 19c784fa440..c2345d0053c 100644 --- a/crates/lang/tests/ui/blake2b/fail/invalid_parameter_type_02.stderr +++ b/crates/ink/tests/ui/blake2b/fail/invalid_parameter_type_02.stderr @@ -1,5 +1,5 @@ error: expected string or byte string literal as input. found Int(LitInt { token: 42 }) - --> tests/ui/blake2b/fail/invalid_parameter_type_02.rs:3:38 + --> tests/ui/blake2b/fail/invalid_parameter_type_02.rs:1:38 | -3 | const _: [u8; 32] = ink::blake2x256!(42); +1 | const _: [u8; 32] = ink::blake2x256!(42); | ^^ diff --git a/crates/lang/tests/ui/blake2b/fail/missing_parameter.rs b/crates/ink/tests/ui/blake2b/fail/missing_parameter.rs similarity index 71% rename from crates/lang/tests/ui/blake2b/fail/missing_parameter.rs rename to crates/ink/tests/ui/blake2b/fail/missing_parameter.rs index 0f58fb43216..757c8cfeb48 100644 --- a/crates/lang/tests/ui/blake2b/fail/missing_parameter.rs +++ b/crates/ink/tests/ui/blake2b/fail/missing_parameter.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - const _: [u8; 32] = ink::blake2x256!(); fn main() {} diff --git a/crates/lang/tests/ui/blake2b/fail/missing_parameter.stderr b/crates/ink/tests/ui/blake2b/fail/missing_parameter.stderr similarity index 73% rename from crates/lang/tests/ui/blake2b/fail/missing_parameter.stderr rename to crates/ink/tests/ui/blake2b/fail/missing_parameter.stderr index 952d1515ba8..0882da9812e 100644 --- a/crates/lang/tests/ui/blake2b/fail/missing_parameter.stderr +++ b/crates/ink/tests/ui/blake2b/fail/missing_parameter.stderr @@ -1,7 +1,7 @@ error: expected string or byte string literal as input: unexpected end of input, expected literal - --> tests/ui/blake2b/fail/missing_parameter.rs:3:21 + --> tests/ui/blake2b/fail/missing_parameter.rs:1:21 | -3 | const _: [u8; 32] = ink::blake2x256!(); +1 | const _: [u8; 32] = ink::blake2x256!(); | ^^^^^^^^^^^^^^^^^^ | = note: this error originates in the macro `ink::blake2x256` (in Nightly builds, run with -Z macro-backtrace for more info) diff --git a/crates/lang/tests/ui/blake2b/fail/non_literal_parameter.rs b/crates/ink/tests/ui/blake2b/fail/non_literal_parameter.rs similarity index 79% rename from crates/lang/tests/ui/blake2b/fail/non_literal_parameter.rs rename to crates/ink/tests/ui/blake2b/fail/non_literal_parameter.rs index 3fa346f82ee..7c9c1a9b15a 100644 --- a/crates/lang/tests/ui/blake2b/fail/non_literal_parameter.rs +++ b/crates/ink/tests/ui/blake2b/fail/non_literal_parameter.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - const INPUT: &str = "test"; const _: [u8; 32] = ink::blake2x256!(INPUT); diff --git a/crates/lang/tests/ui/blake2b/fail/non_literal_parameter.stderr b/crates/ink/tests/ui/blake2b/fail/non_literal_parameter.stderr similarity index 53% rename from crates/lang/tests/ui/blake2b/fail/non_literal_parameter.stderr rename to crates/ink/tests/ui/blake2b/fail/non_literal_parameter.stderr index 0c6f18647ed..0bc1b557b65 100644 --- a/crates/lang/tests/ui/blake2b/fail/non_literal_parameter.stderr +++ b/crates/ink/tests/ui/blake2b/fail/non_literal_parameter.stderr @@ -1,5 +1,5 @@ error: expected string or byte string literal as input: expected literal - --> tests/ui/blake2b/fail/non_literal_parameter.rs:4:38 + --> tests/ui/blake2b/fail/non_literal_parameter.rs:2:38 | -4 | const _: [u8; 32] = ink::blake2x256!(INPUT); +2 | const _: [u8; 32] = ink::blake2x256!(INPUT); | ^^^^^ diff --git a/crates/lang/tests/ui/blake2b/pass/bytestring_input.rs b/crates/ink/tests/ui/blake2b/pass/bytestring_input.rs similarity index 92% rename from crates/lang/tests/ui/blake2b/pass/bytestring_input.rs rename to crates/ink/tests/ui/blake2b/pass/bytestring_input.rs index 8a62a2a6225..d078b19e960 100644 --- a/crates/lang/tests/ui/blake2b/pass/bytestring_input.rs +++ b/crates/ink/tests/ui/blake2b/pass/bytestring_input.rs @@ -1,5 +1,4 @@ -use ink_lang as ink; -use ink_lang_ir as ir; +use ink_ir as ir; macro_rules! assert_macro_eq { ( $input:literal ) => {{ diff --git a/crates/ink/tests/ui/blake2b/pass/no_implicit_prelude.rs b/crates/ink/tests/ui/blake2b/pass/no_implicit_prelude.rs new file mode 100644 index 00000000000..b9bf05e243b --- /dev/null +++ b/crates/ink/tests/ui/blake2b/pass/no_implicit_prelude.rs @@ -0,0 +1,5 @@ +#![no_implicit_prelude] + +const _: [::core::primitive::u8; 32] = ::ink::blake2x256!("test"); + +fn main() {} diff --git a/crates/lang/tests/ui/blake2b/pass/string_input.rs b/crates/ink/tests/ui/blake2b/pass/string_input.rs similarity index 92% rename from crates/lang/tests/ui/blake2b/pass/string_input.rs rename to crates/ink/tests/ui/blake2b/pass/string_input.rs index be57983b481..7f3ef927af7 100644 --- a/crates/lang/tests/ui/blake2b/pass/string_input.rs +++ b/crates/ink/tests/ui/blake2b/pass/string_input.rs @@ -1,5 +1,4 @@ -use ink_lang as ink; -use ink_lang_ir as ir; +use ink_ir as ir; macro_rules! assert_macro_eq { ( $input:literal ) => {{ diff --git a/crates/lang/tests/ui/chain_extension/E-01-simple.rs b/crates/ink/tests/ui/chain_extension/E-01-simple.rs similarity index 99% rename from crates/lang/tests/ui/chain_extension/E-01-simple.rs rename to crates/ink/tests/ui/chain_extension/E-01-simple.rs index 3355f43049f..c32a3e93358 100644 --- a/crates/lang/tests/ui/chain_extension/E-01-simple.rs +++ b/crates/ink/tests/ui/chain_extension/E-01-simple.rs @@ -1,5 +1,4 @@ use ink_env::Environment; -use ink_lang as ink; /// Custom chain extension to read to and write from the runtime. #[ink::chain_extension] diff --git a/crates/lang/tests/ui/contract/fail/config-keep-attr-invalid-type.rs b/crates/ink/tests/ui/contract/fail/config-keep-attr-invalid-type.rs similarity index 93% rename from crates/lang/tests/ui/contract/fail/config-keep-attr-invalid-type.rs rename to crates/ink/tests/ui/contract/fail/config-keep-attr-invalid-type.rs index 1eed308fd27..d929d61dc24 100644 --- a/crates/lang/tests/ui/contract/fail/config-keep-attr-invalid-type.rs +++ b/crates/ink/tests/ui/contract/fail/config-keep-attr-invalid-type.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract(keep_attr = true)] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/config-keep-attr-invalid-type.stderr b/crates/ink/tests/ui/contract/fail/config-keep-attr-invalid-type.stderr new file mode 100644 index 00000000000..f0bf186da21 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/config-keep-attr-invalid-type.stderr @@ -0,0 +1,5 @@ +error: expected a string with attributes separated by `,` + --> tests/ui/contract/fail/config-keep-attr-invalid-type.rs:1:17 + | +1 | #[ink::contract(keep_attr = true)] + | ^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/config-keep-attr-missing-arg.rs b/crates/ink/tests/ui/contract/fail/config-keep-attr-missing-arg.rs similarity index 92% rename from crates/lang/tests/ui/contract/fail/config-keep-attr-missing-arg.rs rename to crates/ink/tests/ui/contract/fail/config-keep-attr-missing-arg.rs index cb88c9e005e..d0b5c4d6a30 100644 --- a/crates/lang/tests/ui/contract/fail/config-keep-attr-missing-arg.rs +++ b/crates/ink/tests/ui/contract/fail/config-keep-attr-missing-arg.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract(keep_attr)] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/config-keep-attr-missing-arg.stderr b/crates/ink/tests/ui/contract/fail/config-keep-attr-missing-arg.stderr similarity index 50% rename from crates/lang/tests/ui/contract/fail/config-keep-attr-missing-arg.stderr rename to crates/ink/tests/ui/contract/fail/config-keep-attr-missing-arg.stderr index bdd0bbb36c8..ec0956fac84 100644 --- a/crates/lang/tests/ui/contract/fail/config-keep-attr-missing-arg.stderr +++ b/crates/ink/tests/ui/contract/fail/config-keep-attr-missing-arg.stderr @@ -1,5 +1,5 @@ error: ink! config options require an argument separated by '=' - --> tests/ui/contract/fail/config-keep-attr-missing-arg.rs:3:17 + --> tests/ui/contract/fail/config-keep-attr-missing-arg.rs:1:17 | -3 | #[ink::contract(keep_attr)] +1 | #[ink::contract(keep_attr)] | ^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-abi.rs b/crates/ink/tests/ui/contract/fail/constructor-abi.rs similarity index 92% rename from crates/lang/tests/ui/contract/fail/constructor-abi.rs rename to crates/ink/tests/ui/contract/fail/constructor-abi.rs index 749c41e30ec..c8d324c79df 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-abi.rs +++ b/crates/ink/tests/ui/contract/fail/constructor-abi.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/constructor-abi.stderr b/crates/ink/tests/ui/contract/fail/constructor-abi.stderr new file mode 100644 index 00000000000..24857f3fb6e --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/constructor-abi.stderr @@ -0,0 +1,5 @@ +error: ink! constructors must not have explicit ABI + --> tests/ui/contract/fail/constructor-abi.rs:8:13 + | +8 | pub extern "C" fn constructor() -> Self { + | ^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-async.rs b/crates/ink/tests/ui/contract/fail/constructor-async.rs similarity index 92% rename from crates/lang/tests/ui/contract/fail/constructor-async.rs rename to crates/ink/tests/ui/contract/fail/constructor-async.rs index 4acfb0f1386..bcd7d09c146 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-async.rs +++ b/crates/ink/tests/ui/contract/fail/constructor-async.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/constructor-async.stderr b/crates/ink/tests/ui/contract/fail/constructor-async.stderr new file mode 100644 index 00000000000..4d66a08e641 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/constructor-async.stderr @@ -0,0 +1,5 @@ +error: ink! constructors must not be async + --> tests/ui/contract/fail/constructor-async.rs:8:13 + | +8 | pub async fn constructor() -> Self { + | ^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-const.rs b/crates/ink/tests/ui/contract/fail/constructor-const.rs similarity index 92% rename from crates/lang/tests/ui/contract/fail/constructor-const.rs rename to crates/ink/tests/ui/contract/fail/constructor-const.rs index dae9d73c0aa..837758e8083 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-const.rs +++ b/crates/ink/tests/ui/contract/fail/constructor-const.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/constructor-const.stderr b/crates/ink/tests/ui/contract/fail/constructor-const.stderr new file mode 100644 index 00000000000..d96be9f8f41 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/constructor-const.stderr @@ -0,0 +1,5 @@ +error: ink! constructors must not be const + --> tests/ui/contract/fail/constructor-const.rs:8:13 + | +8 | pub const fn constructor() -> Self { + | ^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-input-non-codec.rs b/crates/ink/tests/ui/contract/fail/constructor-input-non-codec.rs similarity index 94% rename from crates/lang/tests/ui/contract/fail/constructor-input-non-codec.rs rename to crates/ink/tests/ui/contract/fail/constructor-input-non-codec.rs index c12317cfd38..a6875d8e32a 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-input-non-codec.rs +++ b/crates/ink/tests/ui/contract/fail/constructor-input-non-codec.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[derive(scale_info::TypeInfo)] diff --git a/crates/lang/tests/ui/contract/fail/constructor-input-non-codec.stderr b/crates/ink/tests/ui/contract/fail/constructor-input-non-codec.stderr similarity index 83% rename from crates/lang/tests/ui/contract/fail/constructor-input-non-codec.stderr rename to crates/ink/tests/ui/contract/fail/constructor-input-non-codec.stderr index dd654902eac..ddc49758a51 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-input-non-codec.stderr +++ b/crates/ink/tests/ui/contract/fail/constructor-input-non-codec.stderr @@ -1,7 +1,7 @@ error[E0277]: the trait bound `NonCodecType: WrapperTypeDecode` is not satisfied - --> tests/ui/contract/fail/constructor-input-non-codec.rs:13:28 + --> tests/ui/contract/fail/constructor-input-non-codec.rs:11:28 | -13 | pub fn constructor(_input: NonCodecType) -> Self { +11 | pub fn constructor(_input: NonCodecType) -> Self { | ^^^^^^ the trait `WrapperTypeDecode` is not implemented for `NonCodecType` | = help: the following other types implement trait `WrapperTypeDecode`: @@ -16,9 +16,9 @@ note: required by a bound in `DispatchInput` | ^^^^^^^^^^^^^ required by this bound in `DispatchInput` error[E0277]: the trait bound `NonCodecType: WrapperTypeDecode` is not satisfied - --> tests/ui/contract/fail/constructor-input-non-codec.rs:13:9 + --> tests/ui/contract/fail/constructor-input-non-codec.rs:11:9 | -13 | pub fn constructor(_input: NonCodecType) -> Self { +11 | pub fn constructor(_input: NonCodecType) -> Self { | ^^^ the trait `WrapperTypeDecode` is not implemented for `NonCodecType` | = help: the following other types implement trait `WrapperTypeDecode`: @@ -28,9 +28,9 @@ error[E0277]: the trait bound `NonCodecType: WrapperTypeDecode` is not satisfied = note: required because of the requirements on the impl of `parity_scale_codec::Decode` for `NonCodecType` error[E0277]: the trait bound `NonCodecType: WrapperTypeEncode` is not satisfied - --> tests/ui/contract/fail/constructor-input-non-codec.rs:13:9 + --> tests/ui/contract/fail/constructor-input-non-codec.rs:11:9 | -13 | pub fn constructor(_input: NonCodecType) -> Self { +11 | pub fn constructor(_input: NonCodecType) -> Self { | ^^^ the trait `WrapperTypeEncode` is not implemented for `NonCodecType` | = help: the following other types implement trait `WrapperTypeEncode`: diff --git a/crates/lang/tests/ui/contract/fail/constructor-input-pattern.rs b/crates/ink/tests/ui/contract/fail/constructor-input-pattern.rs similarity index 93% rename from crates/lang/tests/ui/contract/fail/constructor-input-pattern.rs rename to crates/ink/tests/ui/contract/fail/constructor-input-pattern.rs index d4ba3cf098d..87b2ee4f792 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-input-pattern.rs +++ b/crates/ink/tests/ui/contract/fail/constructor-input-pattern.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/constructor-input-pattern.stderr b/crates/ink/tests/ui/contract/fail/constructor-input-pattern.stderr new file mode 100644 index 00000000000..e6cb06757e7 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/constructor-input-pattern.stderr @@ -0,0 +1,5 @@ +error: ink! constructor arguments must have an identifier + --> tests/ui/contract/fail/constructor-input-pattern.rs:8:28 + | +8 | pub fn constructor((_a, _b): (i32, i32)) -> Self { + | ^^^^^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-missing-return.rs b/crates/ink/tests/ui/contract/fail/constructor-missing-return.rs similarity index 91% rename from crates/lang/tests/ui/contract/fail/constructor-missing-return.rs rename to crates/ink/tests/ui/contract/fail/constructor-missing-return.rs index 48ac98ae446..eb828293d1c 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-missing-return.rs +++ b/crates/ink/tests/ui/contract/fail/constructor-missing-return.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/constructor-missing-return.stderr b/crates/ink/tests/ui/contract/fail/constructor-missing-return.stderr new file mode 100644 index 00000000000..c20b5889fb2 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/constructor-missing-return.stderr @@ -0,0 +1,5 @@ +error: missing return for ink! constructor + --> tests/ui/contract/fail/constructor-missing-return.rs:8:13 + | +8 | pub fn constructor() {} + | ^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-multiple-wildcard-selectors.rs b/crates/ink/tests/ui/contract/fail/constructor-multiple-wildcard-selectors.rs similarity index 94% rename from crates/lang/tests/ui/contract/fail/constructor-multiple-wildcard-selectors.rs rename to crates/ink/tests/ui/contract/fail/constructor-multiple-wildcard-selectors.rs index 483c00ea599..ce2e2b51fea 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-multiple-wildcard-selectors.rs +++ b/crates/ink/tests/ui/contract/fail/constructor-multiple-wildcard-selectors.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/constructor-multiple-wildcard-selectors.stderr b/crates/ink/tests/ui/contract/fail/constructor-multiple-wildcard-selectors.stderr similarity index 53% rename from crates/lang/tests/ui/contract/fail/constructor-multiple-wildcard-selectors.stderr rename to crates/ink/tests/ui/contract/fail/constructor-multiple-wildcard-selectors.stderr index 229b3749d48..e8c23317b1d 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-multiple-wildcard-selectors.stderr +++ b/crates/ink/tests/ui/contract/fail/constructor-multiple-wildcard-selectors.stderr @@ -1,11 +1,11 @@ error: encountered ink! constructor with overlapping wildcard selectors - --> tests/ui/contract/fail/constructor-multiple-wildcard-selectors.rs:15:9 + --> tests/ui/contract/fail/constructor-multiple-wildcard-selectors.rs:13:9 | -15 | pub fn constructor2() -> Self { +13 | pub fn constructor2() -> Self { | ^^^ error: first ink! constructor with overlapping wildcard selector here - --> tests/ui/contract/fail/constructor-multiple-wildcard-selectors.rs:10:9 - | -10 | pub fn constructor1() -> Self { - | ^^^ + --> tests/ui/contract/fail/constructor-multiple-wildcard-selectors.rs:8:9 + | +8 | pub fn constructor1() -> Self { + | ^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-payable-invalid-1.rs b/crates/ink/tests/ui/contract/fail/constructor-payable-invalid-1.rs similarity index 93% rename from crates/lang/tests/ui/contract/fail/constructor-payable-invalid-1.rs rename to crates/ink/tests/ui/contract/fail/constructor-payable-invalid-1.rs index 88b819635dc..00f41472601 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-payable-invalid-1.rs +++ b/crates/ink/tests/ui/contract/fail/constructor-payable-invalid-1.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/constructor-payable-invalid-1.stderr b/crates/ink/tests/ui/contract/fail/constructor-payable-invalid-1.stderr new file mode 100644 index 00000000000..622e3c02164 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/constructor-payable-invalid-1.stderr @@ -0,0 +1,5 @@ +error: unknown ink! attribute argument (name = value) + --> tests/ui/contract/fail/constructor-payable-invalid-1.rs:7:28 + | +7 | #[ink(constructor, payable = true)] + | ^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-payable-invalid-2.rs b/crates/ink/tests/ui/contract/fail/constructor-payable-invalid-2.rs similarity index 93% rename from crates/lang/tests/ui/contract/fail/constructor-payable-invalid-2.rs rename to crates/ink/tests/ui/contract/fail/constructor-payable-invalid-2.rs index f049b0b7636..65ec95cd336 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-payable-invalid-2.rs +++ b/crates/ink/tests/ui/contract/fail/constructor-payable-invalid-2.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/constructor-payable-invalid-2.stderr b/crates/ink/tests/ui/contract/fail/constructor-payable-invalid-2.stderr new file mode 100644 index 00000000000..b86f7ddca81 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/constructor-payable-invalid-2.stderr @@ -0,0 +1,5 @@ +error: unknown ink! attribute argument (name = value) + --> tests/ui/contract/fail/constructor-payable-invalid-2.rs:7:28 + | +7 | #[ink(constructor, payable = false)] + | ^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-selector-and-wildcard-selector.rs b/crates/ink/tests/ui/contract/fail/constructor-selector-and-wildcard-selector.rs similarity index 93% rename from crates/lang/tests/ui/contract/fail/constructor-selector-and-wildcard-selector.rs rename to crates/ink/tests/ui/contract/fail/constructor-selector-and-wildcard-selector.rs index 70025d254af..95134b7c03d 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-selector-and-wildcard-selector.rs +++ b/crates/ink/tests/ui/contract/fail/constructor-selector-and-wildcard-selector.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/constructor-selector-and-wildcard-selector.stderr b/crates/ink/tests/ui/contract/fail/constructor-selector-and-wildcard-selector.stderr similarity index 70% rename from crates/lang/tests/ui/contract/fail/constructor-selector-and-wildcard-selector.stderr rename to crates/ink/tests/ui/contract/fail/constructor-selector-and-wildcard-selector.stderr index fb79614beb0..d5730eee213 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-selector-and-wildcard-selector.stderr +++ b/crates/ink/tests/ui/contract/fail/constructor-selector-and-wildcard-selector.stderr @@ -1,11 +1,11 @@ error: encountered ink! attribute arguments with equal kinds - --> tests/ui/contract/fail/constructor-selector-and-wildcard-selector.rs:9:51 + --> tests/ui/contract/fail/constructor-selector-and-wildcard-selector.rs:7:51 | -9 | #[ink(constructor, selector = 0xCAFEBABA, selector = _)] +7 | #[ink(constructor, selector = 0xCAFEBABA, selector = _)] | ^^^^^^^^ error: first equal ink! attribute argument with equal kind here - --> tests/ui/contract/fail/constructor-selector-and-wildcard-selector.rs:9:28 + --> tests/ui/contract/fail/constructor-selector-and-wildcard-selector.rs:7:28 | -9 | #[ink(constructor, selector = 0xCAFEBABA, selector = _)] +7 | #[ink(constructor, selector = 0xCAFEBABA, selector = _)] | ^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-self-receiver-01.rs b/crates/ink/tests/ui/contract/fail/constructor-self-receiver-01.rs similarity index 92% rename from crates/lang/tests/ui/contract/fail/constructor-self-receiver-01.rs rename to crates/ink/tests/ui/contract/fail/constructor-self-receiver-01.rs index f1220614067..35c6d0a7968 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-self-receiver-01.rs +++ b/crates/ink/tests/ui/contract/fail/constructor-self-receiver-01.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/constructor-self-receiver-01.stderr b/crates/ink/tests/ui/contract/fail/constructor-self-receiver-01.stderr new file mode 100644 index 00000000000..91ae26852cd --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/constructor-self-receiver-01.stderr @@ -0,0 +1,5 @@ +error: ink! constructors must have no `self` receiver + --> tests/ui/contract/fail/constructor-self-receiver-01.rs:8:28 + | +8 | pub fn constructor(&self) -> Self { + | ^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-self-receiver-02.rs b/crates/ink/tests/ui/contract/fail/constructor-self-receiver-02.rs similarity index 92% rename from crates/lang/tests/ui/contract/fail/constructor-self-receiver-02.rs rename to crates/ink/tests/ui/contract/fail/constructor-self-receiver-02.rs index 8e9701c69d7..5c688dbff0e 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-self-receiver-02.rs +++ b/crates/ink/tests/ui/contract/fail/constructor-self-receiver-02.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/constructor-self-receiver-02.stderr b/crates/ink/tests/ui/contract/fail/constructor-self-receiver-02.stderr new file mode 100644 index 00000000000..83d02d72132 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/constructor-self-receiver-02.stderr @@ -0,0 +1,5 @@ +error: ink! constructors must have no `self` receiver + --> tests/ui/contract/fail/constructor-self-receiver-02.rs:8:28 + | +8 | pub fn constructor(&mut self) -> Self { + | ^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-self-receiver-03.rs b/crates/ink/tests/ui/contract/fail/constructor-self-receiver-03.rs similarity index 92% rename from crates/lang/tests/ui/contract/fail/constructor-self-receiver-03.rs rename to crates/ink/tests/ui/contract/fail/constructor-self-receiver-03.rs index 1f7dd5890b0..83fb3787b95 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-self-receiver-03.rs +++ b/crates/ink/tests/ui/contract/fail/constructor-self-receiver-03.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/constructor-self-receiver-03.stderr b/crates/ink/tests/ui/contract/fail/constructor-self-receiver-03.stderr new file mode 100644 index 00000000000..a4f883ec9cf --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/constructor-self-receiver-03.stderr @@ -0,0 +1,28 @@ +error[E0411]: cannot find type `Self` in this scope + --> tests/ui/contract/fail/constructor-self-receiver-03.rs:8:35 + | +4 | pub struct Contract {} + | --- `Self` not allowed in a constant item +... +8 | pub fn constructor(this: &Self) -> Self { + | ^^^^ `Self` is only available in impls, traits, and type definitions + +error[E0411]: cannot find type `Self` in this scope + --> tests/ui/contract/fail/constructor-self-receiver-03.rs:8:35 + | +1 | #[ink::contract] + | ---------------- `Self` not allowed in a function +... +8 | pub fn constructor(this: &Self) -> Self { + | ^^^^ `Self` is only available in impls, traits, and type definitions + +error[E0106]: missing lifetime specifier + --> tests/ui/contract/fail/constructor-self-receiver-03.rs:8:34 + | +8 | pub fn constructor(this: &Self) -> Self { + | ^ expected named lifetime parameter + | +help: consider introducing a named lifetime parameter + | +8 | pub<'a> fn constructor(this: &'a Self) -> Self { + | ++++ ++ diff --git a/crates/lang/tests/ui/contract/fail/constructor-self-receiver-04.rs b/crates/ink/tests/ui/contract/fail/constructor-self-receiver-04.rs similarity index 92% rename from crates/lang/tests/ui/contract/fail/constructor-self-receiver-04.rs rename to crates/ink/tests/ui/contract/fail/constructor-self-receiver-04.rs index 794be481142..a76e79e5c0e 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-self-receiver-04.rs +++ b/crates/ink/tests/ui/contract/fail/constructor-self-receiver-04.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/constructor-self-receiver-04.stderr b/crates/ink/tests/ui/contract/fail/constructor-self-receiver-04.stderr new file mode 100644 index 00000000000..3c5b41458cc --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/constructor-self-receiver-04.stderr @@ -0,0 +1,5 @@ +error: ink! constructors must have no `self` receiver + --> tests/ui/contract/fail/constructor-self-receiver-04.rs:8:28 + | +8 | pub fn constructor(self) -> Self { + | ^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-unsafe.rs b/crates/ink/tests/ui/contract/fail/constructor-unsafe.rs similarity index 92% rename from crates/lang/tests/ui/contract/fail/constructor-unsafe.rs rename to crates/ink/tests/ui/contract/fail/constructor-unsafe.rs index c5c770520ca..107c3bd061a 100644 --- a/crates/lang/tests/ui/contract/fail/constructor-unsafe.rs +++ b/crates/ink/tests/ui/contract/fail/constructor-unsafe.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/constructor-unsafe.stderr b/crates/ink/tests/ui/contract/fail/constructor-unsafe.stderr new file mode 100644 index 00000000000..bbe34d1e0d5 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/constructor-unsafe.stderr @@ -0,0 +1,5 @@ +error: ink! constructors must not be unsafe + --> tests/ui/contract/fail/constructor-unsafe.rs:8:13 + | +8 | pub unsafe fn constructor() -> Self { + | ^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/event-conflicting-storage.rs b/crates/ink/tests/ui/contract/fail/event-conflicting-storage.rs similarity index 93% rename from crates/lang/tests/ui/contract/fail/event-conflicting-storage.rs rename to crates/ink/tests/ui/contract/fail/event-conflicting-storage.rs index 4e126ecda3f..647d8ec8ce0 100644 --- a/crates/lang/tests/ui/contract/fail/event-conflicting-storage.rs +++ b/crates/ink/tests/ui/contract/fail/event-conflicting-storage.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/event-conflicting-storage.stderr b/crates/ink/tests/ui/contract/fail/event-conflicting-storage.stderr new file mode 100644 index 00000000000..aa724f77a8e --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/event-conflicting-storage.stderr @@ -0,0 +1,5 @@ +error: encountered conflicting ink! attribute argument + --> tests/ui/contract/fail/event-conflicting-storage.rs:7:11 + | +7 | #[ink(storage)] + | ^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/event-too-many-topics-anonymous.rs b/crates/ink/tests/ui/contract/fail/event-too-many-topics-anonymous.rs similarity index 98% rename from crates/lang/tests/ui/contract/fail/event-too-many-topics-anonymous.rs rename to crates/ink/tests/ui/contract/fail/event-too-many-topics-anonymous.rs index 64fa8d5e045..440ba81c419 100644 --- a/crates/lang/tests/ui/contract/fail/event-too-many-topics-anonymous.rs +++ b/crates/ink/tests/ui/contract/fail/event-too-many-topics-anonymous.rs @@ -2,7 +2,6 @@ use ink_env::{ DefaultEnvironment, Environment, }; -use ink_lang as ink; pub struct EnvironmentMoreTopics; diff --git a/crates/lang/tests/ui/contract/fail/event-too-many-topics-anonymous.stderr b/crates/ink/tests/ui/contract/fail/event-too-many-topics-anonymous.stderr similarity index 97% rename from crates/lang/tests/ui/contract/fail/event-too-many-topics-anonymous.stderr rename to crates/ink/tests/ui/contract/fail/event-too-many-topics-anonymous.stderr index 29cd6daf0d0..e8d8a3f4e13 100644 --- a/crates/lang/tests/ui/contract/fail/event-too-many-topics-anonymous.stderr +++ b/crates/ink/tests/ui/contract/fail/event-too-many-topics-anonymous.stderr @@ -1,7 +1,7 @@ error[E0277]: the trait bound `EventTopics<4_usize>: RespectTopicLimit<2_usize>` is not satisfied - --> tests/ui/contract/fail/event-too-many-topics-anonymous.rs:26:5 + --> tests/ui/contract/fail/event-too-many-topics-anonymous.rs:25:5 | -26 | pub struct Event { +25 | pub struct Event { | ^^^ the trait `RespectTopicLimit<2_usize>` is not implemented for `EventTopics<4_usize>` | = help: the following other types implement trait `RespectTopicLimit`: diff --git a/crates/lang/tests/ui/contract/fail/event-too-many-topics.rs b/crates/ink/tests/ui/contract/fail/event-too-many-topics.rs similarity index 98% rename from crates/lang/tests/ui/contract/fail/event-too-many-topics.rs rename to crates/ink/tests/ui/contract/fail/event-too-many-topics.rs index 659b047c440..4b7be584017 100644 --- a/crates/lang/tests/ui/contract/fail/event-too-many-topics.rs +++ b/crates/ink/tests/ui/contract/fail/event-too-many-topics.rs @@ -2,7 +2,6 @@ use ink_env::{ DefaultEnvironment, Environment, }; -use ink_lang as ink; pub struct EnvironmentMoreTopics; diff --git a/crates/lang/tests/ui/contract/fail/event-too-many-topics.stderr b/crates/ink/tests/ui/contract/fail/event-too-many-topics.stderr similarity index 92% rename from crates/lang/tests/ui/contract/fail/event-too-many-topics.stderr rename to crates/ink/tests/ui/contract/fail/event-too-many-topics.stderr index 472de268a23..306d33e0de2 100644 --- a/crates/lang/tests/ui/contract/fail/event-too-many-topics.stderr +++ b/crates/ink/tests/ui/contract/fail/event-too-many-topics.stderr @@ -1,7 +1,7 @@ error[E0277]: the trait bound `EventTopics<3_usize>: RespectTopicLimit<2_usize>` is not satisfied - --> tests/ui/contract/fail/event-too-many-topics.rs:26:5 + --> tests/ui/contract/fail/event-too-many-topics.rs:25:5 | -26 | pub struct Event { +25 | pub struct Event { | ^^^ the trait `RespectTopicLimit<2_usize>` is not implemented for `EventTopics<3_usize>` | = help: the following other types implement trait `RespectTopicLimit`: diff --git a/crates/lang/tests/ui/contract/fail/impl-block-for-non-storage-01.rs b/crates/ink/tests/ui/contract/fail/impl-block-for-non-storage-01.rs similarity index 95% rename from crates/lang/tests/ui/contract/fail/impl-block-for-non-storage-01.rs rename to crates/ink/tests/ui/contract/fail/impl-block-for-non-storage-01.rs index 1e648da4fa0..5dd9120f775 100644 --- a/crates/lang/tests/ui/contract/fail/impl-block-for-non-storage-01.rs +++ b/crates/ink/tests/ui/contract/fail/impl-block-for-non-storage-01.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/impl-block-for-non-storage-01.stderr b/crates/ink/tests/ui/contract/fail/impl-block-for-non-storage-01.stderr similarity index 78% rename from crates/lang/tests/ui/contract/fail/impl-block-for-non-storage-01.stderr rename to crates/ink/tests/ui/contract/fail/impl-block-for-non-storage-01.stderr index 319d43ae79b..d528cd12b43 100644 --- a/crates/lang/tests/ui/contract/fail/impl-block-for-non-storage-01.stderr +++ b/crates/ink/tests/ui/contract/fail/impl-block-for-non-storage-01.stderr @@ -1,31 +1,31 @@ error[E0308]: mismatched types - --> tests/ui/contract/fail/impl-block-for-non-storage-01.rs:20:10 + --> tests/ui/contract/fail/impl-block-for-non-storage-01.rs:18:10 | -20 | impl NonContract { +18 | impl NonContract { | ^^^^^^^^^^^ expected struct `Contract`, found struct `NonContract` | = note: expected struct `IsSameType` found struct `IsSameType` error[E0599]: no function or associated item named `constructor_2` found for struct `Contract` in the current scope - --> tests/ui/contract/fail/impl-block-for-non-storage-01.rs:22:16 + --> tests/ui/contract/fail/impl-block-for-non-storage-01.rs:20:16 | -6 | pub struct Contract {} +4 | pub struct Contract {} | --- function or associated item `constructor_2` not found for this ... -22 | pub fn constructor_2() -> Self { +20 | pub fn constructor_2() -> Self { | ^^^^^^^^^^^^^ | | | function or associated item not found in `Contract` | help: there is an associated function with a similar name: `constructor_1` error[E0599]: no function or associated item named `message_2` found for struct `Contract` in the current scope - --> tests/ui/contract/fail/impl-block-for-non-storage-01.rs:27:16 + --> tests/ui/contract/fail/impl-block-for-non-storage-01.rs:25:16 | -6 | pub struct Contract {} +4 | pub struct Contract {} | --- function or associated item `message_2` not found for this ... -27 | pub fn message_2(&self) {} +25 | pub fn message_2(&self) {} | ^^^^^^^^^ | | | function or associated item not found in `Contract` diff --git a/crates/lang/tests/ui/contract/fail/impl-block-for-non-storage-02.rs b/crates/ink/tests/ui/contract/fail/impl-block-for-non-storage-02.rs similarity index 94% rename from crates/lang/tests/ui/contract/fail/impl-block-for-non-storage-02.rs rename to crates/ink/tests/ui/contract/fail/impl-block-for-non-storage-02.rs index 779a431bb1a..448febacfe5 100644 --- a/crates/lang/tests/ui/contract/fail/impl-block-for-non-storage-02.rs +++ b/crates/ink/tests/ui/contract/fail/impl-block-for-non-storage-02.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/impl-block-for-non-storage-02.stderr b/crates/ink/tests/ui/contract/fail/impl-block-for-non-storage-02.stderr similarity index 71% rename from crates/lang/tests/ui/contract/fail/impl-block-for-non-storage-02.stderr rename to crates/ink/tests/ui/contract/fail/impl-block-for-non-storage-02.stderr index 3aa844764b8..a55646fc2bb 100644 --- a/crates/lang/tests/ui/contract/fail/impl-block-for-non-storage-02.stderr +++ b/crates/ink/tests/ui/contract/fail/impl-block-for-non-storage-02.stderr @@ -1,7 +1,7 @@ error[E0308]: mismatched types - --> tests/ui/contract/fail/impl-block-for-non-storage-02.rs:21:10 + --> tests/ui/contract/fail/impl-block-for-non-storage-02.rs:19:10 | -21 | impl NonContract {} +19 | impl NonContract {} | ^^^^^^^^^^^ expected struct `Contract`, found struct `NonContract` | = note: expected struct `IsSameType` diff --git a/crates/lang/tests/ui/contract/fail/impl-block-namespace-invalid-identifier.rs b/crates/ink/tests/ui/contract/fail/impl-block-namespace-invalid-identifier.rs similarity index 93% rename from crates/lang/tests/ui/contract/fail/impl-block-namespace-invalid-identifier.rs rename to crates/ink/tests/ui/contract/fail/impl-block-namespace-invalid-identifier.rs index 1151ef70f1d..8816faca78f 100644 --- a/crates/lang/tests/ui/contract/fail/impl-block-namespace-invalid-identifier.rs +++ b/crates/ink/tests/ui/contract/fail/impl-block-namespace-invalid-identifier.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/impl-block-namespace-invalid-identifier.stderr b/crates/ink/tests/ui/contract/fail/impl-block-namespace-invalid-identifier.stderr similarity index 74% rename from crates/lang/tests/ui/contract/fail/impl-block-namespace-invalid-identifier.stderr rename to crates/ink/tests/ui/contract/fail/impl-block-namespace-invalid-identifier.stderr index d4e5efa7e46..989acd599e0 100644 --- a/crates/lang/tests/ui/contract/fail/impl-block-namespace-invalid-identifier.stderr +++ b/crates/ink/tests/ui/contract/fail/impl-block-namespace-invalid-identifier.stderr @@ -1,5 +1,5 @@ error: encountered invalid Rust identifier for namespace argument - --> tests/ui/contract/fail/impl-block-namespace-invalid-identifier.rs:8:23 + --> tests/ui/contract/fail/impl-block-namespace-invalid-identifier.rs:6:23 | -8 | #[ink(namespace = "::invalid_identifier")] +6 | #[ink(namespace = "::invalid_identifier")] | ^^^^^^^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/impl-block-namespace-invalid-type.rs b/crates/ink/tests/ui/contract/fail/impl-block-namespace-invalid-type.rs similarity index 93% rename from crates/lang/tests/ui/contract/fail/impl-block-namespace-invalid-type.rs rename to crates/ink/tests/ui/contract/fail/impl-block-namespace-invalid-type.rs index 4a4decd71f1..fee88a8d1e7 100644 --- a/crates/lang/tests/ui/contract/fail/impl-block-namespace-invalid-type.rs +++ b/crates/ink/tests/ui/contract/fail/impl-block-namespace-invalid-type.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/impl-block-namespace-invalid-type.stderr b/crates/ink/tests/ui/contract/fail/impl-block-namespace-invalid-type.stderr similarity index 82% rename from crates/lang/tests/ui/contract/fail/impl-block-namespace-invalid-type.stderr rename to crates/ink/tests/ui/contract/fail/impl-block-namespace-invalid-type.stderr index 0f34c5f10e7..712bc1a1c92 100644 --- a/crates/lang/tests/ui/contract/fail/impl-block-namespace-invalid-type.stderr +++ b/crates/ink/tests/ui/contract/fail/impl-block-namespace-invalid-type.stderr @@ -1,5 +1,5 @@ error: expected string type for `namespace` argument, e.g. #[ink(namespace = "hello")] - --> tests/ui/contract/fail/impl-block-namespace-invalid-type.rs:8:11 + --> tests/ui/contract/fail/impl-block-namespace-invalid-type.rs:6:11 | -8 | #[ink(namespace = true)] +6 | #[ink(namespace = true)] | ^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/impl-block-namespace-missing-argument.rs b/crates/ink/tests/ui/contract/fail/impl-block-namespace-missing-argument.rs similarity index 93% rename from crates/lang/tests/ui/contract/fail/impl-block-namespace-missing-argument.rs rename to crates/ink/tests/ui/contract/fail/impl-block-namespace-missing-argument.rs index 94bbf98b5ba..b6bcc98b599 100644 --- a/crates/lang/tests/ui/contract/fail/impl-block-namespace-missing-argument.rs +++ b/crates/ink/tests/ui/contract/fail/impl-block-namespace-missing-argument.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/impl-block-namespace-missing-argument.stderr b/crates/ink/tests/ui/contract/fail/impl-block-namespace-missing-argument.stderr similarity index 85% rename from crates/lang/tests/ui/contract/fail/impl-block-namespace-missing-argument.stderr rename to crates/ink/tests/ui/contract/fail/impl-block-namespace-missing-argument.stderr index b09ed8ec0cd..7e01a72da39 100644 --- a/crates/lang/tests/ui/contract/fail/impl-block-namespace-missing-argument.stderr +++ b/crates/ink/tests/ui/contract/fail/impl-block-namespace-missing-argument.stderr @@ -1,5 +1,5 @@ error: encountered #[ink(namespace)] that is missing its string parameter. Did you mean #[ink(namespace = name: str)] ? - --> tests/ui/contract/fail/impl-block-namespace-missing-argument.rs:8:11 + --> tests/ui/contract/fail/impl-block-namespace-missing-argument.rs:6:11 | -8 | #[ink(namespace)] +6 | #[ink(namespace)] | ^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/impl-block-using-env-no-marker.rs b/crates/ink/tests/ui/contract/fail/impl-block-using-env-no-marker.rs similarity index 95% rename from crates/lang/tests/ui/contract/fail/impl-block-using-env-no-marker.rs rename to crates/ink/tests/ui/contract/fail/impl-block-using-env-no-marker.rs index 0b51814af74..88088070a96 100644 --- a/crates/lang/tests/ui/contract/fail/impl-block-using-env-no-marker.rs +++ b/crates/ink/tests/ui/contract/fail/impl-block-using-env-no-marker.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/impl-block-using-env-no-marker.stderr b/crates/ink/tests/ui/contract/fail/impl-block-using-env-no-marker.stderr similarity index 82% rename from crates/lang/tests/ui/contract/fail/impl-block-using-env-no-marker.stderr rename to crates/ink/tests/ui/contract/fail/impl-block-using-env-no-marker.stderr index f5384609384..33dee250415 100644 --- a/crates/lang/tests/ui/contract/fail/impl-block-using-env-no-marker.stderr +++ b/crates/ink/tests/ui/contract/fail/impl-block-using-env-no-marker.stderr @@ -1,11 +1,11 @@ error[E0599]: no method named `env` found for reference `&Contract` in the current scope - --> tests/ui/contract/fail/impl-block-using-env-no-marker.rs:24:26 + --> tests/ui/contract/fail/impl-block-using-env-no-marker.rs:22:26 | -24 | let _ = self.env().caller(); +22 | let _ = self.env().caller(); | ^^^ method not found in `&Contract` | = help: items from traits can only be used if the trait is in scope help: the following trait is implemented but not in scope; perhaps add a `use` for it: | -3 | use ink_lang::codegen::Env; +1 | use ink::codegen::Env; | diff --git a/crates/lang/tests/ui/contract/fail/impl-block-using-static-env-no-marker.rs b/crates/ink/tests/ui/contract/fail/impl-block-using-static-env-no-marker.rs similarity index 95% rename from crates/lang/tests/ui/contract/fail/impl-block-using-static-env-no-marker.rs rename to crates/ink/tests/ui/contract/fail/impl-block-using-static-env-no-marker.rs index 0aace2aac9a..c59f6337a6f 100644 --- a/crates/lang/tests/ui/contract/fail/impl-block-using-static-env-no-marker.rs +++ b/crates/ink/tests/ui/contract/fail/impl-block-using-static-env-no-marker.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/impl-block-using-static-env-no-marker.stderr b/crates/ink/tests/ui/contract/fail/impl-block-using-static-env-no-marker.stderr similarity index 79% rename from crates/lang/tests/ui/contract/fail/impl-block-using-static-env-no-marker.stderr rename to crates/ink/tests/ui/contract/fail/impl-block-using-static-env-no-marker.stderr index dc1d8d72b37..7b1489c11d8 100644 --- a/crates/lang/tests/ui/contract/fail/impl-block-using-static-env-no-marker.stderr +++ b/crates/ink/tests/ui/contract/fail/impl-block-using-static-env-no-marker.stderr @@ -1,14 +1,14 @@ error[E0599]: no function or associated item named `env` found for struct `Contract` in the current scope - --> tests/ui/contract/fail/impl-block-using-static-env-no-marker.rs:22:27 + --> tests/ui/contract/fail/impl-block-using-static-env-no-marker.rs:20:27 | -6 | pub struct Contract {} +4 | pub struct Contract {} | --- function or associated item `env` not found for this ... -22 | let _ = Self::env().caller(); +20 | let _ = Self::env().caller(); | ^^^ function or associated item not found in `Contract` | = help: items from traits can only be used if the trait is in scope help: the following trait is implemented but not in scope; perhaps add a `use` for it: | -3 | use ink_lang::codegen::StaticEnv; +1 | use ink::codegen::StaticEnv; | diff --git a/crates/lang/tests/ui/contract/fail/message-input-non-codec.rs b/crates/ink/tests/ui/contract/fail/message-input-non-codec.rs similarity index 94% rename from crates/lang/tests/ui/contract/fail/message-input-non-codec.rs rename to crates/ink/tests/ui/contract/fail/message-input-non-codec.rs index 575dd04719a..f4419478a56 100644 --- a/crates/lang/tests/ui/contract/fail/message-input-non-codec.rs +++ b/crates/ink/tests/ui/contract/fail/message-input-non-codec.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[derive(scale_info::TypeInfo)] diff --git a/crates/lang/tests/ui/contract/fail/message-input-non-codec.stderr b/crates/ink/tests/ui/contract/fail/message-input-non-codec.stderr similarity index 63% rename from crates/lang/tests/ui/contract/fail/message-input-non-codec.stderr rename to crates/ink/tests/ui/contract/fail/message-input-non-codec.stderr index 966210367c2..f2bd868f224 100644 --- a/crates/lang/tests/ui/contract/fail/message-input-non-codec.stderr +++ b/crates/ink/tests/ui/contract/fail/message-input-non-codec.stderr @@ -1,7 +1,7 @@ error[E0277]: the trait bound `NonCodecType: WrapperTypeDecode` is not satisfied - --> tests/ui/contract/fail/message-input-non-codec.rs:18:31 + --> tests/ui/contract/fail/message-input-non-codec.rs:16:31 | -18 | pub fn message(&self, _input: NonCodecType) {} +16 | pub fn message(&self, _input: NonCodecType) {} | ^^^^^^ the trait `WrapperTypeDecode` is not implemented for `NonCodecType` | = help: the following other types implement trait `WrapperTypeDecode`: @@ -16,9 +16,9 @@ note: required by a bound in `DispatchInput` | ^^^^^^^^^^^^^ required by this bound in `DispatchInput` error[E0277]: the trait bound `NonCodecType: WrapperTypeDecode` is not satisfied - --> tests/ui/contract/fail/message-input-non-codec.rs:18:9 + --> tests/ui/contract/fail/message-input-non-codec.rs:16:9 | -18 | pub fn message(&self, _input: NonCodecType) {} +16 | pub fn message(&self, _input: NonCodecType) {} | ^^^ the trait `WrapperTypeDecode` is not implemented for `NonCodecType` | = help: the following other types implement trait `WrapperTypeDecode`: @@ -28,9 +28,9 @@ error[E0277]: the trait bound `NonCodecType: WrapperTypeDecode` is not satisfied = note: required because of the requirements on the impl of `parity_scale_codec::Decode` for `NonCodecType` error[E0277]: the trait bound `NonCodecType: WrapperTypeEncode` is not satisfied - --> tests/ui/contract/fail/message-input-non-codec.rs:18:9 + --> tests/ui/contract/fail/message-input-non-codec.rs:16:9 | -18 | pub fn message(&self, _input: NonCodecType) {} +16 | pub fn message(&self, _input: NonCodecType) {} | ^^^ the trait `WrapperTypeEncode` is not implemented for `NonCodecType` | = help: the following other types implement trait `WrapperTypeEncode`: @@ -50,11 +50,11 @@ note: required by a bound in `ExecutionInput::>::push_arg` -error[E0599]: the method `fire` exists for struct `ink_env::call::CallBuilder>, Set, ArgumentList>>>, Set>>`, but its trait bounds were not satisfied - --> tests/ui/contract/fail/message-input-non-codec.rs:18:9 +error[E0599]: the method `fire` exists for struct `ink::ink_env::call::CallBuilder>, Set, ArgumentList>>>, Set>>`, but its trait bounds were not satisfied + --> tests/ui/contract/fail/message-input-non-codec.rs:16:9 | -18 | pub fn message(&self, _input: NonCodecType) {} - | ^^^ method cannot be called on `ink_env::call::CallBuilder>, Set, ArgumentList>>>, Set>>` due to unsatisfied trait bounds +16 | pub fn message(&self, _input: NonCodecType) {} + | ^^^ method cannot be called on `ink::ink_env::call::CallBuilder>, Set, ArgumentList>>>, Set>>` due to unsatisfied trait bounds | ::: $WORKSPACE/crates/env/src/call/execution_input.rs | @@ -62,4 +62,4 @@ error[E0599]: the method `fire` exists for struct `ink_env::call::CallBuilder, ArgumentList>: Encode` + `ArgumentList, ArgumentList>: Encode` diff --git a/crates/lang/tests/ui/contract/fail/message-input-pattern.rs b/crates/ink/tests/ui/contract/fail/message-input-pattern.rs similarity index 93% rename from crates/lang/tests/ui/contract/fail/message-input-pattern.rs rename to crates/ink/tests/ui/contract/fail/message-input-pattern.rs index 20d3863ead9..9e23dc5e1d7 100644 --- a/crates/lang/tests/ui/contract/fail/message-input-pattern.rs +++ b/crates/ink/tests/ui/contract/fail/message-input-pattern.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/message-input-pattern.stderr b/crates/ink/tests/ui/contract/fail/message-input-pattern.stderr new file mode 100644 index 00000000000..c11b1b6f033 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/message-input-pattern.stderr @@ -0,0 +1,5 @@ +error: ink! message arguments must have an identifier + --> tests/ui/contract/fail/message-input-pattern.rs:13:31 + | +13 | pub fn message(&self, (_a, _b): (i32, i32)) {} + | ^^^^^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/message-multiple-wildcard-selectors.rs b/crates/ink/tests/ui/contract/fail/message-multiple-wildcard-selectors.rs similarity index 94% rename from crates/lang/tests/ui/contract/fail/message-multiple-wildcard-selectors.rs rename to crates/ink/tests/ui/contract/fail/message-multiple-wildcard-selectors.rs index 0eb135fcdc9..8a0c160c8cd 100644 --- a/crates/lang/tests/ui/contract/fail/message-multiple-wildcard-selectors.rs +++ b/crates/ink/tests/ui/contract/fail/message-multiple-wildcard-selectors.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/message-multiple-wildcard-selectors.stderr b/crates/ink/tests/ui/contract/fail/message-multiple-wildcard-selectors.stderr similarity index 76% rename from crates/lang/tests/ui/contract/fail/message-multiple-wildcard-selectors.stderr rename to crates/ink/tests/ui/contract/fail/message-multiple-wildcard-selectors.stderr index dad7a2df787..cdde97feb79 100644 --- a/crates/lang/tests/ui/contract/fail/message-multiple-wildcard-selectors.stderr +++ b/crates/ink/tests/ui/contract/fail/message-multiple-wildcard-selectors.stderr @@ -1,11 +1,11 @@ error: encountered ink! messages with overlapping wildcard selectors - --> tests/ui/contract/fail/message-multiple-wildcard-selectors.rs:18:9 + --> tests/ui/contract/fail/message-multiple-wildcard-selectors.rs:16:9 | -18 | pub fn message2(&self) {} +16 | pub fn message2(&self) {} | ^^^ error: first ink! message with overlapping wildcard selector here - --> tests/ui/contract/fail/message-multiple-wildcard-selectors.rs:15:9 + --> tests/ui/contract/fail/message-multiple-wildcard-selectors.rs:13:9 | -15 | pub fn message1(&self) {} +13 | pub fn message1(&self) {} | ^^^ diff --git a/crates/lang/tests/ui/contract/fail/message-returns-non-codec.rs b/crates/ink/tests/ui/contract/fail/message-returns-non-codec.rs similarity index 94% rename from crates/lang/tests/ui/contract/fail/message-returns-non-codec.rs rename to crates/ink/tests/ui/contract/fail/message-returns-non-codec.rs index cc0295f187a..2cf0025bd3b 100644 --- a/crates/lang/tests/ui/contract/fail/message-returns-non-codec.rs +++ b/crates/ink/tests/ui/contract/fail/message-returns-non-codec.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[derive(scale_info::TypeInfo)] diff --git a/crates/lang/tests/ui/contract/fail/message-returns-non-codec.stderr b/crates/ink/tests/ui/contract/fail/message-returns-non-codec.stderr similarity index 73% rename from crates/lang/tests/ui/contract/fail/message-returns-non-codec.stderr rename to crates/ink/tests/ui/contract/fail/message-returns-non-codec.stderr index a43868505cd..75b30b304a3 100644 --- a/crates/lang/tests/ui/contract/fail/message-returns-non-codec.stderr +++ b/crates/ink/tests/ui/contract/fail/message-returns-non-codec.stderr @@ -1,7 +1,7 @@ error[E0277]: the trait bound `NonCodecType: WrapperTypeEncode` is not satisfied - --> tests/ui/contract/fail/message-returns-non-codec.rs:18:34 + --> tests/ui/contract/fail/message-returns-non-codec.rs:16:34 | -18 | pub fn message(&self) -> NonCodecType { +16 | pub fn message(&self) -> NonCodecType { | ^^^^^^^^^^^^ the trait `WrapperTypeEncode` is not implemented for `NonCodecType` | = help: the following other types implement trait `WrapperTypeEncode`: @@ -22,9 +22,9 @@ note: required by a bound in `DispatchOutput` | ^^^^^^^^^^^^^ required by this bound in `DispatchOutput` error[E0277]: the trait bound `NonCodecType: WrapperTypeEncode` is not satisfied - --> tests/ui/contract/fail/message-returns-non-codec.rs:18:9 + --> tests/ui/contract/fail/message-returns-non-codec.rs:16:9 | -18 | pub fn message(&self) -> NonCodecType { +16 | pub fn message(&self) -> NonCodecType { | ^^^ the trait `WrapperTypeEncode` is not implemented for `NonCodecType` | = help: the following other types implement trait `WrapperTypeEncode`: @@ -44,14 +44,14 @@ note: required by a bound in `return_value` | R: scale::Encode, | ^^^^^^^^^^^^^ required by this bound in `return_value` -error[E0599]: the method `fire` exists for struct `ink_env::call::CallBuilder>, Set>>, Set>>`, but its trait bounds were not satisfied - --> tests/ui/contract/fail/message-returns-non-codec.rs:18:9 +error[E0599]: the method `fire` exists for struct `ink::ink_env::call::CallBuilder>, Set>>, Set>>`, but its trait bounds were not satisfied + --> tests/ui/contract/fail/message-returns-non-codec.rs:16:9 | -6 | pub struct NonCodecType; +4 | pub struct NonCodecType; | ------------------------ doesn't satisfy `NonCodecType: parity_scale_codec::Decode` ... -18 | pub fn message(&self) -> NonCodecType { - | ^^^ method cannot be called on `ink_env::call::CallBuilder>, Set>>, Set>>` due to unsatisfied trait bounds +16 | pub fn message(&self) -> NonCodecType { + | ^^^ method cannot be called on `ink::ink_env::call::CallBuilder>, Set>>, Set>>` due to unsatisfied trait bounds | = note: the following trait bounds were not satisfied: `NonCodecType: parity_scale_codec::Decode` diff --git a/crates/lang/tests/ui/contract/fail/message-returns-self.rs b/crates/ink/tests/ui/contract/fail/message-returns-self.rs similarity index 92% rename from crates/lang/tests/ui/contract/fail/message-returns-self.rs rename to crates/ink/tests/ui/contract/fail/message-returns-self.rs index a5f04da7854..75f5390ca39 100644 --- a/crates/lang/tests/ui/contract/fail/message-returns-self.rs +++ b/crates/ink/tests/ui/contract/fail/message-returns-self.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/message-returns-self.stderr b/crates/ink/tests/ui/contract/fail/message-returns-self.stderr new file mode 100644 index 00000000000..78aaac0e8d8 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/message-returns-self.stderr @@ -0,0 +1,5 @@ +error: ink! messages must not return `Self` + --> tests/ui/contract/fail/message-returns-self.rs:13:39 + | +13 | pub fn returns_self(&self) -> Self {} + | ^^^^ diff --git a/crates/lang/tests/ui/contract/fail/message-selector-and-wildcard-selector.rs b/crates/ink/tests/ui/contract/fail/message-selector-and-wildcard-selector.rs similarity index 93% rename from crates/lang/tests/ui/contract/fail/message-selector-and-wildcard-selector.rs rename to crates/ink/tests/ui/contract/fail/message-selector-and-wildcard-selector.rs index ce19e5d0de5..6cf8a3a5e4b 100644 --- a/crates/lang/tests/ui/contract/fail/message-selector-and-wildcard-selector.rs +++ b/crates/ink/tests/ui/contract/fail/message-selector-and-wildcard-selector.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/message-selector-and-wildcard-selector.stderr b/crates/ink/tests/ui/contract/fail/message-selector-and-wildcard-selector.stderr similarity index 70% rename from crates/lang/tests/ui/contract/fail/message-selector-and-wildcard-selector.stderr rename to crates/ink/tests/ui/contract/fail/message-selector-and-wildcard-selector.stderr index cf79612b7db..3a0cef0f7b2 100644 --- a/crates/lang/tests/ui/contract/fail/message-selector-and-wildcard-selector.stderr +++ b/crates/ink/tests/ui/contract/fail/message-selector-and-wildcard-selector.stderr @@ -1,11 +1,11 @@ error: encountered ink! attribute arguments with equal kinds - --> tests/ui/contract/fail/message-selector-and-wildcard-selector.rs:14:47 + --> tests/ui/contract/fail/message-selector-and-wildcard-selector.rs:12:47 | -14 | #[ink(message, selector = 0xCAFEBABA, selector = _)] +12 | #[ink(message, selector = 0xCAFEBABA, selector = _)] | ^^^^^^^^ error: first equal ink! attribute argument with equal kind here - --> tests/ui/contract/fail/message-selector-and-wildcard-selector.rs:14:24 + --> tests/ui/contract/fail/message-selector-and-wildcard-selector.rs:12:24 | -14 | #[ink(message, selector = 0xCAFEBABA, selector = _)] +12 | #[ink(message, selector = 0xCAFEBABA, selector = _)] | ^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/message-selector-invalid-type-01.rs b/crates/ink/tests/ui/contract/fail/message-selector-invalid-type-01.rs similarity index 93% rename from crates/lang/tests/ui/contract/fail/message-selector-invalid-type-01.rs rename to crates/ink/tests/ui/contract/fail/message-selector-invalid-type-01.rs index 405486ce243..500d780a0ce 100644 --- a/crates/lang/tests/ui/contract/fail/message-selector-invalid-type-01.rs +++ b/crates/ink/tests/ui/contract/fail/message-selector-invalid-type-01.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/message-selector-invalid-type-01.stderr b/crates/ink/tests/ui/contract/fail/message-selector-invalid-type-01.stderr similarity index 81% rename from crates/lang/tests/ui/contract/fail/message-selector-invalid-type-01.stderr rename to crates/ink/tests/ui/contract/fail/message-selector-invalid-type-01.stderr index 3660e33fbe2..967256cb73f 100644 --- a/crates/lang/tests/ui/contract/fail/message-selector-invalid-type-01.stderr +++ b/crates/ink/tests/ui/contract/fail/message-selector-invalid-type-01.stderr @@ -1,5 +1,5 @@ error: #[ink(selector = ..)] attributes with string inputs are deprecated. use an integer instead, e.g. #[ink(selector = 1)] or #[ink(selector = 0xC0DECAFE)]. - --> tests/ui/contract/fail/message-selector-invalid-type-01.rs:14:24 + --> tests/ui/contract/fail/message-selector-invalid-type-01.rs:12:24 | -14 | #[ink(message, selector = "0xC0DECAFE")] +12 | #[ink(message, selector = "0xC0DECAFE")] | ^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/message-selector-invalid-type-02.rs b/crates/ink/tests/ui/contract/fail/message-selector-invalid-type-02.rs similarity index 93% rename from crates/lang/tests/ui/contract/fail/message-selector-invalid-type-02.rs rename to crates/ink/tests/ui/contract/fail/message-selector-invalid-type-02.rs index 2c9c8a3dc5d..6f06ddf5f22 100644 --- a/crates/lang/tests/ui/contract/fail/message-selector-invalid-type-02.rs +++ b/crates/ink/tests/ui/contract/fail/message-selector-invalid-type-02.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/message-selector-invalid-type-02.stderr b/crates/ink/tests/ui/contract/fail/message-selector-invalid-type-02.stderr similarity index 78% rename from crates/lang/tests/ui/contract/fail/message-selector-invalid-type-02.stderr rename to crates/ink/tests/ui/contract/fail/message-selector-invalid-type-02.stderr index 2924628b6fc..9a3d99c5679 100644 --- a/crates/lang/tests/ui/contract/fail/message-selector-invalid-type-02.stderr +++ b/crates/ink/tests/ui/contract/fail/message-selector-invalid-type-02.stderr @@ -1,5 +1,5 @@ error: expected 4-digit hexcode for `selector` argument, e.g. #[ink(selector = 0xC0FEBABE] - --> tests/ui/contract/fail/message-selector-invalid-type-02.rs:14:24 + --> tests/ui/contract/fail/message-selector-invalid-type-02.rs:12:24 | -14 | #[ink(message, selector = true)] +12 | #[ink(message, selector = true)] | ^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/message-selector-missing-arg.rs b/crates/ink/tests/ui/contract/fail/message-selector-missing-arg.rs similarity index 92% rename from crates/lang/tests/ui/contract/fail/message-selector-missing-arg.rs rename to crates/ink/tests/ui/contract/fail/message-selector-missing-arg.rs index e7c9697ae82..ee63366754c 100644 --- a/crates/lang/tests/ui/contract/fail/message-selector-missing-arg.rs +++ b/crates/ink/tests/ui/contract/fail/message-selector-missing-arg.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/message-selector-missing-arg.stderr b/crates/ink/tests/ui/contract/fail/message-selector-missing-arg.stderr similarity index 60% rename from crates/lang/tests/ui/contract/fail/message-selector-missing-arg.stderr rename to crates/ink/tests/ui/contract/fail/message-selector-missing-arg.stderr index 2e5d84a55c8..289105dedd6 100644 --- a/crates/lang/tests/ui/contract/fail/message-selector-missing-arg.stderr +++ b/crates/ink/tests/ui/contract/fail/message-selector-missing-arg.stderr @@ -1,5 +1,5 @@ error: encountered #[ink(selector)] that is missing its u32 parameter. Did you mean #[ink(selector = value: u32)] ? - --> tests/ui/contract/fail/message-selector-missing-arg.rs:14:24 + --> tests/ui/contract/fail/message-selector-missing-arg.rs:12:24 | -14 | #[ink(message, selector)] +12 | #[ink(message, selector)] | ^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-01.rs b/crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-01.rs similarity index 92% rename from crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-01.rs rename to crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-01.rs index 518f66e75ba..23c950da488 100644 --- a/crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-01.rs +++ b/crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-01.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-01.stderr b/crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-01.stderr similarity index 76% rename from crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-01.stderr rename to crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-01.stderr index 881158eae5e..a33937b0861 100644 --- a/crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-01.stderr +++ b/crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-01.stderr @@ -1,5 +1,5 @@ error: ink! messages must have `&self` or `&mut self` receiver - --> tests/ui/contract/fail/message-self-receiver-invalid-01.rs:15:24 + --> tests/ui/contract/fail/message-self-receiver-invalid-01.rs:13:24 | -15 | pub fn message(this: &Self) {} +13 | pub fn message(this: &Self) {} | ^^^^ diff --git a/crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-02.rs b/crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-02.rs similarity index 92% rename from crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-02.rs rename to crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-02.rs index 94ec0c3fb55..b3470c1c774 100644 --- a/crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-02.rs +++ b/crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-02.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-02.stderr b/crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-02.stderr similarity index 75% rename from crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-02.stderr rename to crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-02.stderr index 6a78845dbb5..74037923929 100644 --- a/crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-02.stderr +++ b/crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-02.stderr @@ -1,5 +1,5 @@ error: ink! messages must have `&self` or `&mut self` receiver - --> tests/ui/contract/fail/message-self-receiver-invalid-02.rs:15:24 + --> tests/ui/contract/fail/message-self-receiver-invalid-02.rs:13:24 | -15 | pub fn message(this: &mut Self) {} +13 | pub fn message(this: &mut Self) {} | ^^^^ diff --git a/crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-03.rs b/crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-03.rs similarity index 92% rename from crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-03.rs rename to crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-03.rs index c30aa771cc9..9fe4f11023e 100644 --- a/crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-03.rs +++ b/crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-03.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-03.stderr b/crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-03.stderr similarity index 78% rename from crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-03.stderr rename to crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-03.stderr index 0c95e3170d5..6477e778dc0 100644 --- a/crates/lang/tests/ui/contract/fail/message-self-receiver-invalid-03.stderr +++ b/crates/ink/tests/ui/contract/fail/message-self-receiver-invalid-03.stderr @@ -1,5 +1,5 @@ error: ink! messages must have `&self` or `&mut self` receiver - --> tests/ui/contract/fail/message-self-receiver-invalid-03.rs:15:24 + --> tests/ui/contract/fail/message-self-receiver-invalid-03.rs:13:24 | -15 | pub fn message(self) {} +13 | pub fn message(self) {} | ^^^^ diff --git a/crates/lang/tests/ui/contract/fail/message-self-receiver-missing.rs b/crates/ink/tests/ui/contract/fail/message-self-receiver-missing.rs similarity index 92% rename from crates/lang/tests/ui/contract/fail/message-self-receiver-missing.rs rename to crates/ink/tests/ui/contract/fail/message-self-receiver-missing.rs index 552c91c143f..182c508fe54 100644 --- a/crates/lang/tests/ui/contract/fail/message-self-receiver-missing.rs +++ b/crates/ink/tests/ui/contract/fail/message-self-receiver-missing.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/message-self-receiver-missing.stderr b/crates/ink/tests/ui/contract/fail/message-self-receiver-missing.stderr new file mode 100644 index 00000000000..6676399dc6f --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/message-self-receiver-missing.stderr @@ -0,0 +1,5 @@ +error: ink! messages must have `&self` or `&mut self` receiver + --> tests/ui/contract/fail/message-self-receiver-missing.rs:12:9 + | +12 | #[ink(message)] + | ^ diff --git a/crates/lang/tests/ui/contract/fail/message-unknown-property.rs b/crates/ink/tests/ui/contract/fail/message-unknown-property.rs similarity index 93% rename from crates/lang/tests/ui/contract/fail/message-unknown-property.rs rename to crates/ink/tests/ui/contract/fail/message-unknown-property.rs index e8e51eb8e47..375088ce8da 100644 --- a/crates/lang/tests/ui/contract/fail/message-unknown-property.rs +++ b/crates/ink/tests/ui/contract/fail/message-unknown-property.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/message-unknown-property.stderr b/crates/ink/tests/ui/contract/fail/message-unknown-property.stderr new file mode 100644 index 00000000000..b265c0f3d16 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/message-unknown-property.stderr @@ -0,0 +1,5 @@ +error: unknown ink! attribute (path) + --> tests/ui/contract/fail/message-unknown-property.rs:13:15 + | +13 | #[ink(unknown_marker)] + | ^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/module-missing-constructor.rs b/crates/ink/tests/ui/contract/fail/module-missing-constructor.rs similarity index 89% rename from crates/lang/tests/ui/contract/fail/module-missing-constructor.rs rename to crates/ink/tests/ui/contract/fail/module-missing-constructor.rs index e259a4d1420..84641ad4764 100644 --- a/crates/lang/tests/ui/contract/fail/module-missing-constructor.rs +++ b/crates/ink/tests/ui/contract/fail/module-missing-constructor.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/module-missing-constructor.stderr b/crates/ink/tests/ui/contract/fail/module-missing-constructor.stderr new file mode 100644 index 00000000000..0ba6d47f661 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/module-missing-constructor.stderr @@ -0,0 +1,5 @@ +error: missing ink! constructor + --> tests/ui/contract/fail/module-missing-constructor.rs:2:1 + | +2 | mod contract { + | ^^^ diff --git a/crates/lang/tests/ui/contract/fail/module-missing-message.rs b/crates/ink/tests/ui/contract/fail/module-missing-message.rs similarity index 90% rename from crates/lang/tests/ui/contract/fail/module-missing-message.rs rename to crates/ink/tests/ui/contract/fail/module-missing-message.rs index 6c0ad2a14ec..a6216b40b79 100644 --- a/crates/lang/tests/ui/contract/fail/module-missing-message.rs +++ b/crates/ink/tests/ui/contract/fail/module-missing-message.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/module-missing-message.stderr b/crates/ink/tests/ui/contract/fail/module-missing-message.stderr new file mode 100644 index 00000000000..2d0cd3535df --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/module-missing-message.stderr @@ -0,0 +1,5 @@ +error: missing ink! message + --> tests/ui/contract/fail/module-missing-message.rs:2:1 + | +2 | mod contract { + | ^^^ diff --git a/crates/lang/tests/ui/contract/fail/module-missing-storage.rs b/crates/ink/tests/ui/contract/fail/module-missing-storage.rs similarity index 91% rename from crates/lang/tests/ui/contract/fail/module-missing-storage.rs rename to crates/ink/tests/ui/contract/fail/module-missing-storage.rs index 02f0990249d..2069cc27434 100644 --- a/crates/lang/tests/ui/contract/fail/module-missing-storage.rs +++ b/crates/ink/tests/ui/contract/fail/module-missing-storage.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { // #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/module-missing-storage.stderr b/crates/ink/tests/ui/contract/fail/module-missing-storage.stderr new file mode 100644 index 00000000000..06fd1620b45 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/module-missing-storage.stderr @@ -0,0 +1,5 @@ +error: missing ink! storage struct + --> tests/ui/contract/fail/module-missing-storage.rs:2:1 + | +2 | mod contract { + | ^^^ diff --git a/crates/lang/tests/ui/contract/fail/module-multiple-storages.rs b/crates/ink/tests/ui/contract/fail/module-multiple-storages.rs similarity index 95% rename from crates/lang/tests/ui/contract/fail/module-multiple-storages.rs rename to crates/ink/tests/ui/contract/fail/module-multiple-storages.rs index 4a5f2ad816c..1299bac5d27 100644 --- a/crates/lang/tests/ui/contract/fail/module-multiple-storages.rs +++ b/crates/ink/tests/ui/contract/fail/module-multiple-storages.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/module-multiple-storages.stderr b/crates/ink/tests/ui/contract/fail/module-multiple-storages.stderr new file mode 100644 index 00000000000..da92152db68 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/module-multiple-storages.stderr @@ -0,0 +1,17 @@ +error: encountered multiple ink! storage structs, expected exactly one + --> tests/ui/contract/fail/module-multiple-storages.rs:2:1 + | +2 | mod contract { + | ^^^ + +error: ink! storage struct here + --> tests/ui/contract/fail/module-multiple-storages.rs:4:5 + | +4 | pub struct Contract {} + | ^^^ + +error: ink! storage struct here + --> tests/ui/contract/fail/module-multiple-storages.rs:17:5 + | +17 | pub struct Contract2 {} + | ^^^ diff --git a/crates/lang/tests/ui/contract/fail/module-use-forbidden-idents.rs b/crates/ink/tests/ui/contract/fail/module-use-forbidden-idents.rs similarity index 95% rename from crates/lang/tests/ui/contract/fail/module-use-forbidden-idents.rs rename to crates/ink/tests/ui/contract/fail/module-use-forbidden-idents.rs index 61416bf8776..b3076b6cc5e 100644 --- a/crates/lang/tests/ui/contract/fail/module-use-forbidden-idents.rs +++ b/crates/ink/tests/ui/contract/fail/module-use-forbidden-idents.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod __ink_contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/fail/module-use-forbidden-idents.stderr b/crates/ink/tests/ui/contract/fail/module-use-forbidden-idents.stderr similarity index 53% rename from crates/lang/tests/ui/contract/fail/module-use-forbidden-idents.stderr rename to crates/ink/tests/ui/contract/fail/module-use-forbidden-idents.stderr index 2a326233af2..1ff16a1a3e5 100644 --- a/crates/lang/tests/ui/contract/fail/module-use-forbidden-idents.stderr +++ b/crates/ink/tests/ui/contract/fail/module-use-forbidden-idents.stderr @@ -1,83 +1,83 @@ error: encountered invalid identifier starting with __ink_ - --> tests/ui/contract/fail/module-use-forbidden-idents.rs:4:5 + --> tests/ui/contract/fail/module-use-forbidden-idents.rs:2:5 | -4 | mod __ink_contract { +2 | mod __ink_contract { | ^^^^^^^^^^^^^^ error: encountered invalid identifier starting with __ink_ - --> tests/ui/contract/fail/module-use-forbidden-idents.rs:6:16 + --> tests/ui/contract/fail/module-use-forbidden-idents.rs:4:16 | -6 | pub struct __ink_Contract {} +4 | pub struct __ink_Contract {} | ^^^^^^^^^^^^^^ error: encountered invalid identifier starting with __ink_ - --> tests/ui/contract/fail/module-use-forbidden-idents.rs:8:11 + --> tests/ui/contract/fail/module-use-forbidden-idents.rs:6:11 | -8 | const __ink_CONST: () = (); +6 | const __ink_CONST: () = (); | ^^^^^^^^^^^ error: encountered invalid identifier starting with __ink_ - --> tests/ui/contract/fail/module-use-forbidden-idents.rs:9:12 + --> tests/ui/contract/fail/module-use-forbidden-idents.rs:7:12 | -9 | static __ink_STATIC: () = (); +7 | static __ink_STATIC: () = (); | ^^^^^^^^^^^^ error: encountered invalid identifier starting with __ink_ - --> tests/ui/contract/fail/module-use-forbidden-idents.rs:10:10 - | -10 | type __ink_Type = (); - | ^^^^^^^^^^ + --> tests/ui/contract/fail/module-use-forbidden-idents.rs:8:10 + | +8 | type __ink_Type = (); + | ^^^^^^^^^^ error: encountered invalid identifier starting with __ink_ - --> tests/ui/contract/fail/module-use-forbidden-idents.rs:12:10 + --> tests/ui/contract/fail/module-use-forbidden-idents.rs:10:10 | -12 | impl __ink_Contract { +10 | impl __ink_Contract { | ^^^^^^^^^^^^^^ error: encountered invalid identifier starting with __ink_ - --> tests/ui/contract/fail/module-use-forbidden-idents.rs:14:16 + --> tests/ui/contract/fail/module-use-forbidden-idents.rs:12:16 | -14 | pub fn __ink_constructor(__ink_input: __ink_Type) -> Self { +12 | pub fn __ink_constructor(__ink_input: __ink_Type) -> Self { | ^^^^^^^^^^^^^^^^^ error: encountered invalid identifier starting with __ink_ - --> tests/ui/contract/fail/module-use-forbidden-idents.rs:14:34 + --> tests/ui/contract/fail/module-use-forbidden-idents.rs:12:34 | -14 | pub fn __ink_constructor(__ink_input: __ink_Type) -> Self { +12 | pub fn __ink_constructor(__ink_input: __ink_Type) -> Self { | ^^^^^^^^^^^ error: encountered invalid identifier starting with __ink_ - --> tests/ui/contract/fail/module-use-forbidden-idents.rs:14:47 + --> tests/ui/contract/fail/module-use-forbidden-idents.rs:12:47 | -14 | pub fn __ink_constructor(__ink_input: __ink_Type) -> Self { +12 | pub fn __ink_constructor(__ink_input: __ink_Type) -> Self { | ^^^^^^^^^^ error: encountered invalid identifier starting with __ink_ - --> tests/ui/contract/fail/module-use-forbidden-idents.rs:19:16 + --> tests/ui/contract/fail/module-use-forbidden-idents.rs:17:16 | -19 | pub fn __ink_message(&self, __ink_input: __ink_Type) -> __ink_Type { +17 | pub fn __ink_message(&self, __ink_input: __ink_Type) -> __ink_Type { | ^^^^^^^^^^^^^ error: encountered invalid identifier starting with __ink_ - --> tests/ui/contract/fail/module-use-forbidden-idents.rs:19:37 + --> tests/ui/contract/fail/module-use-forbidden-idents.rs:17:37 | -19 | pub fn __ink_message(&self, __ink_input: __ink_Type) -> __ink_Type { +17 | pub fn __ink_message(&self, __ink_input: __ink_Type) -> __ink_Type { | ^^^^^^^^^^^ error: encountered invalid identifier starting with __ink_ - --> tests/ui/contract/fail/module-use-forbidden-idents.rs:19:50 + --> tests/ui/contract/fail/module-use-forbidden-idents.rs:17:50 | -19 | pub fn __ink_message(&self, __ink_input: __ink_Type) -> __ink_Type { +17 | pub fn __ink_message(&self, __ink_input: __ink_Type) -> __ink_Type { | ^^^^^^^^^^ error: encountered invalid identifier starting with __ink_ - --> tests/ui/contract/fail/module-use-forbidden-idents.rs:19:65 + --> tests/ui/contract/fail/module-use-forbidden-idents.rs:17:65 | -19 | pub fn __ink_message(&self, __ink_input: __ink_Type) -> __ink_Type { +17 | pub fn __ink_message(&self, __ink_input: __ink_Type) -> __ink_Type { | ^^^^^^^^^^ error: encountered invalid identifier starting with __ink_ - --> tests/ui/contract/fail/module-use-forbidden-idents.rs:20:17 + --> tests/ui/contract/fail/module-use-forbidden-idents.rs:18:17 | -20 | let __ink_first = (); +18 | let __ink_first = (); | ^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/storage-conflicting-event.rs b/crates/ink/tests/ui/contract/fail/storage-conflicting-event.rs similarity index 93% rename from crates/lang/tests/ui/contract/fail/storage-conflicting-event.rs rename to crates/ink/tests/ui/contract/fail/storage-conflicting-event.rs index af8635e42c2..897c6ae8d3f 100644 --- a/crates/lang/tests/ui/contract/fail/storage-conflicting-event.rs +++ b/crates/ink/tests/ui/contract/fail/storage-conflicting-event.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/storage-conflicting-event.stderr b/crates/ink/tests/ui/contract/fail/storage-conflicting-event.stderr new file mode 100644 index 00000000000..b4095f6eda2 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/storage-conflicting-event.stderr @@ -0,0 +1,5 @@ +error: encountered conflicting ink! attribute argument + --> tests/ui/contract/fail/storage-conflicting-event.rs:4:11 + | +4 | #[ink(event)] + | ^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/storage-unknown-marker.rs b/crates/ink/tests/ui/contract/fail/storage-unknown-marker.rs similarity index 93% rename from crates/lang/tests/ui/contract/fail/storage-unknown-marker.rs rename to crates/ink/tests/ui/contract/fail/storage-unknown-marker.rs index 748544af783..d2b33c3c300 100644 --- a/crates/lang/tests/ui/contract/fail/storage-unknown-marker.rs +++ b/crates/ink/tests/ui/contract/fail/storage-unknown-marker.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/ink/tests/ui/contract/fail/storage-unknown-marker.stderr b/crates/ink/tests/ui/contract/fail/storage-unknown-marker.stderr new file mode 100644 index 00000000000..0741f764fd8 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/storage-unknown-marker.stderr @@ -0,0 +1,5 @@ +error: unknown ink! attribute (path) + --> tests/ui/contract/fail/storage-unknown-marker.rs:4:11 + | +4 | #[ink(unknown_or_unsupported)] + | ^^^^^^^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/trait-impl-namespace-invalid.rs b/crates/ink/tests/ui/contract/fail/trait-impl-namespace-invalid.rs similarity index 95% rename from crates/lang/tests/ui/contract/fail/trait-impl-namespace-invalid.rs rename to crates/ink/tests/ui/contract/fail/trait-impl-namespace-invalid.rs index b344b011ee8..dd314e3c756 100644 --- a/crates/lang/tests/ui/contract/fail/trait-impl-namespace-invalid.rs +++ b/crates/ink/tests/ui/contract/fail/trait-impl-namespace-invalid.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/ink/tests/ui/contract/fail/trait-impl-namespace-invalid.stderr b/crates/ink/tests/ui/contract/fail/trait-impl-namespace-invalid.stderr new file mode 100644 index 00000000000..86ca398df1e --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/trait-impl-namespace-invalid.stderr @@ -0,0 +1,5 @@ +error: namespace ink! property is not allowed on ink! trait implementation blocks + --> tests/ui/contract/fail/trait-impl-namespace-invalid.rs:21:5 + | +21 | #[ink(namespace = "namespace")] + | ^ diff --git a/crates/lang/tests/ui/contract/fail/trait-message-payable-mismatch.rs b/crates/ink/tests/ui/contract/fail/trait-message-payable-mismatch.rs similarity index 95% rename from crates/lang/tests/ui/contract/fail/trait-message-payable-mismatch.rs rename to crates/ink/tests/ui/contract/fail/trait-message-payable-mismatch.rs index 163d3c194bb..0acc8494869 100644 --- a/crates/lang/tests/ui/contract/fail/trait-message-payable-mismatch.rs +++ b/crates/ink/tests/ui/contract/fail/trait-message-payable-mismatch.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/lang/tests/ui/contract/fail/trait-message-payable-mismatch.stderr b/crates/ink/tests/ui/contract/fail/trait-message-payable-mismatch.stderr similarity index 87% rename from crates/lang/tests/ui/contract/fail/trait-message-payable-mismatch.stderr rename to crates/ink/tests/ui/contract/fail/trait-message-payable-mismatch.stderr index 79c50458870..15202a2c81e 100644 --- a/crates/lang/tests/ui/contract/fail/trait-message-payable-mismatch.stderr +++ b/crates/ink/tests/ui/contract/fail/trait-message-payable-mismatch.stderr @@ -1,7 +1,7 @@ error[E0308]: mismatched types - --> tests/ui/contract/fail/trait-message-payable-mismatch.rs:25:9 + --> tests/ui/contract/fail/trait-message-payable-mismatch.rs:23:9 | -25 | fn message(&self) {} +23 | fn message(&self) {} | ^^ expected `false`, found `true` | = note: expected struct `TraitMessagePayable` diff --git a/crates/lang/tests/ui/contract/fail/trait-message-selector-mismatch.rs b/crates/ink/tests/ui/contract/fail/trait-message-selector-mismatch.rs similarity index 95% rename from crates/lang/tests/ui/contract/fail/trait-message-selector-mismatch.rs rename to crates/ink/tests/ui/contract/fail/trait-message-selector-mismatch.rs index c342ec457b8..9ef7bae22ce 100644 --- a/crates/lang/tests/ui/contract/fail/trait-message-selector-mismatch.rs +++ b/crates/ink/tests/ui/contract/fail/trait-message-selector-mismatch.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message, selector = 1)] diff --git a/crates/lang/tests/ui/contract/fail/trait-message-selector-mismatch.stderr b/crates/ink/tests/ui/contract/fail/trait-message-selector-mismatch.stderr similarity index 87% rename from crates/lang/tests/ui/contract/fail/trait-message-selector-mismatch.stderr rename to crates/ink/tests/ui/contract/fail/trait-message-selector-mismatch.stderr index 26c441d140c..3c7fcaddec0 100644 --- a/crates/lang/tests/ui/contract/fail/trait-message-selector-mismatch.stderr +++ b/crates/ink/tests/ui/contract/fail/trait-message-selector-mismatch.stderr @@ -1,7 +1,7 @@ error[E0308]: mismatched types - --> tests/ui/contract/fail/trait-message-selector-mismatch.rs:25:9 + --> tests/ui/contract/fail/trait-message-selector-mismatch.rs:23:9 | -25 | fn message(&self) {} +23 | fn message(&self) {} | ^^ expected `1_u32`, found `2_u32` | = note: expected struct `TraitMessageSelector<1_u32>` diff --git a/crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-1.rs b/crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-1.rs similarity index 91% rename from crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-1.rs rename to crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-1.rs index b23b5973252..1f1cd9ef636 100644 --- a/crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-1.rs +++ b/crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-1.rs @@ -1,6 +1,4 @@ mod foo1 { - use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] @@ -9,8 +7,6 @@ mod foo1 { } mod foo2 { - use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] @@ -18,8 +14,6 @@ mod foo2 { } } -use ink_lang as ink; - #[ink::contract] pub mod contract { use super::{ diff --git a/crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-1.stderr b/crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-1.stderr new file mode 100644 index 00000000000..bf8af3249e5 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-1.stderr @@ -0,0 +1,17 @@ +error[E0119]: conflicting implementations of trait `ink::reflect::DispatchableMessageInfo<1083895717_u32>` for type `contract::Contract` + --> tests/ui/contract/fail/trait-message-selector-overlap-1.rs:41:9 + | +36 | fn message(&self) {} + | -- first implementation here +... +41 | fn message(&self) {} + | ^^ conflicting implementation for `contract::Contract` + +error[E0119]: conflicting implementations of trait `ink::codegen::TraitCallForwarderFor<1083895717_u32>` for type `contract::_::CallBuilder` + --> tests/ui/contract/fail/trait-message-selector-overlap-1.rs:39:5 + | +34 | impl TraitDefinition1 for Contract { + | ---- first implementation here +... +39 | impl TraitDefinition2 for Contract { + | ^^^^ conflicting implementation for `contract::_::CallBuilder` diff --git a/crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-2.rs b/crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-2.rs similarity index 92% rename from crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-2.rs rename to crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-2.rs index 4c4f5bc1013..5d4a6cb0c44 100644 --- a/crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-2.rs +++ b/crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-2.rs @@ -1,6 +1,4 @@ mod foo1 { - use ink_lang as ink; - #[ink::trait_definition(namespace = "same")] pub trait TraitDefinition { #[ink(message)] @@ -9,8 +7,6 @@ mod foo1 { } mod foo2 { - use ink_lang as ink; - #[ink::trait_definition(namespace = "same")] pub trait TraitDefinition { #[ink(message)] @@ -18,8 +14,6 @@ mod foo2 { } } -use ink_lang as ink; - #[ink::contract] pub mod contract { use super::{ diff --git a/crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-2.stderr b/crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-2.stderr new file mode 100644 index 00000000000..88be86db9b8 --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-2.stderr @@ -0,0 +1,17 @@ +error[E0119]: conflicting implementations of trait `ink::reflect::DispatchableMessageInfo<1518209067_u32>` for type `contract::Contract` + --> tests/ui/contract/fail/trait-message-selector-overlap-2.rs:41:9 + | +36 | fn message(&self) {} + | -- first implementation here +... +41 | fn message(&self) {} + | ^^ conflicting implementation for `contract::Contract` + +error[E0119]: conflicting implementations of trait `ink::codegen::TraitCallForwarderFor<1518209067_u32>` for type `contract::_::CallBuilder` + --> tests/ui/contract/fail/trait-message-selector-overlap-2.rs:39:5 + | +34 | impl TraitDefinition1 for Contract { + | ---- first implementation here +... +39 | impl TraitDefinition2 for Contract { + | ^^^^ conflicting implementation for `contract::_::CallBuilder` diff --git a/crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-3.rs b/crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-3.rs similarity index 91% rename from crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-3.rs rename to crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-3.rs index 0594163daf6..b327a3b5d00 100644 --- a/crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-3.rs +++ b/crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-3.rs @@ -1,6 +1,4 @@ mod foo1 { - use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition1 { #[ink(message, selector = 42)] @@ -9,8 +7,6 @@ mod foo1 { } mod foo2 { - use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition2 { #[ink(message, selector = 42)] @@ -18,8 +14,6 @@ mod foo2 { } } -use ink_lang as ink; - #[ink::contract] pub mod contract { use super::{ diff --git a/crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-3.stderr b/crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-3.stderr new file mode 100644 index 00000000000..6884a047d6e --- /dev/null +++ b/crates/ink/tests/ui/contract/fail/trait-message-selector-overlap-3.stderr @@ -0,0 +1,17 @@ +error[E0119]: conflicting implementations of trait `ink::reflect::DispatchableMessageInfo<42_u32>` for type `contract::Contract` + --> tests/ui/contract/fail/trait-message-selector-overlap-3.rs:41:9 + | +36 | fn message1(&self) {} + | -- first implementation here +... +41 | fn message2(&self) {} + | ^^ conflicting implementation for `contract::Contract` + +error[E0119]: conflicting implementations of trait `ink::codegen::TraitCallForwarderFor<42_u32>` for type `contract::_::CallBuilder` + --> tests/ui/contract/fail/trait-message-selector-overlap-3.rs:39:5 + | +34 | impl TraitDefinition1 for Contract { + | ---- first implementation here +... +39 | impl TraitDefinition2 for Contract { + | ^^^^ conflicting implementation for `contract::_::CallBuilder` diff --git a/crates/lang/tests/ui/contract/fail/trait-message-wildcard-selector.rs b/crates/ink/tests/ui/contract/fail/trait-message-wildcard-selector.rs similarity index 91% rename from crates/lang/tests/ui/contract/fail/trait-message-wildcard-selector.rs rename to crates/ink/tests/ui/contract/fail/trait-message-wildcard-selector.rs index e5b2d161ee2..6ade19e6e97 100644 --- a/crates/lang/tests/ui/contract/fail/trait-message-wildcard-selector.rs +++ b/crates/ink/tests/ui/contract/fail/trait-message-wildcard-selector.rs @@ -1,6 +1,4 @@ mod foo { - use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message, selector = _)] @@ -8,8 +6,6 @@ mod foo { } } -use ink_lang as ink; - #[ink::contract] pub mod contract { use super::foo::TraitDefinition; diff --git a/crates/lang/tests/ui/contract/fail/trait-message-wildcard-selector.stderr b/crates/ink/tests/ui/contract/fail/trait-message-wildcard-selector.stderr similarity index 63% rename from crates/lang/tests/ui/contract/fail/trait-message-wildcard-selector.stderr rename to crates/ink/tests/ui/contract/fail/trait-message-wildcard-selector.stderr index 2bc0c5dbcaa..e954985afec 100644 --- a/crates/lang/tests/ui/contract/fail/trait-message-wildcard-selector.stderr +++ b/crates/ink/tests/ui/contract/fail/trait-message-wildcard-selector.stderr @@ -1,17 +1,17 @@ error: encountered conflicting ink! attribute argument - --> tests/ui/contract/fail/trait-message-wildcard-selector.rs:6:24 + --> tests/ui/contract/fail/trait-message-wildcard-selector.rs:4:24 | -6 | #[ink(message, selector = _)] +4 | #[ink(message, selector = _)] | ^^^^^^^^ error: wildcard selectors are only supported for inherent ink! messages or constructors, not for traits. - --> tests/ui/contract/fail/trait-message-wildcard-selector.rs:6:24 + --> tests/ui/contract/fail/trait-message-wildcard-selector.rs:4:24 | -6 | #[ink(message, selector = _)] +4 | #[ink(message, selector = _)] | ^^^^^^^^ error[E0432]: unresolved import `super::foo::TraitDefinition` - --> tests/ui/contract/fail/trait-message-wildcard-selector.rs:15:9 + --> tests/ui/contract/fail/trait-message-wildcard-selector.rs:11:9 | -15 | use super::foo::TraitDefinition; +11 | use super::foo::TraitDefinition; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `TraitDefinition` in `foo` diff --git a/crates/lang/tests/ui/contract/pass/config-custom-env.rs b/crates/ink/tests/ui/contract/pass/config-custom-env.rs similarity index 96% rename from crates/lang/tests/ui/contract/pass/config-custom-env.rs rename to crates/ink/tests/ui/contract/pass/config-custom-env.rs index 90958764ac1..6feb97c05ba 100644 --- a/crates/lang/tests/ui/contract/pass/config-custom-env.rs +++ b/crates/ink/tests/ui/contract/pass/config-custom-env.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - pub struct CustomEnv; impl ink_env::Environment for CustomEnv { diff --git a/crates/lang/tests/ui/contract/pass/config-keep-attr.rs b/crates/ink/tests/ui/contract/pass/config-keep-attr.rs similarity index 93% rename from crates/lang/tests/ui/contract/pass/config-keep-attr.rs rename to crates/ink/tests/ui/contract/pass/config-keep-attr.rs index 22398cdbd4d..768424b482a 100644 --- a/crates/lang/tests/ui/contract/pass/config-keep-attr.rs +++ b/crates/ink/tests/ui/contract/pass/config-keep-attr.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract(keep_attr = "foo, bar")] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/constructor-many-inputs.rs b/crates/ink/tests/ui/contract/pass/constructor-many-inputs.rs similarity index 99% rename from crates/lang/tests/ui/contract/pass/constructor-many-inputs.rs rename to crates/ink/tests/ui/contract/pass/constructor-many-inputs.rs index e1cc2c7af96..a70b4d5bfc7 100644 --- a/crates/lang/tests/ui/contract/pass/constructor-many-inputs.rs +++ b/crates/ink/tests/ui/contract/pass/constructor-many-inputs.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/constructor-non-payable-multiple.rs b/crates/ink/tests/ui/contract/pass/constructor-non-payable-multiple.rs similarity index 68% rename from crates/lang/tests/ui/contract/pass/constructor-non-payable-multiple.rs rename to crates/ink/tests/ui/contract/pass/constructor-non-payable-multiple.rs index 941affc569d..39ba033c2f0 100644 --- a/crates/lang/tests/ui/contract/pass/constructor-non-payable-multiple.rs +++ b/crates/ink/tests/ui/contract/pass/constructor-non-payable-multiple.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] @@ -24,6 +22,6 @@ mod contract { use contract::Contract; fn main() { - assert!(!>::PAYABLE); - assert!(!>::PAYABLE); + assert!(!>::PAYABLE); + assert!(!>::PAYABLE); } diff --git a/crates/lang/tests/ui/contract/pass/constructor-non-payable.rs b/crates/ink/tests/ui/contract/pass/constructor-non-payable.rs similarity index 73% rename from crates/lang/tests/ui/contract/pass/constructor-non-payable.rs rename to crates/ink/tests/ui/contract/pass/constructor-non-payable.rs index 08f2306ad46..afb751f1073 100644 --- a/crates/lang/tests/ui/contract/pass/constructor-non-payable.rs +++ b/crates/ink/tests/ui/contract/pass/constructor-non-payable.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] @@ -19,5 +17,5 @@ mod contract { use contract::Contract; fn main() { - assert!(!>::PAYABLE); + assert!(!>::PAYABLE); } diff --git a/crates/lang/tests/ui/contract/pass/constructor-payable-multiple.rs b/crates/ink/tests/ui/contract/pass/constructor-payable-multiple.rs similarity index 69% rename from crates/lang/tests/ui/contract/pass/constructor-payable-multiple.rs rename to crates/ink/tests/ui/contract/pass/constructor-payable-multiple.rs index 054995fd5b8..bad4dd1adcb 100644 --- a/crates/lang/tests/ui/contract/pass/constructor-payable-multiple.rs +++ b/crates/ink/tests/ui/contract/pass/constructor-payable-multiple.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] @@ -24,6 +22,6 @@ mod contract { use contract::Contract; fn main() { - assert!(>::PAYABLE); - assert!(>::PAYABLE); + assert!(>::PAYABLE); + assert!(>::PAYABLE); } diff --git a/crates/lang/tests/ui/contract/pass/constructor-payable.rs b/crates/ink/tests/ui/contract/pass/constructor-payable.rs similarity index 74% rename from crates/lang/tests/ui/contract/pass/constructor-payable.rs rename to crates/ink/tests/ui/contract/pass/constructor-payable.rs index 16df1438464..f189dd98a52 100644 --- a/crates/lang/tests/ui/contract/pass/constructor-payable.rs +++ b/crates/ink/tests/ui/contract/pass/constructor-payable.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] @@ -19,5 +17,5 @@ mod contract { use contract::Contract; fn main() { - assert!(>::PAYABLE); + assert!(>::PAYABLE); } diff --git a/crates/lang/tests/ui/contract/pass/constructor-selector.rs b/crates/ink/tests/ui/contract/pass/constructor-selector.rs similarity index 57% rename from crates/lang/tests/ui/contract/pass/constructor-selector.rs rename to crates/ink/tests/ui/contract/pass/constructor-selector.rs index 2fdadebaadc..e15212bc0a0 100644 --- a/crates/lang/tests/ui/contract/pass/constructor-selector.rs +++ b/crates/ink/tests/ui/contract/pass/constructor-selector.rs @@ -1,6 +1,5 @@ use contract::Contract; -use ink_lang as ink; -use ink_lang::selector_bytes; +use ink::selector_bytes; #[ink::contract] mod contract { @@ -30,11 +29,11 @@ mod contract { fn main() { assert_eq!( - ::CONSTRUCTORS + ::CONSTRUCTORS }, >>::IDS[0] }, @@ -42,11 +41,11 @@ fn main() { selector_bytes!("constructor_0") ); assert_eq!( - ::CONSTRUCTORS + ::CONSTRUCTORS }, >>::IDS[1] }, @@ -54,11 +53,11 @@ fn main() { 1_u32.to_be_bytes(), ); assert_eq!( - ::CONSTRUCTORS + ::CONSTRUCTORS }, >>::IDS[2] }, diff --git a/crates/lang/tests/ui/contract/pass/constructor-wildcard-selector.rs b/crates/ink/tests/ui/contract/pass/constructor-wildcard-selector.rs similarity index 92% rename from crates/lang/tests/ui/contract/pass/constructor-wildcard-selector.rs rename to crates/ink/tests/ui/contract/pass/constructor-wildcard-selector.rs index 9c2dbe8a39a..ddbde85d60b 100644 --- a/crates/lang/tests/ui/contract/pass/constructor-wildcard-selector.rs +++ b/crates/ink/tests/ui/contract/pass/constructor-wildcard-selector.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/dispatch-decoder-works.rs b/crates/ink/tests/ui/contract/pass/dispatch-decoder-works.rs similarity index 99% rename from crates/lang/tests/ui/contract/pass/dispatch-decoder-works.rs rename to crates/ink/tests/ui/contract/pass/dispatch-decoder-works.rs index db374f94c16..0dd13b3d217 100644 --- a/crates/lang/tests/ui/contract/pass/dispatch-decoder-works.rs +++ b/crates/ink/tests/ui/contract/pass/dispatch-decoder-works.rs @@ -1,5 +1,4 @@ -use ink_lang as ink; -use ink_lang::{ +use ink::{ reflect::{ ContractConstructorDecoder, ContractMessageDecoder, diff --git a/crates/lang/tests/ui/contract/pass/env-access.rs b/crates/ink/tests/ui/contract/pass/env-access.rs similarity index 98% rename from crates/lang/tests/ui/contract/pass/env-access.rs rename to crates/ink/tests/ui/contract/pass/env-access.rs index 77170407426..817ab6c4c32 100644 --- a/crates/lang/tests/ui/contract/pass/env-access.rs +++ b/crates/ink/tests/ui/contract/pass/env-access.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/event-anonymous.rs b/crates/ink/tests/ui/contract/pass/event-anonymous.rs similarity index 99% rename from crates/lang/tests/ui/contract/pass/event-anonymous.rs rename to crates/ink/tests/ui/contract/pass/event-anonymous.rs index 7489ee198b0..371d10e595e 100644 --- a/crates/lang/tests/ui/contract/pass/event-anonymous.rs +++ b/crates/ink/tests/ui/contract/pass/event-anonymous.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/event-config-more-topics.rs b/crates/ink/tests/ui/contract/pass/event-config-more-topics.rs similarity index 98% rename from crates/lang/tests/ui/contract/pass/event-config-more-topics.rs rename to crates/ink/tests/ui/contract/pass/event-config-more-topics.rs index 7e357a76140..5628749fb75 100644 --- a/crates/lang/tests/ui/contract/pass/event-config-more-topics.rs +++ b/crates/ink/tests/ui/contract/pass/event-config-more-topics.rs @@ -2,7 +2,6 @@ use ink_env::{ DefaultEnvironment, Environment, }; -use ink_lang as ink; pub struct EnvironmentMoreTopics; diff --git a/crates/lang/tests/ui/contract/pass/event-many-definitions.rs b/crates/ink/tests/ui/contract/pass/event-many-definitions.rs similarity index 99% rename from crates/lang/tests/ui/contract/pass/event-many-definitions.rs rename to crates/ink/tests/ui/contract/pass/event-many-definitions.rs index 06e0600cf29..00f9400dbe9 100644 --- a/crates/lang/tests/ui/contract/pass/event-many-definitions.rs +++ b/crates/ink/tests/ui/contract/pass/event-many-definitions.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/event-single-definition.rs b/crates/ink/tests/ui/contract/pass/event-single-definition.rs similarity index 93% rename from crates/lang/tests/ui/contract/pass/event-single-definition.rs rename to crates/ink/tests/ui/contract/pass/event-single-definition.rs index ae2896bb0d2..6932d4dc3f6 100644 --- a/crates/lang/tests/ui/contract/pass/event-single-definition.rs +++ b/crates/ink/tests/ui/contract/pass/event-single-definition.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/event-topics.rs b/crates/ink/tests/ui/contract/pass/event-topics.rs similarity index 99% rename from crates/lang/tests/ui/contract/pass/event-topics.rs rename to crates/ink/tests/ui/contract/pass/event-topics.rs index 500a8323174..236e63a0c7f 100644 --- a/crates/lang/tests/ui/contract/pass/event-topics.rs +++ b/crates/ink/tests/ui/contract/pass/event-topics.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/example-erc20-works.rs b/crates/ink/tests/ui/contract/pass/example-erc20-works.rs similarity index 99% rename from crates/lang/tests/ui/contract/pass/example-erc20-works.rs rename to crates/ink/tests/ui/contract/pass/example-erc20-works.rs index 691c424b1cd..6ef1b98e10f 100644 --- a/crates/lang/tests/ui/contract/pass/example-erc20-works.rs +++ b/crates/ink/tests/ui/contract/pass/example-erc20-works.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod erc20 { use ink_storage::Mapping; diff --git a/crates/lang/tests/ui/contract/pass/example-erc721-works.rs b/crates/ink/tests/ui/contract/pass/example-erc721-works.rs similarity index 99% rename from crates/lang/tests/ui/contract/pass/example-erc721-works.rs rename to crates/ink/tests/ui/contract/pass/example-erc721-works.rs index 00942ac5a1a..e5b250bf0d9 100644 --- a/crates/lang/tests/ui/contract/pass/example-erc721-works.rs +++ b/crates/ink/tests/ui/contract/pass/example-erc721-works.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod erc721 { use ink_storage::Mapping; diff --git a/crates/lang/tests/ui/contract/pass/example-flipper-works.rs b/crates/ink/tests/ui/contract/pass/example-flipper-works.rs similarity index 96% rename from crates/lang/tests/ui/contract/pass/example-flipper-works.rs rename to crates/ink/tests/ui/contract/pass/example-flipper-works.rs index 0aef590fb60..d3dad86775a 100644 --- a/crates/lang/tests/ui/contract/pass/example-flipper-works.rs +++ b/crates/ink/tests/ui/contract/pass/example-flipper-works.rs @@ -1,6 +1,4 @@ use flipper::Flipper; -use ink_lang as ink; - #[ink::contract] mod flipper { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/example-incrementer-works.rs b/crates/ink/tests/ui/contract/pass/example-incrementer-works.rs similarity index 97% rename from crates/lang/tests/ui/contract/pass/example-incrementer-works.rs rename to crates/ink/tests/ui/contract/pass/example-incrementer-works.rs index 959f0dfc02a..10e87e1f564 100644 --- a/crates/lang/tests/ui/contract/pass/example-incrementer-works.rs +++ b/crates/ink/tests/ui/contract/pass/example-incrementer-works.rs @@ -1,6 +1,4 @@ use incrementer::Incrementer; -use ink_lang as ink; - #[ink::contract] mod incrementer { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/example-trait-flipper-works.rs b/crates/ink/tests/ui/contract/pass/example-trait-flipper-works.rs similarity index 98% rename from crates/lang/tests/ui/contract/pass/example-trait-flipper-works.rs rename to crates/ink/tests/ui/contract/pass/example-trait-flipper-works.rs index 8a8f920ca1e..310751993dd 100644 --- a/crates/lang/tests/ui/contract/pass/example-trait-flipper-works.rs +++ b/crates/ink/tests/ui/contract/pass/example-trait-flipper-works.rs @@ -1,5 +1,4 @@ use flipper::Flipper; -use ink_lang as ink; #[ink::trait_definition] pub trait Flip { diff --git a/crates/lang/tests/ui/contract/pass/example-trait-incrementer-works.rs b/crates/ink/tests/ui/contract/pass/example-trait-incrementer-works.rs similarity index 98% rename from crates/lang/tests/ui/contract/pass/example-trait-incrementer-works.rs rename to crates/ink/tests/ui/contract/pass/example-trait-incrementer-works.rs index 493021ddfe9..3cda50570b5 100644 --- a/crates/lang/tests/ui/contract/pass/example-trait-incrementer-works.rs +++ b/crates/ink/tests/ui/contract/pass/example-trait-incrementer-works.rs @@ -1,5 +1,4 @@ use incrementer::Incrementer; -use ink_lang as ink; #[ink::trait_definition] pub trait Increment { diff --git a/crates/lang/tests/ui/contract/pass/impl-alias-storage.rs b/crates/ink/tests/ui/contract/pass/impl-alias-storage.rs similarity index 93% rename from crates/lang/tests/ui/contract/pass/impl-alias-storage.rs rename to crates/ink/tests/ui/contract/pass/impl-alias-storage.rs index fbbebe55ad1..da998e0e035 100644 --- a/crates/lang/tests/ui/contract/pass/impl-alias-storage.rs +++ b/crates/ink/tests/ui/contract/pass/impl-alias-storage.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/impl-block-namespace.rs b/crates/ink/tests/ui/contract/pass/impl-block-namespace.rs similarity index 93% rename from crates/lang/tests/ui/contract/pass/impl-block-namespace.rs rename to crates/ink/tests/ui/contract/pass/impl-block-namespace.rs index a8f055a9465..1b78f47b692 100644 --- a/crates/lang/tests/ui/contract/pass/impl-block-namespace.rs +++ b/crates/ink/tests/ui/contract/pass/impl-block-namespace.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/impl-block-using-env.rs b/crates/ink/tests/ui/contract/pass/impl-block-using-env.rs similarity index 96% rename from crates/lang/tests/ui/contract/pass/impl-block-using-env.rs rename to crates/ink/tests/ui/contract/pass/impl-block-using-env.rs index 6c58107d946..389634100a0 100644 --- a/crates/lang/tests/ui/contract/pass/impl-block-using-env.rs +++ b/crates/ink/tests/ui/contract/pass/impl-block-using-env.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/impl-with-property.rs b/crates/ink/tests/ui/contract/pass/impl-with-property.rs similarity index 93% rename from crates/lang/tests/ui/contract/pass/impl-with-property.rs rename to crates/ink/tests/ui/contract/pass/impl-with-property.rs index 8f58c32e656..d87818be282 100644 --- a/crates/lang/tests/ui/contract/pass/impl-with-property.rs +++ b/crates/ink/tests/ui/contract/pass/impl-with-property.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/message-many-inputs.rs b/crates/ink/tests/ui/contract/pass/message-many-inputs.rs similarity index 99% rename from crates/lang/tests/ui/contract/pass/message-many-inputs.rs rename to crates/ink/tests/ui/contract/pass/message-many-inputs.rs index 556ab08e072..73553408544 100644 --- a/crates/lang/tests/ui/contract/pass/message-many-inputs.rs +++ b/crates/ink/tests/ui/contract/pass/message-many-inputs.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/message-many-outputs.rs b/crates/ink/tests/ui/contract/pass/message-many-outputs.rs similarity index 98% rename from crates/lang/tests/ui/contract/pass/message-many-outputs.rs rename to crates/ink/tests/ui/contract/pass/message-many-outputs.rs index 5ff863ed93c..4a02a7d7eb2 100644 --- a/crates/lang/tests/ui/contract/pass/message-many-outputs.rs +++ b/crates/ink/tests/ui/contract/pass/message-many-outputs.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/message-payable.rs b/crates/ink/tests/ui/contract/pass/message-payable.rs similarity index 67% rename from crates/lang/tests/ui/contract/pass/message-payable.rs rename to crates/ink/tests/ui/contract/pass/message-payable.rs index 74f5035c7a4..fd88f42edaa 100644 --- a/crates/lang/tests/ui/contract/pass/message-payable.rs +++ b/crates/ink/tests/ui/contract/pass/message-payable.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] @@ -22,6 +20,6 @@ mod contract { use contract::Contract; fn main() { - assert!(>::PAYABLE); - assert!(!>::PAYABLE); + assert!(>::PAYABLE); + assert!(!>::PAYABLE); } diff --git a/crates/lang/tests/ui/contract/pass/message-selector.rs b/crates/ink/tests/ui/contract/pass/message-selector.rs similarity index 58% rename from crates/lang/tests/ui/contract/pass/message-selector.rs rename to crates/ink/tests/ui/contract/pass/message-selector.rs index 9f883d6f6db..aa4b10c5308 100644 --- a/crates/lang/tests/ui/contract/pass/message-selector.rs +++ b/crates/ink/tests/ui/contract/pass/message-selector.rs @@ -1,12 +1,10 @@ use contract::Contract; -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] pub struct Contract {} - #[ink_lang::trait_definition] + #[ink::trait_definition] pub trait Messages { #[ink(message)] fn message_0(&self); @@ -36,7 +34,7 @@ mod contract { pub fn message_3(&self) {} } - #[ink_lang::trait_definition] + #[ink::trait_definition] pub trait Messages2 { #[ink(message, selector = 0x12345678)] fn message_4(&self); @@ -50,11 +48,11 @@ mod contract { fn main() { assert_eq!( - ::MESSAGES + ::MESSAGES }, >>::IDS[0] }, @@ -62,11 +60,11 @@ fn main() { [0xFB, 0xAB, 0x03, 0xCE], ); assert_eq!( - ::MESSAGES + ::MESSAGES }, >>::IDS[1] }, @@ -74,11 +72,11 @@ fn main() { 1_u32.to_be_bytes(), ); assert_eq!( - ::MESSAGES + ::MESSAGES }, >>::IDS[2] }, @@ -86,11 +84,11 @@ fn main() { 0xC0DE_CAFE_u32.to_be_bytes(), ); assert_eq!( - ::MESSAGES + ::MESSAGES }, >>::IDS[3] }, @@ -98,11 +96,11 @@ fn main() { [0xB6, 0xC3, 0x27, 0x49], ); assert_eq!( - ::MESSAGES + ::MESSAGES }, >>::IDS[4] }, diff --git a/crates/lang/tests/ui/contract/pass/message-wildcard-selector.rs b/crates/ink/tests/ui/contract/pass/message-wildcard-selector.rs similarity index 95% rename from crates/lang/tests/ui/contract/pass/message-wildcard-selector.rs rename to crates/ink/tests/ui/contract/pass/message-wildcard-selector.rs index 7f27e48a4b5..1f7aeb5c9c0 100644 --- a/crates/lang/tests/ui/contract/pass/message-wildcard-selector.rs +++ b/crates/ink/tests/ui/contract/pass/message-wildcard-selector.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/minimal-contract.rs b/crates/ink/tests/ui/contract/pass/minimal-contract.rs similarity index 92% rename from crates/lang/tests/ui/contract/pass/minimal-contract.rs rename to crates/ink/tests/ui/contract/pass/minimal-contract.rs index f20a5b77ffa..14a14067b6d 100644 --- a/crates/lang/tests/ui/contract/pass/minimal-contract.rs +++ b/crates/ink/tests/ui/contract/pass/minimal-contract.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/module-env-types.rs b/crates/ink/tests/ui/contract/pass/module-env-types.rs similarity index 95% rename from crates/lang/tests/ui/contract/pass/module-env-types.rs rename to crates/ink/tests/ui/contract/pass/module-env-types.rs index 149bdd244f3..0ad412f726a 100644 --- a/crates/lang/tests/ui/contract/pass/module-env-types.rs +++ b/crates/ink/tests/ui/contract/pass/module-env-types.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/module-non-ink-items.rs b/crates/ink/tests/ui/contract/pass/module-non-ink-items.rs similarity index 97% rename from crates/lang/tests/ui/contract/pass/module-non-ink-items.rs rename to crates/ink/tests/ui/contract/pass/module-non-ink-items.rs index 3cb84013f8a..b01d87d55d1 100644 --- a/crates/lang/tests/ui/contract/pass/module-non-ink-items.rs +++ b/crates/ink/tests/ui/contract/pass/module-non-ink-items.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/no-implicit-prelude.rs b/crates/ink/tests/ui/contract/pass/no-implicit-prelude.rs similarity index 92% rename from crates/lang/tests/ui/contract/pass/no-implicit-prelude.rs rename to crates/ink/tests/ui/contract/pass/no-implicit-prelude.rs index e288ee4a578..fc5eb9782c7 100644 --- a/crates/lang/tests/ui/contract/pass/no-implicit-prelude.rs +++ b/crates/ink/tests/ui/contract/pass/no-implicit-prelude.rs @@ -1,6 +1,6 @@ #![no_implicit_prelude] -#[::ink_lang::contract] +#[::ink::contract] mod contract { #[ink(storage)] pub struct Contract {} diff --git a/crates/lang/tests/ui/contract/pass/storage-many-fields.rs b/crates/ink/tests/ui/contract/pass/storage-many-fields.rs similarity index 95% rename from crates/lang/tests/ui/contract/pass/storage-many-fields.rs rename to crates/ink/tests/ui/contract/pass/storage-many-fields.rs index f713eb19261..b02278b1eb0 100644 --- a/crates/lang/tests/ui/contract/pass/storage-many-fields.rs +++ b/crates/ink/tests/ui/contract/pass/storage-many-fields.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/storage-packed-fields.rs b/crates/ink/tests/ui/contract/pass/storage-packed-fields.rs similarity index 97% rename from crates/lang/tests/ui/contract/pass/storage-packed-fields.rs rename to crates/ink/tests/ui/contract/pass/storage-packed-fields.rs index c9b1ce530b3..1149c7b5dee 100644 --- a/crates/lang/tests/ui/contract/pass/storage-packed-fields.rs +++ b/crates/ink/tests/ui/contract/pass/storage-packed-fields.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { use ink_storage::traits::StorageLayout; diff --git a/crates/lang/tests/ui/contract/pass/storage-single-field.rs b/crates/ink/tests/ui/contract/pass/storage-single-field.rs similarity index 93% rename from crates/lang/tests/ui/contract/pass/storage-single-field.rs rename to crates/ink/tests/ui/contract/pass/storage-single-field.rs index acda95e192c..18aaebeba7c 100644 --- a/crates/lang/tests/ui/contract/pass/storage-single-field.rs +++ b/crates/ink/tests/ui/contract/pass/storage-single-field.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/storage-with-derives.rs b/crates/ink/tests/ui/contract/pass/storage-with-derives.rs similarity index 94% rename from crates/lang/tests/ui/contract/pass/storage-with-derives.rs rename to crates/ink/tests/ui/contract/pass/storage-with-derives.rs index 20e709298ec..b3f6aafc814 100644 --- a/crates/lang/tests/ui/contract/pass/storage-with-derives.rs +++ b/crates/ink/tests/ui/contract/pass/storage-with-derives.rs @@ -1,6 +1,4 @@ use contract::Contract; -use ink_lang as ink; - #[ink::contract] mod contract { #[ink(storage)] diff --git a/crates/lang/tests/ui/contract/pass/trait-message-payable-guard.rs b/crates/ink/tests/ui/contract/pass/trait-message-payable-guard.rs similarity index 95% rename from crates/lang/tests/ui/contract/pass/trait-message-payable-guard.rs rename to crates/ink/tests/ui/contract/pass/trait-message-payable-guard.rs index 888c2735bd0..6e6b2559431 100644 --- a/crates/lang/tests/ui/contract/pass/trait-message-payable-guard.rs +++ b/crates/ink/tests/ui/contract/pass/trait-message-payable-guard.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message, payable)] diff --git a/crates/lang/tests/ui/contract/pass/trait-message-selector-guard.rs b/crates/ink/tests/ui/contract/pass/trait-message-selector-guard.rs similarity index 95% rename from crates/lang/tests/ui/contract/pass/trait-message-selector-guard.rs rename to crates/ink/tests/ui/contract/pass/trait-message-selector-guard.rs index 632c9fd4393..6b6f7ce24c9 100644 --- a/crates/lang/tests/ui/contract/pass/trait-message-selector-guard.rs +++ b/crates/ink/tests/ui/contract/pass/trait-message-selector-guard.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message, selector = 1)] diff --git a/crates/lang/tests/ui/contract/pass/traits-messages-same-name.rs b/crates/ink/tests/ui/contract/pass/traits-messages-same-name.rs similarity index 96% rename from crates/lang/tests/ui/contract/pass/traits-messages-same-name.rs rename to crates/ink/tests/ui/contract/pass/traits-messages-same-name.rs index 1bc52d665bf..f57bbd0fdb8 100644 --- a/crates/lang/tests/ui/contract/pass/traits-messages-same-name.rs +++ b/crates/ink/tests/ui/contract/pass/traits-messages-same-name.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition1 { #[ink(message)] diff --git a/crates/lang/tests/ui/selector_bytes/fail/invalid_parameter_type_01.rs b/crates/ink/tests/ui/selector_bytes/fail/invalid_parameter_type_01.rs similarity index 72% rename from crates/lang/tests/ui/selector_bytes/fail/invalid_parameter_type_01.rs rename to crates/ink/tests/ui/selector_bytes/fail/invalid_parameter_type_01.rs index 7347baa1318..c2fead0a151 100644 --- a/crates/lang/tests/ui/selector_bytes/fail/invalid_parameter_type_01.rs +++ b/crates/ink/tests/ui/selector_bytes/fail/invalid_parameter_type_01.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - const _: u32 = ink::selector_bytes!(true); fn main() {} diff --git a/crates/lang/tests/ui/selector_bytes/fail/invalid_parameter_type_01.stderr b/crates/ink/tests/ui/selector_bytes/fail/invalid_parameter_type_01.stderr similarity index 56% rename from crates/lang/tests/ui/selector_bytes/fail/invalid_parameter_type_01.stderr rename to crates/ink/tests/ui/selector_bytes/fail/invalid_parameter_type_01.stderr index 1324671f7ad..aa13dc96b9f 100644 --- a/crates/lang/tests/ui/selector_bytes/fail/invalid_parameter_type_01.stderr +++ b/crates/ink/tests/ui/selector_bytes/fail/invalid_parameter_type_01.stderr @@ -1,5 +1,5 @@ error: expected string or byte string literal as input. found Bool(LitBool { value: true }) - --> tests/ui/selector_bytes/fail/invalid_parameter_type_01.rs:3:37 + --> tests/ui/selector_bytes/fail/invalid_parameter_type_01.rs:1:37 | -3 | const _: u32 = ink::selector_bytes!(true); +1 | const _: u32 = ink::selector_bytes!(true); | ^^^^ diff --git a/crates/lang/tests/ui/selector_bytes/fail/invalid_parameter_type_02.rs b/crates/ink/tests/ui/selector_bytes/fail/invalid_parameter_type_02.rs similarity index 71% rename from crates/lang/tests/ui/selector_bytes/fail/invalid_parameter_type_02.rs rename to crates/ink/tests/ui/selector_bytes/fail/invalid_parameter_type_02.rs index fba573aa06e..f3b9b9b7d3f 100644 --- a/crates/lang/tests/ui/selector_bytes/fail/invalid_parameter_type_02.rs +++ b/crates/ink/tests/ui/selector_bytes/fail/invalid_parameter_type_02.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - const _: u32 = ink::selector_bytes!(42); fn main() {} diff --git a/crates/lang/tests/ui/selector_bytes/fail/invalid_parameter_type_02.stderr b/crates/ink/tests/ui/selector_bytes/fail/invalid_parameter_type_02.stderr similarity index 56% rename from crates/lang/tests/ui/selector_bytes/fail/invalid_parameter_type_02.stderr rename to crates/ink/tests/ui/selector_bytes/fail/invalid_parameter_type_02.stderr index 14976c8846e..5856bc7bdcd 100644 --- a/crates/lang/tests/ui/selector_bytes/fail/invalid_parameter_type_02.stderr +++ b/crates/ink/tests/ui/selector_bytes/fail/invalid_parameter_type_02.stderr @@ -1,5 +1,5 @@ error: expected string or byte string literal as input. found Int(LitInt { token: 42 }) - --> tests/ui/selector_bytes/fail/invalid_parameter_type_02.rs:3:37 + --> tests/ui/selector_bytes/fail/invalid_parameter_type_02.rs:1:37 | -3 | const _: u32 = ink::selector_bytes!(42); +1 | const _: u32 = ink::selector_bytes!(42); | ^^ diff --git a/crates/lang/tests/ui/selector_bytes/fail/missing_parameter.rs b/crates/ink/tests/ui/selector_bytes/fail/missing_parameter.rs similarity index 70% rename from crates/lang/tests/ui/selector_bytes/fail/missing_parameter.rs rename to crates/ink/tests/ui/selector_bytes/fail/missing_parameter.rs index 3d703c8ad2d..5ca449086c5 100644 --- a/crates/lang/tests/ui/selector_bytes/fail/missing_parameter.rs +++ b/crates/ink/tests/ui/selector_bytes/fail/missing_parameter.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - const _: u32 = ink::selector_bytes!(); fn main() {} diff --git a/crates/lang/tests/ui/selector_bytes/fail/missing_parameter.stderr b/crates/ink/tests/ui/selector_bytes/fail/missing_parameter.stderr similarity index 72% rename from crates/lang/tests/ui/selector_bytes/fail/missing_parameter.stderr rename to crates/ink/tests/ui/selector_bytes/fail/missing_parameter.stderr index b9c47fed494..5e597b96c57 100644 --- a/crates/lang/tests/ui/selector_bytes/fail/missing_parameter.stderr +++ b/crates/ink/tests/ui/selector_bytes/fail/missing_parameter.stderr @@ -1,7 +1,7 @@ error: expected string or byte string literal as input: unexpected end of input, expected literal - --> tests/ui/selector_bytes/fail/missing_parameter.rs:3:16 + --> tests/ui/selector_bytes/fail/missing_parameter.rs:1:16 | -3 | const _: u32 = ink::selector_bytes!(); +1 | const _: u32 = ink::selector_bytes!(); | ^^^^^^^^^^^^^^^^^^^^^^ | = note: this error originates in the macro `ink::selector_bytes` (in Nightly builds, run with -Z macro-backtrace for more info) diff --git a/crates/lang/tests/ui/selector_bytes/fail/non_literal_parameter.rs b/crates/ink/tests/ui/selector_bytes/fail/non_literal_parameter.rs similarity index 79% rename from crates/lang/tests/ui/selector_bytes/fail/non_literal_parameter.rs rename to crates/ink/tests/ui/selector_bytes/fail/non_literal_parameter.rs index 2f258215017..471c94fd892 100644 --- a/crates/lang/tests/ui/selector_bytes/fail/non_literal_parameter.rs +++ b/crates/ink/tests/ui/selector_bytes/fail/non_literal_parameter.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - const INPUT: &str = "test"; const _: u32 = ink::selector_bytes!(INPUT); diff --git a/crates/lang/tests/ui/selector_bytes/fail/non_literal_parameter.stderr b/crates/ink/tests/ui/selector_bytes/fail/non_literal_parameter.stderr similarity index 52% rename from crates/lang/tests/ui/selector_bytes/fail/non_literal_parameter.stderr rename to crates/ink/tests/ui/selector_bytes/fail/non_literal_parameter.stderr index 8e70cd06ac5..c467aa58fb2 100644 --- a/crates/lang/tests/ui/selector_bytes/fail/non_literal_parameter.stderr +++ b/crates/ink/tests/ui/selector_bytes/fail/non_literal_parameter.stderr @@ -1,5 +1,5 @@ error: expected string or byte string literal as input: expected literal - --> tests/ui/selector_bytes/fail/non_literal_parameter.rs:4:37 + --> tests/ui/selector_bytes/fail/non_literal_parameter.rs:2:37 | -4 | const _: u32 = ink::selector_bytes!(INPUT); +2 | const _: u32 = ink::selector_bytes!(INPUT); | ^^^^^ diff --git a/crates/lang/tests/ui/selector_bytes/pass/bytestring_input.rs b/crates/ink/tests/ui/selector_bytes/pass/bytestring_input.rs similarity index 91% rename from crates/lang/tests/ui/selector_bytes/pass/bytestring_input.rs rename to crates/ink/tests/ui/selector_bytes/pass/bytestring_input.rs index 19d956bece1..67018f3255e 100644 --- a/crates/lang/tests/ui/selector_bytes/pass/bytestring_input.rs +++ b/crates/ink/tests/ui/selector_bytes/pass/bytestring_input.rs @@ -1,5 +1,4 @@ -use ink_lang as ink; -use ink_lang_ir as ir; +use ink_ir as ir; macro_rules! assert_macro_eq { ( $input:literal ) => {{ diff --git a/crates/ink/tests/ui/selector_bytes/pass/no_implicit_prelude.rs b/crates/ink/tests/ui/selector_bytes/pass/no_implicit_prelude.rs new file mode 100644 index 00000000000..0a69b3bd899 --- /dev/null +++ b/crates/ink/tests/ui/selector_bytes/pass/no_implicit_prelude.rs @@ -0,0 +1,5 @@ +#![no_implicit_prelude] + +const _: [::core::primitive::u8; 4] = ::ink::selector_bytes!("test"); + +fn main() {} diff --git a/crates/lang/tests/ui/selector_bytes/pass/string_input.rs b/crates/ink/tests/ui/selector_bytes/pass/string_input.rs similarity index 91% rename from crates/lang/tests/ui/selector_bytes/pass/string_input.rs rename to crates/ink/tests/ui/selector_bytes/pass/string_input.rs index fb9aa255072..38a6bd901ba 100644 --- a/crates/lang/tests/ui/selector_bytes/pass/string_input.rs +++ b/crates/ink/tests/ui/selector_bytes/pass/string_input.rs @@ -1,5 +1,4 @@ -use ink_lang as ink; -use ink_lang_ir as ir; +use ink_ir as ir; macro_rules! assert_macro_eq { ( $input:literal ) => {{ diff --git a/crates/lang/tests/ui/selector_id/fail/invalid_parameter_type_01.rs b/crates/ink/tests/ui/selector_id/fail/invalid_parameter_type_01.rs similarity index 71% rename from crates/lang/tests/ui/selector_id/fail/invalid_parameter_type_01.rs rename to crates/ink/tests/ui/selector_id/fail/invalid_parameter_type_01.rs index 0fa531c345f..fc223a26ae0 100644 --- a/crates/lang/tests/ui/selector_id/fail/invalid_parameter_type_01.rs +++ b/crates/ink/tests/ui/selector_id/fail/invalid_parameter_type_01.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - const _: u32 = ink::selector_id!(true); fn main() {} diff --git a/crates/lang/tests/ui/selector_id/fail/invalid_parameter_type_01.stderr b/crates/ink/tests/ui/selector_id/fail/invalid_parameter_type_01.stderr similarity index 56% rename from crates/lang/tests/ui/selector_id/fail/invalid_parameter_type_01.stderr rename to crates/ink/tests/ui/selector_id/fail/invalid_parameter_type_01.stderr index 6ff0319a589..de3f1b3bf24 100644 --- a/crates/lang/tests/ui/selector_id/fail/invalid_parameter_type_01.stderr +++ b/crates/ink/tests/ui/selector_id/fail/invalid_parameter_type_01.stderr @@ -1,5 +1,5 @@ error: expected string or byte string literal as input. found Bool(LitBool { value: true }) - --> tests/ui/selector_id/fail/invalid_parameter_type_01.rs:3:34 + --> tests/ui/selector_id/fail/invalid_parameter_type_01.rs:1:34 | -3 | const _: u32 = ink::selector_id!(true); +1 | const _: u32 = ink::selector_id!(true); | ^^^^ diff --git a/crates/lang/tests/ui/selector_id/fail/invalid_parameter_type_02.rs b/crates/ink/tests/ui/selector_id/fail/invalid_parameter_type_02.rs similarity index 70% rename from crates/lang/tests/ui/selector_id/fail/invalid_parameter_type_02.rs rename to crates/ink/tests/ui/selector_id/fail/invalid_parameter_type_02.rs index ab8ffe4bfb8..733064fea04 100644 --- a/crates/lang/tests/ui/selector_id/fail/invalid_parameter_type_02.rs +++ b/crates/ink/tests/ui/selector_id/fail/invalid_parameter_type_02.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - const _: u32 = ink::selector_id!(42); fn main() {} diff --git a/crates/lang/tests/ui/selector_id/fail/invalid_parameter_type_02.stderr b/crates/ink/tests/ui/selector_id/fail/invalid_parameter_type_02.stderr similarity index 55% rename from crates/lang/tests/ui/selector_id/fail/invalid_parameter_type_02.stderr rename to crates/ink/tests/ui/selector_id/fail/invalid_parameter_type_02.stderr index 37f957377f6..0f69fbcabeb 100644 --- a/crates/lang/tests/ui/selector_id/fail/invalid_parameter_type_02.stderr +++ b/crates/ink/tests/ui/selector_id/fail/invalid_parameter_type_02.stderr @@ -1,5 +1,5 @@ error: expected string or byte string literal as input. found Int(LitInt { token: 42 }) - --> tests/ui/selector_id/fail/invalid_parameter_type_02.rs:3:34 + --> tests/ui/selector_id/fail/invalid_parameter_type_02.rs:1:34 | -3 | const _: u32 = ink::selector_id!(42); +1 | const _: u32 = ink::selector_id!(42); | ^^ diff --git a/crates/lang/tests/ui/selector_id/fail/missing_parameter.rs b/crates/ink/tests/ui/selector_id/fail/missing_parameter.rs similarity index 69% rename from crates/lang/tests/ui/selector_id/fail/missing_parameter.rs rename to crates/ink/tests/ui/selector_id/fail/missing_parameter.rs index 65f39f14e14..338b35ccada 100644 --- a/crates/lang/tests/ui/selector_id/fail/missing_parameter.rs +++ b/crates/ink/tests/ui/selector_id/fail/missing_parameter.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - const _: u32 = ink::selector_id!(); fn main() {} diff --git a/crates/lang/tests/ui/selector_id/fail/missing_parameter.stderr b/crates/ink/tests/ui/selector_id/fail/missing_parameter.stderr similarity index 73% rename from crates/lang/tests/ui/selector_id/fail/missing_parameter.stderr rename to crates/ink/tests/ui/selector_id/fail/missing_parameter.stderr index 27fc30eb563..da454669140 100644 --- a/crates/lang/tests/ui/selector_id/fail/missing_parameter.stderr +++ b/crates/ink/tests/ui/selector_id/fail/missing_parameter.stderr @@ -1,7 +1,7 @@ error: expected string or byte string literal as input: unexpected end of input, expected literal - --> tests/ui/selector_id/fail/missing_parameter.rs:3:16 + --> tests/ui/selector_id/fail/missing_parameter.rs:1:16 | -3 | const _: u32 = ink::selector_id!(); +1 | const _: u32 = ink::selector_id!(); | ^^^^^^^^^^^^^^^^^^^ | = note: this error originates in the macro `ink::selector_id` (in Nightly builds, run with -Z macro-backtrace for more info) diff --git a/crates/lang/tests/ui/selector_id/fail/non_literal_parameter.rs b/crates/ink/tests/ui/selector_id/fail/non_literal_parameter.rs similarity index 79% rename from crates/lang/tests/ui/selector_id/fail/non_literal_parameter.rs rename to crates/ink/tests/ui/selector_id/fail/non_literal_parameter.rs index 92e89e79afd..1bf1a791744 100644 --- a/crates/lang/tests/ui/selector_id/fail/non_literal_parameter.rs +++ b/crates/ink/tests/ui/selector_id/fail/non_literal_parameter.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - const INPUT: &str = "test"; const _: u32 = ink::selector_id!(INPUT); diff --git a/crates/lang/tests/ui/selector_id/fail/non_literal_parameter.stderr b/crates/ink/tests/ui/selector_id/fail/non_literal_parameter.stderr similarity index 53% rename from crates/lang/tests/ui/selector_id/fail/non_literal_parameter.stderr rename to crates/ink/tests/ui/selector_id/fail/non_literal_parameter.stderr index ea9ade30629..080d39356da 100644 --- a/crates/lang/tests/ui/selector_id/fail/non_literal_parameter.stderr +++ b/crates/ink/tests/ui/selector_id/fail/non_literal_parameter.stderr @@ -1,5 +1,5 @@ error: expected string or byte string literal as input: expected literal - --> tests/ui/selector_id/fail/non_literal_parameter.rs:4:34 + --> tests/ui/selector_id/fail/non_literal_parameter.rs:2:34 | -4 | const _: u32 = ink::selector_id!(INPUT); +2 | const _: u32 = ink::selector_id!(INPUT); | ^^^^^ diff --git a/crates/lang/tests/ui/selector_id/pass/bytestring_input.rs b/crates/ink/tests/ui/selector_id/pass/bytestring_input.rs similarity index 91% rename from crates/lang/tests/ui/selector_id/pass/bytestring_input.rs rename to crates/ink/tests/ui/selector_id/pass/bytestring_input.rs index 8136c259ac1..96e811e77e0 100644 --- a/crates/lang/tests/ui/selector_id/pass/bytestring_input.rs +++ b/crates/ink/tests/ui/selector_id/pass/bytestring_input.rs @@ -1,5 +1,4 @@ -use ink_lang as ink; -use ink_lang_ir as ir; +use ink_ir as ir; macro_rules! assert_macro_eq { ( $input:literal ) => {{ diff --git a/crates/ink/tests/ui/selector_id/pass/no_implicit_prelude.rs b/crates/ink/tests/ui/selector_id/pass/no_implicit_prelude.rs new file mode 100644 index 00000000000..4f62487aa19 --- /dev/null +++ b/crates/ink/tests/ui/selector_id/pass/no_implicit_prelude.rs @@ -0,0 +1,5 @@ +#![no_implicit_prelude] + +const _: ::core::primitive::u32 = ::ink::selector_id!("test"); + +fn main() {} diff --git a/crates/lang/tests/ui/selector_id/pass/string_input.rs b/crates/ink/tests/ui/selector_id/pass/string_input.rs similarity index 91% rename from crates/lang/tests/ui/selector_id/pass/string_input.rs rename to crates/ink/tests/ui/selector_id/pass/string_input.rs index ca7eb30e251..5c595ce8f65 100644 --- a/crates/lang/tests/ui/selector_id/pass/string_input.rs +++ b/crates/ink/tests/ui/selector_id/pass/string_input.rs @@ -1,5 +1,4 @@ -use ink_lang as ink; -use ink_lang_ir as ir; +use ink_ir as ir; macro_rules! assert_macro_eq { ( $input:literal ) => {{ diff --git a/crates/lang/tests/ui/storage_item/fail/argument_derive_invalid_type.rs b/crates/ink/tests/ui/storage_item/fail/argument_derive_invalid_type.rs similarity index 73% rename from crates/lang/tests/ui/storage_item/fail/argument_derive_invalid_type.rs rename to crates/ink/tests/ui/storage_item/fail/argument_derive_invalid_type.rs index 47d5871c4c9..56ac7a96793 100644 --- a/crates/lang/tests/ui/storage_item/fail/argument_derive_invalid_type.rs +++ b/crates/ink/tests/ui/storage_item/fail/argument_derive_invalid_type.rs @@ -1,4 +1,4 @@ -#[ink_lang::storage_item(derive = "false")] +#[ink::storage_item(derive = "false")] #[derive(Default)] struct Contract> { a: u16, diff --git a/crates/lang/tests/ui/storage_item/fail/argument_derive_invalid_type.stderr b/crates/ink/tests/ui/storage_item/fail/argument_derive_invalid_type.stderr similarity index 60% rename from crates/lang/tests/ui/storage_item/fail/argument_derive_invalid_type.stderr rename to crates/ink/tests/ui/storage_item/fail/argument_derive_invalid_type.stderr index 71047ce2be5..40fd498c21b 100644 --- a/crates/lang/tests/ui/storage_item/fail/argument_derive_invalid_type.stderr +++ b/crates/ink/tests/ui/storage_item/fail/argument_derive_invalid_type.stderr @@ -1,5 +1,5 @@ error: expected a bool literal for `derive` ink! storage item configuration argument - --> tests/ui/storage_item/fail/argument_derive_invalid_type.rs:1:26 + --> tests/ui/storage_item/fail/argument_derive_invalid_type.rs:1:21 | -1 | #[ink_lang::storage_item(derive = "false")] - | ^^^^^^^^^^^^^^^^ +1 | #[ink::storage_item(derive = "false")] + | ^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/storage_item/fail/argument_derive_missing_arg.rs b/crates/ink/tests/ui/storage_item/fail/argument_derive_missing_arg.rs similarity index 78% rename from crates/lang/tests/ui/storage_item/fail/argument_derive_missing_arg.rs rename to crates/ink/tests/ui/storage_item/fail/argument_derive_missing_arg.rs index 5c0346662c9..956c6ef519f 100644 --- a/crates/lang/tests/ui/storage_item/fail/argument_derive_missing_arg.rs +++ b/crates/ink/tests/ui/storage_item/fail/argument_derive_missing_arg.rs @@ -1,4 +1,4 @@ -#[ink_lang::storage_item(derive)] +#[ink::storage_item(derive)] #[derive(Default)] struct Contract> { a: u16, diff --git a/crates/lang/tests/ui/storage_item/fail/argument_derive_missing_arg.stderr b/crates/ink/tests/ui/storage_item/fail/argument_derive_missing_arg.stderr similarity index 62% rename from crates/lang/tests/ui/storage_item/fail/argument_derive_missing_arg.stderr rename to crates/ink/tests/ui/storage_item/fail/argument_derive_missing_arg.stderr index 3b0ab7c559e..1915baf6c6f 100644 --- a/crates/lang/tests/ui/storage_item/fail/argument_derive_missing_arg.stderr +++ b/crates/ink/tests/ui/storage_item/fail/argument_derive_missing_arg.stderr @@ -1,5 +1,5 @@ error: ink! config options require an argument separated by '=' - --> tests/ui/storage_item/fail/argument_derive_missing_arg.rs:1:26 + --> tests/ui/storage_item/fail/argument_derive_missing_arg.rs:1:21 | -1 | #[ink_lang::storage_item(derive)] - | ^^^^^^ +1 | #[ink::storage_item(derive)] + | ^^^^^^ diff --git a/crates/lang/tests/ui/storage_item/fail/collections_only_packed_1.rs b/crates/ink/tests/ui/storage_item/fail/collections_only_packed_1.rs similarity index 74% rename from crates/lang/tests/ui/storage_item/fail/collections_only_packed_1.rs rename to crates/ink/tests/ui/storage_item/fail/collections_only_packed_1.rs index cd20346e6a5..26a36765c77 100644 --- a/crates/lang/tests/ui/storage_item/fail/collections_only_packed_1.rs +++ b/crates/ink/tests/ui/storage_item/fail/collections_only_packed_1.rs @@ -1,12 +1,12 @@ use ink_prelude::vec::Vec; use ink_storage::Lazy; -#[ink_lang::storage_item] +#[ink::storage_item] struct NonPacked { a: Lazy, } -#[ink_lang::storage_item] +#[ink::storage_item] struct Contract { a: Vec, } diff --git a/crates/lang/tests/ui/storage_item/fail/collections_only_packed_1.stderr b/crates/ink/tests/ui/storage_item/fail/collections_only_packed_1.stderr similarity index 76% rename from crates/lang/tests/ui/storage_item/fail/collections_only_packed_1.stderr rename to crates/ink/tests/ui/storage_item/fail/collections_only_packed_1.stderr index 97194709e9b..194d2ad17e4 100644 --- a/crates/lang/tests/ui/storage_item/fail/collections_only_packed_1.stderr +++ b/crates/ink/tests/ui/storage_item/fail/collections_only_packed_1.stderr @@ -1,10 +1,10 @@ -error[E0277]: the trait bound `Vec: Decode` is not satisfied +error[E0277]: the trait bound `Vec: parity_scale_codec::Decode` is not satisfied --> tests/ui/storage_item/fail/collections_only_packed_1.rs:11:8 | 11 | a: Vec, - | ^^^ the trait `Decode` is not implemented for `Vec` + | ^^^ the trait `parity_scale_codec::Decode` is not implemented for `Vec` | - = help: the trait `Decode` is implemented for `Vec` + = help: the trait `parity_scale_codec::Decode` is implemented for `Vec` = note: required because of the requirements on the impl of `Packed` for `Vec` = note: required because of the requirements on the impl of `StorableHint<()>` for `Vec` = note: required because of the requirements on the impl of `AutoStorableHint>` for `Vec` @@ -23,13 +23,13 @@ error[E0277]: the trait bound `[NonPacked]: Encode` is not satisfied = note: required because of the requirements on the impl of `StorableHint<()>` for `Vec` = note: required because of the requirements on the impl of `AutoStorableHint>` for `Vec` -error[E0277]: the trait bound `Vec: Decode` is not satisfied +error[E0277]: the trait bound `Vec: parity_scale_codec::Decode` is not satisfied --> tests/ui/storage_item/fail/collections_only_packed_1.rs:9:1 | -9 | #[ink_lang::storage_item] - | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Decode` is not implemented for `Vec` +9 | #[ink::storage_item] + | ^^^^^^^^^^^^^^^^^^^^ the trait `parity_scale_codec::Decode` is not implemented for `Vec` | - = help: the trait `Decode` is implemented for `Vec` + = help: the trait `parity_scale_codec::Decode` is implemented for `Vec` = note: required because of the requirements on the impl of `Packed` for `Vec` = note: required because of the requirements on the impl of `StorableHint<()>` for `Vec` = note: required because of the requirements on the impl of `AutoStorableHint>` for `Vec` @@ -43,13 +43,13 @@ note: required by a bound in `Storable` | | pub trait Storable: Sized { | ^^^^^ required by this bound in `Storable` - = note: this error originates in the derive macro `::ink_storage::traits::Storable` (in Nightly builds, run with -Z macro-backtrace for more info) + = note: this error originates in the derive macro `::ink::storage::traits::Storable` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `[NonPacked]: Encode` is not satisfied --> tests/ui/storage_item/fail/collections_only_packed_1.rs:9:1 | -9 | #[ink_lang::storage_item] - | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Encode` is not implemented for `[NonPacked]` +9 | #[ink::storage_item] + | ^^^^^^^^^^^^^^^^^^^^ the trait `Encode` is not implemented for `[NonPacked]` | = help: the following other types implement trait `Encode`: [T; N] @@ -68,15 +68,15 @@ note: required by a bound in `Storable` | | pub trait Storable: Sized { | ^^^^^ required by this bound in `Storable` - = note: this error originates in the derive macro `::ink_storage::traits::Storable` (in Nightly builds, run with -Z macro-backtrace for more info) + = note: this error originates in the derive macro `::ink::storage::traits::Storable` (in Nightly builds, run with -Z macro-backtrace for more info) -error[E0277]: the trait bound `Vec: Decode` is not satisfied +error[E0277]: the trait bound `Vec: parity_scale_codec::Decode` is not satisfied --> tests/ui/storage_item/fail/collections_only_packed_1.rs:9:1 | -9 | #[ink_lang::storage_item] - | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Decode` is not implemented for `Vec` +9 | #[ink::storage_item] + | ^^^^^^^^^^^^^^^^^^^^ the trait `parity_scale_codec::Decode` is not implemented for `Vec` | - = help: the trait `Decode` is implemented for `Vec` + = help: the trait `parity_scale_codec::Decode` is implemented for `Vec` = note: required because of the requirements on the impl of `Packed` for `Vec` = note: required because of the requirements on the impl of `StorableHint<()>` for `Vec` = note: required because of the requirements on the impl of `AutoStorableHint>` for `Vec` @@ -90,13 +90,13 @@ note: required by a bound in `Result` | | pub enum Result { | ^ required by this bound in `Result` - = note: this error originates in the derive macro `::ink_storage::traits::Storable` (in Nightly builds, run with -Z macro-backtrace for more info) + = note: this error originates in the derive macro `::ink::storage::traits::Storable` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `[NonPacked]: Encode` is not satisfied --> tests/ui/storage_item/fail/collections_only_packed_1.rs:9:1 | -9 | #[ink_lang::storage_item] - | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Encode` is not implemented for `[NonPacked]` +9 | #[ink::storage_item] + | ^^^^^^^^^^^^^^^^^^^^ the trait `Encode` is not implemented for `[NonPacked]` | = help: the following other types implement trait `Encode`: [T; N] @@ -115,4 +115,4 @@ note: required by a bound in `Result` | | pub enum Result { | ^ required by this bound in `Result` - = note: this error originates in the derive macro `::ink_storage::traits::Storable` (in Nightly builds, run with -Z macro-backtrace for more info) + = note: this error originates in the derive macro `::ink::storage::traits::Storable` (in Nightly builds, run with -Z macro-backtrace for more info) diff --git a/crates/lang/tests/ui/storage_item/fail/collections_only_packed_2.rs b/crates/ink/tests/ui/storage_item/fail/collections_only_packed_2.rs similarity index 76% rename from crates/lang/tests/ui/storage_item/fail/collections_only_packed_2.rs rename to crates/ink/tests/ui/storage_item/fail/collections_only_packed_2.rs index 876dfff68ac..c25f1696a9c 100644 --- a/crates/lang/tests/ui/storage_item/fail/collections_only_packed_2.rs +++ b/crates/ink/tests/ui/storage_item/fail/collections_only_packed_2.rs @@ -1,12 +1,12 @@ use ink_prelude::collections::BTreeMap; use ink_storage::Lazy; -#[ink_lang::storage_item] +#[ink::storage_item] struct NonPacked { a: Lazy, } -#[ink_lang::storage_item] +#[ink::storage_item] struct Contract { a: BTreeMap, } diff --git a/crates/lang/tests/ui/storage_item/fail/collections_only_packed_2.stderr b/crates/ink/tests/ui/storage_item/fail/collections_only_packed_2.stderr similarity index 74% rename from crates/lang/tests/ui/storage_item/fail/collections_only_packed_2.stderr rename to crates/ink/tests/ui/storage_item/fail/collections_only_packed_2.stderr index cdcae3115d7..84f12b8ef79 100644 --- a/crates/lang/tests/ui/storage_item/fail/collections_only_packed_2.stderr +++ b/crates/ink/tests/ui/storage_item/fail/collections_only_packed_2.stderr @@ -1,10 +1,10 @@ -error[E0277]: the trait bound `BTreeMap: Decode` is not satisfied +error[E0277]: the trait bound `BTreeMap: parity_scale_codec::Decode` is not satisfied --> tests/ui/storage_item/fail/collections_only_packed_2.rs:11:8 | 11 | a: BTreeMap, - | ^^^^^^^^ the trait `Decode` is not implemented for `BTreeMap` + | ^^^^^^^^ the trait `parity_scale_codec::Decode` is not implemented for `BTreeMap` | - = help: the trait `Decode` is implemented for `BTreeMap` + = help: the trait `parity_scale_codec::Decode` is implemented for `BTreeMap` = note: required because of the requirements on the impl of `Packed` for `BTreeMap` = note: required because of the requirements on the impl of `StorableHint<()>` for `BTreeMap` = note: required because of the requirements on the impl of `AutoStorableHint>` for `BTreeMap` @@ -20,13 +20,13 @@ error[E0277]: the trait bound `BTreeMap: Encode` is not satisfi = note: required because of the requirements on the impl of `StorableHint<()>` for `BTreeMap` = note: required because of the requirements on the impl of `AutoStorableHint>` for `BTreeMap` -error[E0277]: the trait bound `BTreeMap: Decode` is not satisfied +error[E0277]: the trait bound `BTreeMap: parity_scale_codec::Decode` is not satisfied --> tests/ui/storage_item/fail/collections_only_packed_2.rs:9:1 | -9 | #[ink_lang::storage_item] - | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Decode` is not implemented for `BTreeMap` +9 | #[ink::storage_item] + | ^^^^^^^^^^^^^^^^^^^^ the trait `parity_scale_codec::Decode` is not implemented for `BTreeMap` | - = help: the trait `Decode` is implemented for `BTreeMap` + = help: the trait `parity_scale_codec::Decode` is implemented for `BTreeMap` = note: required because of the requirements on the impl of `Packed` for `BTreeMap` = note: required because of the requirements on the impl of `StorableHint<()>` for `BTreeMap` = note: required because of the requirements on the impl of `AutoStorableHint>` for `BTreeMap` @@ -40,13 +40,13 @@ note: required by a bound in `Storable` | | pub trait Storable: Sized { | ^^^^^ required by this bound in `Storable` - = note: this error originates in the derive macro `::ink_storage::traits::Storable` (in Nightly builds, run with -Z macro-backtrace for more info) + = note: this error originates in the derive macro `::ink::storage::traits::Storable` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `BTreeMap: Encode` is not satisfied --> tests/ui/storage_item/fail/collections_only_packed_2.rs:9:1 | -9 | #[ink_lang::storage_item] - | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Encode` is not implemented for `BTreeMap` +9 | #[ink::storage_item] + | ^^^^^^^^^^^^^^^^^^^^ the trait `Encode` is not implemented for `BTreeMap` | = help: the trait `Encode` is implemented for `BTreeMap` = note: required because of the requirements on the impl of `Packed` for `BTreeMap` @@ -62,15 +62,15 @@ note: required by a bound in `Storable` | | pub trait Storable: Sized { | ^^^^^ required by this bound in `Storable` - = note: this error originates in the derive macro `::ink_storage::traits::Storable` (in Nightly builds, run with -Z macro-backtrace for more info) + = note: this error originates in the derive macro `::ink::storage::traits::Storable` (in Nightly builds, run with -Z macro-backtrace for more info) -error[E0277]: the trait bound `BTreeMap: Decode` is not satisfied +error[E0277]: the trait bound `BTreeMap: parity_scale_codec::Decode` is not satisfied --> tests/ui/storage_item/fail/collections_only_packed_2.rs:9:1 | -9 | #[ink_lang::storage_item] - | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Decode` is not implemented for `BTreeMap` +9 | #[ink::storage_item] + | ^^^^^^^^^^^^^^^^^^^^ the trait `parity_scale_codec::Decode` is not implemented for `BTreeMap` | - = help: the trait `Decode` is implemented for `BTreeMap` + = help: the trait `parity_scale_codec::Decode` is implemented for `BTreeMap` = note: required because of the requirements on the impl of `Packed` for `BTreeMap` = note: required because of the requirements on the impl of `StorableHint<()>` for `BTreeMap` = note: required because of the requirements on the impl of `AutoStorableHint>` for `BTreeMap` @@ -84,13 +84,13 @@ note: required by a bound in `Result` | | pub enum Result { | ^ required by this bound in `Result` - = note: this error originates in the derive macro `::ink_storage::traits::Storable` (in Nightly builds, run with -Z macro-backtrace for more info) + = note: this error originates in the derive macro `::ink::storage::traits::Storable` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `BTreeMap: Encode` is not satisfied --> tests/ui/storage_item/fail/collections_only_packed_2.rs:9:1 | -9 | #[ink_lang::storage_item] - | ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Encode` is not implemented for `BTreeMap` +9 | #[ink::storage_item] + | ^^^^^^^^^^^^^^^^^^^^ the trait `Encode` is not implemented for `BTreeMap` | = help: the trait `Encode` is implemented for `BTreeMap` = note: required because of the requirements on the impl of `Packed` for `BTreeMap` @@ -106,4 +106,4 @@ note: required by a bound in `Result` | | pub enum Result { | ^ required by this bound in `Result` - = note: this error originates in the derive macro `::ink_storage::traits::Storable` (in Nightly builds, run with -Z macro-backtrace for more info) + = note: this error originates in the derive macro `::ink::storage::traits::Storable` (in Nightly builds, run with -Z macro-backtrace for more info) diff --git a/crates/lang/tests/ui/storage_item/fail/double_storage_item.rs b/crates/ink/tests/ui/storage_item/fail/double_storage_item.rs similarity index 59% rename from crates/lang/tests/ui/storage_item/fail/double_storage_item.rs rename to crates/ink/tests/ui/storage_item/fail/double_storage_item.rs index 3d59cd73176..2a3016d9739 100644 --- a/crates/lang/tests/ui/storage_item/fail/double_storage_item.rs +++ b/crates/ink/tests/ui/storage_item/fail/double_storage_item.rs @@ -1,5 +1,5 @@ -#[ink_lang::storage_item(derive = false)] -#[ink_lang::storage_item(derive = true)] +#[ink::storage_item(derive = false)] +#[ink::storage_item(derive = true)] #[derive(Default)] struct Contract> { a: u16, diff --git a/crates/lang/tests/ui/storage_item/fail/double_storage_item.stderr b/crates/ink/tests/ui/storage_item/fail/double_storage_item.stderr similarity index 55% rename from crates/lang/tests/ui/storage_item/fail/double_storage_item.stderr rename to crates/ink/tests/ui/storage_item/fail/double_storage_item.stderr index 64e01f84b3f..60e3ae009d3 100644 --- a/crates/lang/tests/ui/storage_item/fail/double_storage_item.stderr +++ b/crates/ink/tests/ui/storage_item/fail/double_storage_item.stderr @@ -1,5 +1,5 @@ error: only one `ink::storage_item` is allowed --> tests/ui/storage_item/fail/double_storage_item.rs:2:1 | -2 | #[ink_lang::storage_item(derive = true)] - | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +2 | #[ink::storage_item(derive = true)] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/storage_item/fail/packed_is_not_derived_automatically.rs b/crates/ink/tests/ui/storage_item/fail/packed_is_not_derived_automatically.rs similarity index 88% rename from crates/lang/tests/ui/storage_item/fail/packed_is_not_derived_automatically.rs rename to crates/ink/tests/ui/storage_item/fail/packed_is_not_derived_automatically.rs index da1cf6eef91..3ccc52b24fe 100644 --- a/crates/lang/tests/ui/storage_item/fail/packed_is_not_derived_automatically.rs +++ b/crates/ink/tests/ui/storage_item/fail/packed_is_not_derived_automatically.rs @@ -3,7 +3,7 @@ use ink_storage::{ Lazy, }; -#[ink_lang::storage_item] +#[ink::storage_item] #[derive(Default)] struct NonPacked { a: Lazy, diff --git a/crates/lang/tests/ui/storage_item/fail/packed_is_not_derived_automatically.stderr b/crates/ink/tests/ui/storage_item/fail/packed_is_not_derived_automatically.stderr similarity index 97% rename from crates/lang/tests/ui/storage_item/fail/packed_is_not_derived_automatically.stderr rename to crates/ink/tests/ui/storage_item/fail/packed_is_not_derived_automatically.stderr index e91f54e5cef..37f41696eac 100644 --- a/crates/lang/tests/ui/storage_item/fail/packed_is_not_derived_automatically.stderr +++ b/crates/ink/tests/ui/storage_item/fail/packed_is_not_derived_automatically.stderr @@ -8,7 +8,7 @@ error[E0277]: the trait bound `NonPacked: WrapperTypeDecode` is not satisfied Arc Box Rc - = note: required because of the requirements on the impl of `Decode` for `NonPacked` + = note: required because of the requirements on the impl of `parity_scale_codec::Decode` for `NonPacked` = note: required because of the requirements on the impl of `Packed` for `NonPacked` note: required by a bound in `consume_packed` --> tests/ui/storage_item/fail/packed_is_not_derived_automatically.rs:12:22 diff --git a/crates/lang/tests/ui/storage_item/pass/argument_derive_false.rs b/crates/ink/tests/ui/storage_item/pass/argument_derive_false.rs similarity index 94% rename from crates/lang/tests/ui/storage_item/pass/argument_derive_false.rs rename to crates/ink/tests/ui/storage_item/pass/argument_derive_false.rs index 4eeb021a841..d491db42add 100644 --- a/crates/lang/tests/ui/storage_item/pass/argument_derive_false.rs +++ b/crates/ink/tests/ui/storage_item/pass/argument_derive_false.rs @@ -4,7 +4,7 @@ use ink_storage::traits::{ StorageKey, }; -#[ink_lang::storage_item(derive = false)] +#[ink::storage_item(derive = false)] #[derive(Default)] struct Contract> { a: u16, diff --git a/crates/lang/tests/ui/storage_item/pass/complex_non_packed_enum.rs b/crates/ink/tests/ui/storage_item/pass/complex_non_packed_enum.rs similarity index 98% rename from crates/lang/tests/ui/storage_item/pass/complex_non_packed_enum.rs rename to crates/ink/tests/ui/storage_item/pass/complex_non_packed_enum.rs index e7b634a891f..e65f0e8cc10 100644 --- a/crates/lang/tests/ui/storage_item/pass/complex_non_packed_enum.rs +++ b/crates/ink/tests/ui/storage_item/pass/complex_non_packed_enum.rs @@ -30,7 +30,7 @@ enum Packed { H((u16, u32)), } -#[ink_lang::storage_item] +#[ink::storage_item] #[derive(Default)] enum NonPacked { #[default] @@ -45,7 +45,7 @@ enum NonPacked { }, } -#[ink_lang::storage_item] +#[ink::storage_item] #[derive(Default)] struct Contract { a: Lazy, diff --git a/crates/lang/tests/ui/storage_item/pass/complex_non_packed_struct.rs b/crates/ink/tests/ui/storage_item/pass/complex_non_packed_struct.rs similarity index 97% rename from crates/lang/tests/ui/storage_item/pass/complex_non_packed_struct.rs rename to crates/ink/tests/ui/storage_item/pass/complex_non_packed_struct.rs index bc5fee55a8a..5a4f203da21 100644 --- a/crates/lang/tests/ui/storage_item/pass/complex_non_packed_struct.rs +++ b/crates/ink/tests/ui/storage_item/pass/complex_non_packed_struct.rs @@ -23,7 +23,7 @@ struct Packed { f: String, } -#[ink_lang::storage_item] +#[ink::storage_item] #[derive(Default)] struct NonPacked { a: Mapping, @@ -32,7 +32,7 @@ struct NonPacked { d: Lazy>, } -#[ink_lang::storage_item] +#[ink::storage_item] #[derive(Default)] struct Contract { a: Lazy, diff --git a/crates/lang/tests/ui/storage_item/pass/complex_packed_enum.rs b/crates/ink/tests/ui/storage_item/pass/complex_packed_enum.rs similarity index 100% rename from crates/lang/tests/ui/storage_item/pass/complex_packed_enum.rs rename to crates/ink/tests/ui/storage_item/pass/complex_packed_enum.rs diff --git a/crates/lang/tests/ui/storage_item/pass/complex_packed_struct.rs b/crates/ink/tests/ui/storage_item/pass/complex_packed_struct.rs similarity index 100% rename from crates/lang/tests/ui/storage_item/pass/complex_packed_struct.rs rename to crates/ink/tests/ui/storage_item/pass/complex_packed_struct.rs diff --git a/crates/lang/tests/ui/storage_item/pass/default_storage_key_1.rs b/crates/ink/tests/ui/storage_item/pass/default_storage_key_1.rs similarity index 89% rename from crates/lang/tests/ui/storage_item/pass/default_storage_key_1.rs rename to crates/ink/tests/ui/storage_item/pass/default_storage_key_1.rs index 84de1b7d914..28eadb587b4 100644 --- a/crates/lang/tests/ui/storage_item/pass/default_storage_key_1.rs +++ b/crates/ink/tests/ui/storage_item/pass/default_storage_key_1.rs @@ -3,7 +3,7 @@ use ink_storage::traits::{ StorageKey, }; -#[ink_lang::storage_item] +#[ink::storage_item] struct Contract> { a: u16, b: u16, diff --git a/crates/lang/tests/ui/storage_item/pass/default_storage_key_2.rs b/crates/ink/tests/ui/storage_item/pass/default_storage_key_2.rs similarity index 89% rename from crates/lang/tests/ui/storage_item/pass/default_storage_key_2.rs rename to crates/ink/tests/ui/storage_item/pass/default_storage_key_2.rs index 5a1e689c4b4..26cb5b8bf75 100644 --- a/crates/lang/tests/ui/storage_item/pass/default_storage_key_2.rs +++ b/crates/ink/tests/ui/storage_item/pass/default_storage_key_2.rs @@ -3,7 +3,7 @@ use ink_storage::{ traits::ManualKey, }; -#[ink_lang::storage_item] +#[ink::storage_item] struct Contract> { a: u16, b: u16, diff --git a/crates/lang/tests/ui/storage_item/pass/default_storage_key_3.rs b/crates/ink/tests/ui/storage_item/pass/default_storage_key_3.rs similarity index 90% rename from crates/lang/tests/ui/storage_item/pass/default_storage_key_3.rs rename to crates/ink/tests/ui/storage_item/pass/default_storage_key_3.rs index 5b28386e0c9..db2f47b9de8 100644 --- a/crates/lang/tests/ui/storage_item/pass/default_storage_key_3.rs +++ b/crates/ink/tests/ui/storage_item/pass/default_storage_key_3.rs @@ -1,6 +1,6 @@ use ink_storage::traits::ManualKey; -#[ink_lang::storage_item] +#[ink::storage_item] struct Contract> { a: u16, b: u16, diff --git a/crates/lang/tests/ui/storage_item/pass/default_storage_key_4.rs b/crates/ink/tests/ui/storage_item/pass/default_storage_key_4.rs similarity index 90% rename from crates/lang/tests/ui/storage_item/pass/default_storage_key_4.rs rename to crates/ink/tests/ui/storage_item/pass/default_storage_key_4.rs index ebdfb9b6641..22a9a3780e5 100644 --- a/crates/lang/tests/ui/storage_item/pass/default_storage_key_4.rs +++ b/crates/ink/tests/ui/storage_item/pass/default_storage_key_4.rs @@ -1,6 +1,6 @@ use ink_storage::traits::ManualKey; -#[ink_lang::storage_item] +#[ink::storage_item] struct Contract> { a: u16, b: u16, diff --git a/crates/lang/tests/ui/storage_item/pass/non_packed_tuple_struct.rs b/crates/ink/tests/ui/storage_item/pass/non_packed_tuple_struct.rs similarity index 95% rename from crates/lang/tests/ui/storage_item/pass/non_packed_tuple_struct.rs rename to crates/ink/tests/ui/storage_item/pass/non_packed_tuple_struct.rs index 8211be89b43..d1b4e12936d 100644 --- a/crates/lang/tests/ui/storage_item/pass/non_packed_tuple_struct.rs +++ b/crates/ink/tests/ui/storage_item/pass/non_packed_tuple_struct.rs @@ -5,7 +5,7 @@ use ink_storage::{ Mapping, }; -#[ink_lang::storage_item] +#[ink::storage_item] #[derive(Default)] struct Contract(Mapping, Lazy); diff --git a/crates/lang/tests/ui/storage_item/pass/packed_tuple_struct.rs b/crates/ink/tests/ui/storage_item/pass/packed_tuple_struct.rs similarity index 100% rename from crates/lang/tests/ui/storage_item/pass/packed_tuple_struct.rs rename to crates/ink/tests/ui/storage_item/pass/packed_tuple_struct.rs diff --git a/crates/lang/tests/ui/trait_def/fail/config_keep_attr_invalid_type.rs b/crates/ink/tests/ui/trait_def/fail/config_keep_attr_invalid_type.rs similarity index 85% rename from crates/lang/tests/ui/trait_def/fail/config_keep_attr_invalid_type.rs rename to crates/ink/tests/ui/trait_def/fail/config_keep_attr_invalid_type.rs index a1991a23074..3388a267a80 100644 --- a/crates/lang/tests/ui/trait_def/fail/config_keep_attr_invalid_type.rs +++ b/crates/ink/tests/ui/trait_def/fail/config_keep_attr_invalid_type.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition(keep_attr = true)] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/ink/tests/ui/trait_def/fail/config_keep_attr_invalid_type.stderr b/crates/ink/tests/ui/trait_def/fail/config_keep_attr_invalid_type.stderr new file mode 100644 index 00000000000..ba70f32b699 --- /dev/null +++ b/crates/ink/tests/ui/trait_def/fail/config_keep_attr_invalid_type.stderr @@ -0,0 +1,5 @@ +error: expected a string with attributes separated by `,` + --> tests/ui/trait_def/fail/config_keep_attr_invalid_type.rs:1:25 + | +1 | #[ink::trait_definition(keep_attr = true)] + | ^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/config_keep_attr_missing_arg.rs b/crates/ink/tests/ui/trait_def/fail/config_keep_attr_missing_arg.rs similarity index 84% rename from crates/lang/tests/ui/trait_def/fail/config_keep_attr_missing_arg.rs rename to crates/ink/tests/ui/trait_def/fail/config_keep_attr_missing_arg.rs index 04618f46905..3b2890fa1c7 100644 --- a/crates/lang/tests/ui/trait_def/fail/config_keep_attr_missing_arg.rs +++ b/crates/ink/tests/ui/trait_def/fail/config_keep_attr_missing_arg.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition(keep_attr)] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/lang/tests/ui/trait_def/fail/config_keep_attr_missing_arg.stderr b/crates/ink/tests/ui/trait_def/fail/config_keep_attr_missing_arg.stderr similarity index 50% rename from crates/lang/tests/ui/trait_def/fail/config_keep_attr_missing_arg.stderr rename to crates/ink/tests/ui/trait_def/fail/config_keep_attr_missing_arg.stderr index a38fc3243d3..6b9d883a1b1 100644 --- a/crates/lang/tests/ui/trait_def/fail/config_keep_attr_missing_arg.stderr +++ b/crates/ink/tests/ui/trait_def/fail/config_keep_attr_missing_arg.stderr @@ -1,5 +1,5 @@ error: ink! config options require an argument separated by '=' - --> tests/ui/trait_def/fail/config_keep_attr_missing_arg.rs:3:25 + --> tests/ui/trait_def/fail/config_keep_attr_missing_arg.rs:1:25 | -3 | #[ink::trait_definition(keep_attr)] +1 | #[ink::trait_definition(keep_attr)] | ^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_1.rs b/crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_1.rs similarity index 87% rename from crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_1.rs rename to crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_1.rs index 4a1469bf840..6619d331193 100644 --- a/crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_1.rs +++ b/crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_1.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition(namespace = "::invalid::rust::identifier")] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_1.stderr b/crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_1.stderr similarity index 57% rename from crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_1.stderr rename to crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_1.stderr index 408b47b84c3..f871a87a87c 100644 --- a/crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_1.stderr +++ b/crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_1.stderr @@ -1,5 +1,5 @@ error: encountered invalid Rust identifier for the ink! namespace configuration parameter - --> tests/ui/trait_def/fail/config_namespace_invalid_1.rs:3:37 + --> tests/ui/trait_def/fail/config_namespace_invalid_1.rs:1:37 | -3 | #[ink::trait_definition(namespace = "::invalid::rust::identifier")] +1 | #[ink::trait_definition(namespace = "::invalid::rust::identifier")] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_2.rs b/crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_2.rs similarity index 84% rename from crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_2.rs rename to crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_2.rs index 902c33b8193..0d8d0d397e9 100644 --- a/crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_2.rs +++ b/crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_2.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition(namespace)] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_2.stderr b/crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_2.stderr similarity index 50% rename from crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_2.stderr rename to crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_2.stderr index 704e3fb61b7..d0db5ea758c 100644 --- a/crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_2.stderr +++ b/crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_2.stderr @@ -1,5 +1,5 @@ error: ink! config options require an argument separated by '=' - --> tests/ui/trait_def/fail/config_namespace_invalid_2.rs:3:25 + --> tests/ui/trait_def/fail/config_namespace_invalid_2.rs:1:25 | -3 | #[ink::trait_definition(namespace)] +1 | #[ink::trait_definition(namespace)] | ^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_3.rs b/crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_3.rs similarity index 85% rename from crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_3.rs rename to crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_3.rs index a958d19b9ab..1d24fe71fad 100644 --- a/crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_3.rs +++ b/crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_3.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition(namespace = "")] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_3.stderr b/crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_3.stderr similarity index 55% rename from crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_3.stderr rename to crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_3.stderr index 38ae37022b8..c4afc54a53d 100644 --- a/crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_3.stderr +++ b/crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_3.stderr @@ -1,5 +1,5 @@ error: encountered invalid Rust identifier for the ink! namespace configuration parameter - --> tests/ui/trait_def/fail/config_namespace_invalid_3.rs:3:37 + --> tests/ui/trait_def/fail/config_namespace_invalid_3.rs:1:37 | -3 | #[ink::trait_definition(namespace = "")] +1 | #[ink::trait_definition(namespace = "")] | ^^ diff --git a/crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_4.rs b/crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_4.rs similarity index 85% rename from crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_4.rs rename to crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_4.rs index 8a3bf563569..44d37380aaf 100644 --- a/crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_4.rs +++ b/crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_4.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition(namespace = true)] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_4.stderr b/crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_4.stderr similarity index 56% rename from crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_4.stderr rename to crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_4.stderr index ff715414d97..a609223a57f 100644 --- a/crates/lang/tests/ui/trait_def/fail/config_namespace_invalid_4.stderr +++ b/crates/ink/tests/ui/trait_def/fail/config_namespace_invalid_4.stderr @@ -1,5 +1,5 @@ error: expected a string literal for `namespace` ink! trait definition configuration argument - --> tests/ui/trait_def/fail/config_namespace_invalid_4.rs:3:25 + --> tests/ui/trait_def/fail/config_namespace_invalid_4.rs:1:25 | -3 | #[ink::trait_definition(namespace = true)] +1 | #[ink::trait_definition(namespace = true)] | ^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/definition_assoc_const.rs b/crates/ink/tests/ui/trait_def/fail/definition_assoc_const.rs similarity index 86% rename from crates/lang/tests/ui/trait_def/fail/definition_assoc_const.rs rename to crates/ink/tests/ui/trait_def/fail/definition_assoc_const.rs index ffcefe15f5e..201d48382d1 100644 --- a/crates/lang/tests/ui/trait_def/fail/definition_assoc_const.rs +++ b/crates/ink/tests/ui/trait_def/fail/definition_assoc_const.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { const CONST: bool; diff --git a/crates/lang/tests/ui/trait_def/fail/definition_assoc_const.stderr b/crates/ink/tests/ui/trait_def/fail/definition_assoc_const.stderr similarity index 55% rename from crates/lang/tests/ui/trait_def/fail/definition_assoc_const.stderr rename to crates/ink/tests/ui/trait_def/fail/definition_assoc_const.stderr index 7ab42234547..cab9ed7e31b 100644 --- a/crates/lang/tests/ui/trait_def/fail/definition_assoc_const.stderr +++ b/crates/ink/tests/ui/trait_def/fail/definition_assoc_const.stderr @@ -1,5 +1,5 @@ error: associated constants in ink! trait definitions are not supported, yet - --> tests/ui/trait_def/fail/definition_assoc_const.rs:5:5 + --> tests/ui/trait_def/fail/definition_assoc_const.rs:3:5 | -5 | const CONST: bool; +3 | const CONST: bool; | ^^^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/definition_assoc_type.rs b/crates/ink/tests/ui/trait_def/fail/definition_assoc_type.rs similarity index 85% rename from crates/lang/tests/ui/trait_def/fail/definition_assoc_type.rs rename to crates/ink/tests/ui/trait_def/fail/definition_assoc_type.rs index ec92bf262fc..51920218064 100644 --- a/crates/lang/tests/ui/trait_def/fail/definition_assoc_type.rs +++ b/crates/ink/tests/ui/trait_def/fail/definition_assoc_type.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { type Type; diff --git a/crates/lang/tests/ui/trait_def/fail/definition_assoc_type.stderr b/crates/ink/tests/ui/trait_def/fail/definition_assoc_type.stderr similarity index 55% rename from crates/lang/tests/ui/trait_def/fail/definition_assoc_type.stderr rename to crates/ink/tests/ui/trait_def/fail/definition_assoc_type.stderr index 14bdfbd199b..f6eaf9862db 100644 --- a/crates/lang/tests/ui/trait_def/fail/definition_assoc_type.stderr +++ b/crates/ink/tests/ui/trait_def/fail/definition_assoc_type.stderr @@ -1,5 +1,5 @@ error: associated types in ink! trait definitions are not supported, yet - --> tests/ui/trait_def/fail/definition_assoc_type.rs:5:5 + --> tests/ui/trait_def/fail/definition_assoc_type.rs:3:5 | -5 | type Type; +3 | type Type; | ^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/definition_constructor.rs b/crates/ink/tests/ui/trait_def/fail/definition_constructor.rs similarity index 84% rename from crates/lang/tests/ui/trait_def/fail/definition_constructor.rs rename to crates/ink/tests/ui/trait_def/fail/definition_constructor.rs index d33b5b2ac90..2f09f5f5e84 100644 --- a/crates/lang/tests/ui/trait_def/fail/definition_constructor.rs +++ b/crates/ink/tests/ui/trait_def/fail/definition_constructor.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(constructor)] diff --git a/crates/ink/tests/ui/trait_def/fail/definition_constructor.stderr b/crates/ink/tests/ui/trait_def/fail/definition_constructor.stderr new file mode 100644 index 00000000000..6ab123fba0e --- /dev/null +++ b/crates/ink/tests/ui/trait_def/fail/definition_constructor.stderr @@ -0,0 +1,5 @@ +error: ink! trait definitions must not have constructors + --> tests/ui/trait_def/fail/definition_constructor.rs:3:5 + | +3 | #[ink(constructor)] + | ^ diff --git a/crates/lang/tests/ui/trait_def/fail/definition_empty.rs b/crates/ink/tests/ui/trait_def/fail/definition_empty.rs similarity index 75% rename from crates/lang/tests/ui/trait_def/fail/definition_empty.rs rename to crates/ink/tests/ui/trait_def/fail/definition_empty.rs index 16017df57ce..9f05ae5f3db 100644 --- a/crates/lang/tests/ui/trait_def/fail/definition_empty.rs +++ b/crates/ink/tests/ui/trait_def/fail/definition_empty.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition {} diff --git a/crates/ink/tests/ui/trait_def/fail/definition_empty.stderr b/crates/ink/tests/ui/trait_def/fail/definition_empty.stderr new file mode 100644 index 00000000000..fee507687a6 --- /dev/null +++ b/crates/ink/tests/ui/trait_def/fail/definition_empty.stderr @@ -0,0 +1,5 @@ +error: encountered invalid empty ink! trait definition + --> tests/ui/trait_def/fail/definition_empty.rs:2:1 + | +2 | pub trait TraitDefinition {} + | ^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/definition_generic.rs b/crates/ink/tests/ui/trait_def/fail/definition_generic.rs similarity index 83% rename from crates/lang/tests/ui/trait_def/fail/definition_generic.rs rename to crates/ink/tests/ui/trait_def/fail/definition_generic.rs index 7d1d4dd1e2e..90733cb7bc0 100644 --- a/crates/lang/tests/ui/trait_def/fail/definition_generic.rs +++ b/crates/ink/tests/ui/trait_def/fail/definition_generic.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/ink/tests/ui/trait_def/fail/definition_generic.stderr b/crates/ink/tests/ui/trait_def/fail/definition_generic.stderr new file mode 100644 index 00000000000..67e2f16584c --- /dev/null +++ b/crates/ink/tests/ui/trait_def/fail/definition_generic.stderr @@ -0,0 +1,5 @@ +error: ink! trait definitions must not be generic + --> tests/ui/trait_def/fail/definition_generic.rs:2:27 + | +2 | pub trait TraitDefinition { + | ^ diff --git a/crates/lang/tests/ui/trait_def/fail/definition_non_pub.rs b/crates/ink/tests/ui/trait_def/fail/definition_non_pub.rs similarity index 83% rename from crates/lang/tests/ui/trait_def/fail/definition_non_pub.rs rename to crates/ink/tests/ui/trait_def/fail/definition_non_pub.rs index 01feb85065b..d125636cc62 100644 --- a/crates/lang/tests/ui/trait_def/fail/definition_non_pub.rs +++ b/crates/ink/tests/ui/trait_def/fail/definition_non_pub.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] trait TraitDefinition { #[ink(message)] diff --git a/crates/lang/tests/ui/trait_def/fail/definition_non_pub.stderr b/crates/ink/tests/ui/trait_def/fail/definition_non_pub.stderr similarity index 73% rename from crates/lang/tests/ui/trait_def/fail/definition_non_pub.stderr rename to crates/ink/tests/ui/trait_def/fail/definition_non_pub.stderr index b5599832038..76735f758cf 100644 --- a/crates/lang/tests/ui/trait_def/fail/definition_non_pub.stderr +++ b/crates/ink/tests/ui/trait_def/fail/definition_non_pub.stderr @@ -1,7 +1,7 @@ error: ink! trait definitions must have public visibility - --> tests/ui/trait_def/fail/definition_non_pub.rs:3:1 + --> tests/ui/trait_def/fail/definition_non_pub.rs:1:1 | -3 | #[ink::trait_definition] +1 | #[ink::trait_definition] | ^^^^^^^^^^^^^^^^^^^^^^^^ | = note: this error originates in the attribute macro `ink::trait_definition` (in Nightly builds, run with -Z macro-backtrace for more info) diff --git a/crates/lang/tests/ui/trait_def/fail/definition_rust_method.rs b/crates/ink/tests/ui/trait_def/fail/definition_rust_method.rs similarity index 81% rename from crates/lang/tests/ui/trait_def/fail/definition_rust_method.rs rename to crates/ink/tests/ui/trait_def/fail/definition_rust_method.rs index 61618c1d58f..bfad5c463a8 100644 --- a/crates/lang/tests/ui/trait_def/fail/definition_rust_method.rs +++ b/crates/ink/tests/ui/trait_def/fail/definition_rust_method.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { fn rust_method(&self); diff --git a/crates/lang/tests/ui/trait_def/fail/definition_rust_method.stderr b/crates/ink/tests/ui/trait_def/fail/definition_rust_method.stderr similarity index 56% rename from crates/lang/tests/ui/trait_def/fail/definition_rust_method.stderr rename to crates/ink/tests/ui/trait_def/fail/definition_rust_method.stderr index d47c5818d41..8ad88b198f6 100644 --- a/crates/lang/tests/ui/trait_def/fail/definition_rust_method.stderr +++ b/crates/ink/tests/ui/trait_def/fail/definition_rust_method.stderr @@ -1,5 +1,5 @@ error: missing #[ink(message)] or #[ink(constructor)] flags on ink! trait method - --> tests/ui/trait_def/fail/definition_rust_method.rs:5:5 + --> tests/ui/trait_def/fail/definition_rust_method.rs:3:5 | -5 | fn rust_method(&self); +3 | fn rust_method(&self); | ^^^^^^^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/definition_super_trait_invalid_1.rs b/crates/ink/tests/ui/trait_def/fail/definition_super_trait_invalid_1.rs similarity index 88% rename from crates/lang/tests/ui/trait_def/fail/definition_super_trait_invalid_1.rs rename to crates/ink/tests/ui/trait_def/fail/definition_super_trait_invalid_1.rs index 7ac4c1bd7eb..0a187ec61a4 100644 --- a/crates/lang/tests/ui/trait_def/fail/definition_super_trait_invalid_1.rs +++ b/crates/ink/tests/ui/trait_def/fail/definition_super_trait_invalid_1.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - pub trait SuperTraitDefinition {} #[ink::trait_definition] diff --git a/crates/lang/tests/ui/trait_def/fail/definition_super_trait_invalid_1.stderr b/crates/ink/tests/ui/trait_def/fail/definition_super_trait_invalid_1.stderr similarity index 76% rename from crates/lang/tests/ui/trait_def/fail/definition_super_trait_invalid_1.stderr rename to crates/ink/tests/ui/trait_def/fail/definition_super_trait_invalid_1.stderr index f66a8d803d8..80d6eec1d5b 100644 --- a/crates/lang/tests/ui/trait_def/fail/definition_super_trait_invalid_1.stderr +++ b/crates/ink/tests/ui/trait_def/fail/definition_super_trait_invalid_1.stderr @@ -1,5 +1,5 @@ error: ink! trait definitions with supertraits are not supported, yet - --> tests/ui/trait_def/fail/definition_super_trait_invalid_1.rs:6:28 + --> tests/ui/trait_def/fail/definition_super_trait_invalid_1.rs:4:28 | -6 | pub trait TraitDefinition: SuperTraitDefinition { +4 | pub trait TraitDefinition: SuperTraitDefinition { | ^^^^^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/definition_super_trait_invalid_2.rs b/crates/ink/tests/ui/trait_def/fail/definition_super_trait_invalid_2.rs similarity index 91% rename from crates/lang/tests/ui/trait_def/fail/definition_super_trait_invalid_2.rs rename to crates/ink/tests/ui/trait_def/fail/definition_super_trait_invalid_2.rs index 7cd35ebd119..b767c5fb1b4 100644 --- a/crates/lang/tests/ui/trait_def/fail/definition_super_trait_invalid_2.rs +++ b/crates/ink/tests/ui/trait_def/fail/definition_super_trait_invalid_2.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait SuperTraitDefinition { #[ink(message)] diff --git a/crates/ink/tests/ui/trait_def/fail/definition_super_trait_invalid_2.stderr b/crates/ink/tests/ui/trait_def/fail/definition_super_trait_invalid_2.stderr new file mode 100644 index 00000000000..a5393667310 --- /dev/null +++ b/crates/ink/tests/ui/trait_def/fail/definition_super_trait_invalid_2.stderr @@ -0,0 +1,5 @@ +error: ink! trait definitions with supertraits are not supported, yet + --> tests/ui/trait_def/fail/definition_super_trait_invalid_2.rs:8:28 + | +8 | pub trait TraitDefinition: SuperTraitDefinition { + | ^^^^^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/definition_unsafe.rs b/crates/ink/tests/ui/trait_def/fail/definition_unsafe.rs similarity index 84% rename from crates/lang/tests/ui/trait_def/fail/definition_unsafe.rs rename to crates/ink/tests/ui/trait_def/fail/definition_unsafe.rs index cd4b6a23d99..8329635387e 100644 --- a/crates/lang/tests/ui/trait_def/fail/definition_unsafe.rs +++ b/crates/ink/tests/ui/trait_def/fail/definition_unsafe.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub unsafe trait TraitDefinition { #[ink(message)] diff --git a/crates/ink/tests/ui/trait_def/fail/definition_unsafe.stderr b/crates/ink/tests/ui/trait_def/fail/definition_unsafe.stderr new file mode 100644 index 00000000000..ab456c9f0ba --- /dev/null +++ b/crates/ink/tests/ui/trait_def/fail/definition_unsafe.stderr @@ -0,0 +1,5 @@ +error: ink! trait definitions cannot be unsafe + --> tests/ui/trait_def/fail/definition_unsafe.rs:2:5 + | +2 | pub unsafe trait TraitDefinition { + | ^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_abi_invalid.rs b/crates/ink/tests/ui/trait_def/fail/message_abi_invalid.rs similarity index 89% rename from crates/lang/tests/ui/trait_def/fail/message_abi_invalid.rs rename to crates/ink/tests/ui/trait_def/fail/message_abi_invalid.rs index 187c6fd5655..bd49ca06a75 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_abi_invalid.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_abi_invalid.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/ink/tests/ui/trait_def/fail/message_abi_invalid.stderr b/crates/ink/tests/ui/trait_def/fail/message_abi_invalid.stderr new file mode 100644 index 00000000000..ce042eec92c --- /dev/null +++ b/crates/ink/tests/ui/trait_def/fail/message_abi_invalid.stderr @@ -0,0 +1,5 @@ +error: ink! trait methods with non default ABI are not supported + --> tests/ui/trait_def/fail/message_abi_invalid.rs:4:5 + | +4 | extern "C" fn message_ref(&self); + | ^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_async_invalid.rs b/crates/ink/tests/ui/trait_def/fail/message_async_invalid.rs similarity index 89% rename from crates/lang/tests/ui/trait_def/fail/message_async_invalid.rs rename to crates/ink/tests/ui/trait_def/fail/message_async_invalid.rs index 0f28b00f519..ab165f8c54f 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_async_invalid.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_async_invalid.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/ink/tests/ui/trait_def/fail/message_async_invalid.stderr b/crates/ink/tests/ui/trait_def/fail/message_async_invalid.stderr new file mode 100644 index 00000000000..fd0e26adcad --- /dev/null +++ b/crates/ink/tests/ui/trait_def/fail/message_async_invalid.stderr @@ -0,0 +1,5 @@ +error: async ink! trait methods are not supported + --> tests/ui/trait_def/fail/message_async_invalid.rs:4:5 + | +4 | async fn message_ref(&self); + | ^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_const_invalid.rs b/crates/ink/tests/ui/trait_def/fail/message_const_invalid.rs similarity index 89% rename from crates/lang/tests/ui/trait_def/fail/message_const_invalid.rs rename to crates/ink/tests/ui/trait_def/fail/message_const_invalid.rs index e5fec9a3a0f..8dac7d58872 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_const_invalid.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_const_invalid.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/ink/tests/ui/trait_def/fail/message_const_invalid.stderr b/crates/ink/tests/ui/trait_def/fail/message_const_invalid.stderr new file mode 100644 index 00000000000..e597f7ddb27 --- /dev/null +++ b/crates/ink/tests/ui/trait_def/fail/message_const_invalid.stderr @@ -0,0 +1,5 @@ +error: const ink! trait methods are not supported + --> tests/ui/trait_def/fail/message_const_invalid.rs:4:5 + | +4 | const fn message_ref(&self); + | ^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_constructor_conflict.rs b/crates/ink/tests/ui/trait_def/fail/message_constructor_conflict.rs similarity index 85% rename from crates/lang/tests/ui/trait_def/fail/message_constructor_conflict.rs rename to crates/ink/tests/ui/trait_def/fail/message_constructor_conflict.rs index 304b077bef1..46878af3191 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_constructor_conflict.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_constructor_conflict.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message, constructor)] diff --git a/crates/ink/tests/ui/trait_def/fail/message_constructor_conflict.stderr b/crates/ink/tests/ui/trait_def/fail/message_constructor_conflict.stderr new file mode 100644 index 00000000000..6289bc6d814 --- /dev/null +++ b/crates/ink/tests/ui/trait_def/fail/message_constructor_conflict.stderr @@ -0,0 +1,5 @@ +error: encountered conflicting ink! attribute argument + --> tests/ui/trait_def/fail/message_constructor_conflict.rs:3:20 + | +3 | #[ink(message, constructor)] + | ^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_default_impl.rs b/crates/ink/tests/ui/trait_def/fail/message_default_impl.rs similarity index 83% rename from crates/lang/tests/ui/trait_def/fail/message_default_impl.rs rename to crates/ink/tests/ui/trait_def/fail/message_default_impl.rs index 9345cd8d27f..ac2addf98c7 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_default_impl.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_default_impl.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/lang/tests/ui/trait_def/fail/message_default_impl.stderr b/crates/ink/tests/ui/trait_def/fail/message_default_impl.stderr similarity index 54% rename from crates/lang/tests/ui/trait_def/fail/message_default_impl.stderr rename to crates/ink/tests/ui/trait_def/fail/message_default_impl.stderr index aba46f5059d..ec77616a948 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_default_impl.stderr +++ b/crates/ink/tests/ui/trait_def/fail/message_default_impl.stderr @@ -1,5 +1,5 @@ error: ink! trait methods with default implementations are not supported - --> tests/ui/trait_def/fail/message_default_impl.rs:6:23 + --> tests/ui/trait_def/fail/message_default_impl.rs:4:23 | -6 | fn message(&self) {} +4 | fn message(&self) {} | ^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_generic_invalid.rs b/crates/ink/tests/ui/trait_def/fail/message_generic_invalid.rs similarity index 88% rename from crates/lang/tests/ui/trait_def/fail/message_generic_invalid.rs rename to crates/ink/tests/ui/trait_def/fail/message_generic_invalid.rs index 9c618b3dcfd..a080a9f0f17 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_generic_invalid.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_generic_invalid.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/ink/tests/ui/trait_def/fail/message_generic_invalid.stderr b/crates/ink/tests/ui/trait_def/fail/message_generic_invalid.stderr new file mode 100644 index 00000000000..316508224f1 --- /dev/null +++ b/crates/ink/tests/ui/trait_def/fail/message_generic_invalid.stderr @@ -0,0 +1,5 @@ +error: generic ink! trait methods are not supported + --> tests/ui/trait_def/fail/message_generic_invalid.rs:4:20 + | +4 | fn message_ref(&self); + | ^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_input_non_codec.rs b/crates/ink/tests/ui/trait_def/fail/message_input_non_codec.rs similarity index 87% rename from crates/lang/tests/ui/trait_def/fail/message_input_non_codec.rs rename to crates/ink/tests/ui/trait_def/fail/message_input_non_codec.rs index 597145606f3..b9da73e1a67 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_input_non_codec.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_input_non_codec.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - pub struct NonCodec; #[ink::trait_definition] diff --git a/crates/lang/tests/ui/trait_def/fail/message_input_non_codec.stderr b/crates/ink/tests/ui/trait_def/fail/message_input_non_codec.stderr similarity index 69% rename from crates/lang/tests/ui/trait_def/fail/message_input_non_codec.stderr rename to crates/ink/tests/ui/trait_def/fail/message_input_non_codec.stderr index 90e3ff499e6..1cc4417dedf 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_input_non_codec.stderr +++ b/crates/ink/tests/ui/trait_def/fail/message_input_non_codec.stderr @@ -1,7 +1,7 @@ error[E0277]: the trait bound `NonCodec: WrapperTypeDecode` is not satisfied - --> tests/ui/trait_def/fail/message_input_non_codec.rs:8:23 + --> tests/ui/trait_def/fail/message_input_non_codec.rs:6:23 | -8 | fn message(&self, input: NonCodec); +6 | fn message(&self, input: NonCodec); | ^^^^^ the trait `WrapperTypeDecode` is not implemented for `NonCodec` | = help: the following other types implement trait `WrapperTypeDecode`: @@ -16,9 +16,9 @@ note: required by a bound in `DispatchInput` | ^^^^^^^^^^^^^ required by this bound in `DispatchInput` error[E0277]: the trait bound `NonCodec: WrapperTypeEncode` is not satisfied - --> tests/ui/trait_def/fail/message_input_non_codec.rs:7:5 + --> tests/ui/trait_def/fail/message_input_non_codec.rs:5:5 | -7 | #[ink(message)] +5 | #[ink(message)] | ^ the trait `WrapperTypeEncode` is not implemented for `NonCodec` | = help: the following other types implement trait `WrapperTypeEncode`: @@ -38,11 +38,11 @@ note: required by a bound in `ExecutionInput::>::push_arg` -error[E0599]: the method `fire` exists for struct `CallBuilder>, Set, ArgumentList>>>, Set>>`, but its trait bounds were not satisfied - --> tests/ui/trait_def/fail/message_input_non_codec.rs:7:5 +error[E0599]: the method `fire` exists for struct `CallBuilder>, Set, ArgumentList>>>, Set>>`, but its trait bounds were not satisfied + --> tests/ui/trait_def/fail/message_input_non_codec.rs:5:5 | -7 | #[ink(message)] - | ^ method cannot be called on `CallBuilder>, Set, ArgumentList>>>, Set>>` due to unsatisfied trait bounds +5 | #[ink(message)] + | ^ method cannot be called on `CallBuilder>, Set, ArgumentList>>>, Set>>` due to unsatisfied trait bounds | ::: $WORKSPACE/crates/env/src/call/execution_input.rs | @@ -50,4 +50,4 @@ error[E0599]: the method `fire` exists for struct `CallBuilder>, | ----------------------------------- doesn't satisfy `_: Encode` | = note: the following trait bounds were not satisfied: - `ArgumentList, ArgumentList>: Encode` + `ArgumentList, ArgumentList>: Encode` diff --git a/crates/lang/tests/ui/trait_def/fail/message_input_pattern_invalid.rs b/crates/ink/tests/ui/trait_def/fail/message_input_pattern_invalid.rs similarity index 85% rename from crates/lang/tests/ui/trait_def/fail/message_input_pattern_invalid.rs rename to crates/ink/tests/ui/trait_def/fail/message_input_pattern_invalid.rs index a38362c3d9e..56ba37a2311 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_input_pattern_invalid.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_input_pattern_invalid.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/lang/tests/ui/trait_def/fail/message_input_pattern_invalid.stderr b/crates/ink/tests/ui/trait_def/fail/message_input_pattern_invalid.stderr similarity index 57% rename from crates/lang/tests/ui/trait_def/fail/message_input_pattern_invalid.stderr rename to crates/ink/tests/ui/trait_def/fail/message_input_pattern_invalid.stderr index dedc7539320..693165796fc 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_input_pattern_invalid.stderr +++ b/crates/ink/tests/ui/trait_def/fail/message_input_pattern_invalid.stderr @@ -1,5 +1,5 @@ error[E0642]: patterns aren't allowed in functions without bodies - --> tests/ui/trait_def/fail/message_input_pattern_invalid.rs:6:23 + --> tests/ui/trait_def/fail/message_input_pattern_invalid.rs:4:23 | -6 | fn message(&self, (a, b): (i32, i32)); +4 | fn message(&self, (a, b): (i32, i32)); | ^^^^^^ pattern not allowed in function without body diff --git a/crates/lang/tests/ui/trait_def/fail/message_output_non_codec.rs b/crates/ink/tests/ui/trait_def/fail/message_output_non_codec.rs similarity index 86% rename from crates/lang/tests/ui/trait_def/fail/message_output_non_codec.rs rename to crates/ink/tests/ui/trait_def/fail/message_output_non_codec.rs index 32555e9d6d2..4d027b98c06 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_output_non_codec.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_output_non_codec.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - pub struct NonCodec; #[ink::trait_definition] diff --git a/crates/lang/tests/ui/trait_def/fail/message_output_non_codec.stderr b/crates/ink/tests/ui/trait_def/fail/message_output_non_codec.stderr similarity index 88% rename from crates/lang/tests/ui/trait_def/fail/message_output_non_codec.stderr rename to crates/ink/tests/ui/trait_def/fail/message_output_non_codec.stderr index 073fbb3486b..d717b786c5e 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_output_non_codec.stderr +++ b/crates/ink/tests/ui/trait_def/fail/message_output_non_codec.stderr @@ -1,7 +1,7 @@ error[E0277]: the trait bound `NonCodec: WrapperTypeEncode` is not satisfied - --> tests/ui/trait_def/fail/message_output_non_codec.rs:8:26 + --> tests/ui/trait_def/fail/message_output_non_codec.rs:6:26 | -8 | fn message(&self) -> NonCodec; +6 | fn message(&self) -> NonCodec; | ^^^^^^^^ the trait `WrapperTypeEncode` is not implemented for `NonCodec` | = help: the following other types implement trait `WrapperTypeEncode`: @@ -22,12 +22,12 @@ note: required by a bound in `DispatchOutput` | ^^^^^^^^^^^^^ required by this bound in `DispatchOutput` error[E0599]: the method `fire` exists for struct `CallBuilder>, Set>>, Set>>`, but its trait bounds were not satisfied - --> tests/ui/trait_def/fail/message_output_non_codec.rs:7:5 + --> tests/ui/trait_def/fail/message_output_non_codec.rs:5:5 | -3 | pub struct NonCodec; +1 | pub struct NonCodec; | -------------------- doesn't satisfy `NonCodec: parity_scale_codec::Decode` ... -7 | #[ink(message)] +5 | #[ink(message)] | ^ method cannot be called on `CallBuilder>, Set>>, Set>>` due to unsatisfied trait bounds | = note: the following trait bounds were not satisfied: diff --git a/crates/lang/tests/ui/trait_def/fail/message_payable_invalid_1.rs b/crates/ink/tests/ui/trait_def/fail/message_payable_invalid_1.rs similarity index 85% rename from crates/lang/tests/ui/trait_def/fail/message_payable_invalid_1.rs rename to crates/ink/tests/ui/trait_def/fail/message_payable_invalid_1.rs index 9810fc483f8..7304a54c30e 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_payable_invalid_1.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_payable_invalid_1.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message, payable = false)] diff --git a/crates/ink/tests/ui/trait_def/fail/message_payable_invalid_1.stderr b/crates/ink/tests/ui/trait_def/fail/message_payable_invalid_1.stderr new file mode 100644 index 00000000000..4e073342fb0 --- /dev/null +++ b/crates/ink/tests/ui/trait_def/fail/message_payable_invalid_1.stderr @@ -0,0 +1,5 @@ +error: unknown ink! attribute argument (name = value) + --> tests/ui/trait_def/fail/message_payable_invalid_1.rs:3:20 + | +3 | #[ink(message, payable = false)] + | ^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_payable_invalid_2.rs b/crates/ink/tests/ui/trait_def/fail/message_payable_invalid_2.rs similarity index 85% rename from crates/lang/tests/ui/trait_def/fail/message_payable_invalid_2.rs rename to crates/ink/tests/ui/trait_def/fail/message_payable_invalid_2.rs index efef5826302..442ef01b3a8 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_payable_invalid_2.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_payable_invalid_2.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message, payable = true)] diff --git a/crates/ink/tests/ui/trait_def/fail/message_payable_invalid_2.stderr b/crates/ink/tests/ui/trait_def/fail/message_payable_invalid_2.stderr new file mode 100644 index 00000000000..f27d313b995 --- /dev/null +++ b/crates/ink/tests/ui/trait_def/fail/message_payable_invalid_2.stderr @@ -0,0 +1,5 @@ +error: unknown ink! attribute argument (name = value) + --> tests/ui/trait_def/fail/message_payable_invalid_2.rs:3:20 + | +3 | #[ink(message, payable = true)] + | ^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_1.rs b/crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_1.rs similarity index 82% rename from crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_1.rs rename to crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_1.rs index bd3551d85cf..9a7eb685fd2 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_1.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_1.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_1.stderr b/crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_1.stderr similarity index 54% rename from crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_1.stderr rename to crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_1.stderr index c81f1bd2d4f..0fa4e3bcb25 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_1.stderr +++ b/crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_1.stderr @@ -1,5 +1,5 @@ error: missing or malformed `&self` or `&mut self` receiver for ink! message - --> tests/ui/trait_def/fail/message_receiver_invalid_1.rs:6:5 + --> tests/ui/trait_def/fail/message_receiver_invalid_1.rs:4:5 | -6 | fn message(); +4 | fn message(); | ^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_2.rs b/crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_2.rs similarity index 84% rename from crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_2.rs rename to crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_2.rs index 1569878e5a2..0023dbeade9 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_2.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_2.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_2.stderr b/crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_2.stderr similarity index 54% rename from crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_2.stderr rename to crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_2.stderr index bbe8fef44a8..94fe205b698 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_2.stderr +++ b/crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_2.stderr @@ -1,5 +1,5 @@ error: missing or malformed `&self` or `&mut self` receiver for ink! message - --> tests/ui/trait_def/fail/message_receiver_invalid_2.rs:6:5 + --> tests/ui/trait_def/fail/message_receiver_invalid_2.rs:4:5 | -6 | fn message(this: Self); +4 | fn message(this: Self); | ^^^^^^^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_3.rs b/crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_3.rs similarity index 84% rename from crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_3.rs rename to crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_3.rs index 91a28bf11a5..3c2d992c0bf 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_3.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_3.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_3.stderr b/crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_3.stderr similarity index 54% rename from crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_3.stderr rename to crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_3.stderr index 59e41cd4c4a..d007fb6832d 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_receiver_invalid_3.stderr +++ b/crates/ink/tests/ui/trait_def/fail/message_receiver_invalid_3.stderr @@ -1,5 +1,5 @@ error: missing or malformed `&self` or `&mut self` receiver for ink! message - --> tests/ui/trait_def/fail/message_receiver_invalid_3.rs:6:5 + --> tests/ui/trait_def/fail/message_receiver_invalid_3.rs:4:5 | -6 | fn message(this: &Self); +4 | fn message(this: &Self); | ^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_receiver_missing.rs b/crates/ink/tests/ui/trait_def/fail/message_receiver_missing.rs similarity index 82% rename from crates/lang/tests/ui/trait_def/fail/message_receiver_missing.rs rename to crates/ink/tests/ui/trait_def/fail/message_receiver_missing.rs index bd3551d85cf..9a7eb685fd2 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_receiver_missing.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_receiver_missing.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/lang/tests/ui/trait_def/fail/message_receiver_missing.stderr b/crates/ink/tests/ui/trait_def/fail/message_receiver_missing.stderr similarity index 55% rename from crates/lang/tests/ui/trait_def/fail/message_receiver_missing.stderr rename to crates/ink/tests/ui/trait_def/fail/message_receiver_missing.stderr index 3f89dbd8c7a..cfb56ed9cd0 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_receiver_missing.stderr +++ b/crates/ink/tests/ui/trait_def/fail/message_receiver_missing.stderr @@ -1,5 +1,5 @@ error: missing or malformed `&self` or `&mut self` receiver for ink! message - --> tests/ui/trait_def/fail/message_receiver_missing.rs:6:5 + --> tests/ui/trait_def/fail/message_receiver_missing.rs:4:5 | -6 | fn message(); +4 | fn message(); | ^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_selector_invalid_1.rs b/crates/ink/tests/ui/trait_def/fail/message_selector_invalid_1.rs similarity index 85% rename from crates/lang/tests/ui/trait_def/fail/message_selector_invalid_1.rs rename to crates/ink/tests/ui/trait_def/fail/message_selector_invalid_1.rs index e90847277f2..83363fc85cd 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_selector_invalid_1.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_selector_invalid_1.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message, selector = true)] diff --git a/crates/lang/tests/ui/trait_def/fail/message_selector_invalid_1.stderr b/crates/ink/tests/ui/trait_def/fail/message_selector_invalid_1.stderr similarity index 54% rename from crates/lang/tests/ui/trait_def/fail/message_selector_invalid_1.stderr rename to crates/ink/tests/ui/trait_def/fail/message_selector_invalid_1.stderr index 97517012dc5..a50cbd6b793 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_selector_invalid_1.stderr +++ b/crates/ink/tests/ui/trait_def/fail/message_selector_invalid_1.stderr @@ -1,5 +1,5 @@ error: expected 4-digit hexcode for `selector` argument, e.g. #[ink(selector = 0xC0FEBABE] - --> tests/ui/trait_def/fail/message_selector_invalid_1.rs:5:20 + --> tests/ui/trait_def/fail/message_selector_invalid_1.rs:3:20 | -5 | #[ink(message, selector = true)] +3 | #[ink(message, selector = true)] | ^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_selector_invalid_2.rs b/crates/ink/tests/ui/trait_def/fail/message_selector_invalid_2.rs similarity index 84% rename from crates/lang/tests/ui/trait_def/fail/message_selector_invalid_2.rs rename to crates/ink/tests/ui/trait_def/fail/message_selector_invalid_2.rs index d76a5e1ca84..849a9a68a50 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_selector_invalid_2.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_selector_invalid_2.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message, selector)] diff --git a/crates/lang/tests/ui/trait_def/fail/message_selector_invalid_2.stderr b/crates/ink/tests/ui/trait_def/fail/message_selector_invalid_2.stderr similarity index 60% rename from crates/lang/tests/ui/trait_def/fail/message_selector_invalid_2.stderr rename to crates/ink/tests/ui/trait_def/fail/message_selector_invalid_2.stderr index 1b47d602f98..23ef46cb1e4 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_selector_invalid_2.stderr +++ b/crates/ink/tests/ui/trait_def/fail/message_selector_invalid_2.stderr @@ -1,5 +1,5 @@ error: encountered #[ink(selector)] that is missing its u32 parameter. Did you mean #[ink(selector = value: u32)] ? - --> tests/ui/trait_def/fail/message_selector_invalid_2.rs:5:20 + --> tests/ui/trait_def/fail/message_selector_invalid_2.rs:3:20 | -5 | #[ink(message, selector)] +3 | #[ink(message, selector)] | ^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_selector_overlap.rs b/crates/ink/tests/ui/trait_def/fail/message_selector_overlap.rs similarity index 89% rename from crates/lang/tests/ui/trait_def/fail/message_selector_overlap.rs rename to crates/ink/tests/ui/trait_def/fail/message_selector_overlap.rs index 0201eb88029..25edcd27983 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_selector_overlap.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_selector_overlap.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message, selector = 1)] diff --git a/crates/lang/tests/ui/trait_def/fail/message_selector_overlap.stderr b/crates/ink/tests/ui/trait_def/fail/message_selector_overlap.stderr similarity index 54% rename from crates/lang/tests/ui/trait_def/fail/message_selector_overlap.stderr rename to crates/ink/tests/ui/trait_def/fail/message_selector_overlap.stderr index 26530c48584..4051ffc12d6 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_selector_overlap.stderr +++ b/crates/ink/tests/ui/trait_def/fail/message_selector_overlap.stderr @@ -1,11 +1,11 @@ error: encountered duplicate selector ([0, 0, 0, 1]) in the same ink! trait definition - --> tests/ui/trait_def/fail/message_selector_overlap.rs:9:8 + --> tests/ui/trait_def/fail/message_selector_overlap.rs:7:8 | -9 | fn message_2(&self); +7 | fn message_2(&self); | ^^^^^^^^^ error: first ink! trait constructor or message with same selector found here - --> tests/ui/trait_def/fail/message_selector_overlap.rs:6:8 + --> tests/ui/trait_def/fail/message_selector_overlap.rs:4:8 | -6 | fn message_1(&self); +4 | fn message_1(&self); | ^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_unsafe_invalid.rs b/crates/ink/tests/ui/trait_def/fail/message_unsafe_invalid.rs similarity index 89% rename from crates/lang/tests/ui/trait_def/fail/message_unsafe_invalid.rs rename to crates/ink/tests/ui/trait_def/fail/message_unsafe_invalid.rs index b208bc3869c..dfd8e0be16a 100644 --- a/crates/lang/tests/ui/trait_def/fail/message_unsafe_invalid.rs +++ b/crates/ink/tests/ui/trait_def/fail/message_unsafe_invalid.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/ink/tests/ui/trait_def/fail/message_unsafe_invalid.stderr b/crates/ink/tests/ui/trait_def/fail/message_unsafe_invalid.stderr new file mode 100644 index 00000000000..dd576c1d9fd --- /dev/null +++ b/crates/ink/tests/ui/trait_def/fail/message_unsafe_invalid.stderr @@ -0,0 +1,5 @@ +error: unsafe ink! trait methods are not supported + --> tests/ui/trait_def/fail/message_unsafe_invalid.rs:4:5 + | +4 | unsafe fn message_ref(&self); + | ^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/pass/avoid_overlap_with_namespace.rs b/crates/ink/tests/ui/trait_def/pass/avoid_overlap_with_namespace.rs similarity index 94% rename from crates/lang/tests/ui/trait_def/pass/avoid_overlap_with_namespace.rs rename to crates/ink/tests/ui/trait_def/pass/avoid_overlap_with_namespace.rs index 8c92867e21e..d779395b701 100644 --- a/crates/lang/tests/ui/trait_def/pass/avoid_overlap_with_namespace.rs +++ b/crates/ink/tests/ui/trait_def/pass/avoid_overlap_with_namespace.rs @@ -1,6 +1,4 @@ mod foo { - use ink_lang as ink; - #[ink::trait_definition(namespace = "foo")] pub trait TraitDefinition { #[ink(message)] @@ -9,8 +7,6 @@ mod foo { } mod bar { - use ink_lang as ink; - #[ink::trait_definition(namespace = "bar")] pub trait TraitDefinition { #[ink(message)] @@ -20,8 +16,7 @@ mod bar { use bar::TraitDefinition as TraitDefinition2; use foo::TraitDefinition as TraitDefinition1; -use ink_env::DefaultEnvironment; -use ink_lang::{ +use ink::{ reflect::{ TraitDefinitionRegistry, TraitMessageInfo, @@ -29,6 +24,7 @@ use ink_lang::{ selector_bytes, selector_id, }; +use ink_env::DefaultEnvironment; fn main() { macro_rules! assert_selector_eq { diff --git a/crates/lang/tests/ui/trait_def/pass/many_inputs.rs b/crates/ink/tests/ui/trait_def/pass/many_inputs.rs similarity index 96% rename from crates/lang/tests/ui/trait_def/pass/many_inputs.rs rename to crates/ink/tests/ui/trait_def/pass/many_inputs.rs index da988352ab2..ed890ab4630 100644 --- a/crates/lang/tests/ui/trait_def/pass/many_inputs.rs +++ b/crates/ink/tests/ui/trait_def/pass/many_inputs.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait ManyInputs { #[ink(message)] diff --git a/crates/lang/tests/ui/trait_def/pass/many_outputs.rs b/crates/ink/tests/ui/trait_def/pass/many_outputs.rs similarity index 96% rename from crates/lang/tests/ui/trait_def/pass/many_outputs.rs rename to crates/ink/tests/ui/trait_def/pass/many_outputs.rs index 4f3cafb15d8..b8ce2ee3059 100644 --- a/crates/lang/tests/ui/trait_def/pass/many_outputs.rs +++ b/crates/ink/tests/ui/trait_def/pass/many_outputs.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait ManyOutputs { #[ink(message)] diff --git a/crates/lang/tests/ui/trait_def/pass/no-implicit-prelude.rs b/crates/ink/tests/ui/trait_def/pass/no-implicit-prelude.rs similarity index 83% rename from crates/lang/tests/ui/trait_def/pass/no-implicit-prelude.rs rename to crates/ink/tests/ui/trait_def/pass/no-implicit-prelude.rs index 29180717b1b..b8002dbbad0 100644 --- a/crates/lang/tests/ui/trait_def/pass/no-implicit-prelude.rs +++ b/crates/ink/tests/ui/trait_def/pass/no-implicit-prelude.rs @@ -1,6 +1,6 @@ #![no_implicit_prelude] -#[::ink_lang::trait_definition] +#[::ink::trait_definition] pub trait TraitDefinition { #[ink(message)] fn message(&self); diff --git a/crates/lang/tests/ui/trait_def/pass/payable_message.rs b/crates/ink/tests/ui/trait_def/pass/payable_message.rs similarity index 94% rename from crates/lang/tests/ui/trait_def/pass/payable_message.rs rename to crates/ink/tests/ui/trait_def/pass/payable_message.rs index 6f05e8574bf..e855836b6c1 100644 --- a/crates/lang/tests/ui/trait_def/pass/payable_message.rs +++ b/crates/ink/tests/ui/trait_def/pass/payable_message.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait PayableDefinition { #[ink(message, payable)] @@ -15,7 +13,7 @@ pub trait PayableDefinition { fn unpayable_mut(&mut self); } -use ink_lang::selector_id; +use ink::selector_id; const PAYABLE_ID: u32 = selector_id!("payable"); const PAYABLE_MUT_ID: u32 = selector_id!("payable_mut"); @@ -23,11 +21,11 @@ const UNPAYABLE_ID: u32 = selector_id!("unpayable"); const UNPAYABLE_MUT_ID: u32 = selector_id!("unpayable_mut"); fn main() { - use ink_env::DefaultEnvironment; - use ink_lang::reflect::{ + use ink::reflect::{ TraitDefinitionRegistry, TraitMessageInfo, }; + use ink_env::DefaultEnvironment; assert!( < as PayableDefinition>::__ink_TraitInfo diff --git a/crates/lang/tests/ui/trait_def/pass/simple_definition.rs b/crates/ink/tests/ui/trait_def/pass/simple_definition.rs similarity index 88% rename from crates/lang/tests/ui/trait_def/pass/simple_definition.rs rename to crates/ink/tests/ui/trait_def/pass/simple_definition.rs index 3bf7133d5d5..a3612d3abc3 100644 --- a/crates/lang/tests/ui/trait_def/pass/simple_definition.rs +++ b/crates/ink/tests/ui/trait_def/pass/simple_definition.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] diff --git a/crates/lang/tests/ui/trait_def/pass/using-env-types.rs b/crates/ink/tests/ui/trait_def/pass/using-env-types.rs similarity index 84% rename from crates/lang/tests/ui/trait_def/pass/using-env-types.rs rename to crates/ink/tests/ui/trait_def/pass/using-env-types.rs index 21500739bf5..2822af913e4 100644 --- a/crates/lang/tests/ui/trait_def/pass/using-env-types.rs +++ b/crates/ink/tests/ui/trait_def/pass/using-env-types.rs @@ -1,7 +1,5 @@ +use ink::reflect::ContractEnv; use ink_env::Environment; -use ink_lang::reflect::ContractEnv; - -use ink_lang as ink; #[ink::trait_definition] pub trait TraitDefinition { diff --git a/crates/lang/tests/ui/trait_def/pass/valid_selectors.rs b/crates/ink/tests/ui/trait_def/pass/valid_selectors.rs similarity index 96% rename from crates/lang/tests/ui/trait_def/pass/valid_selectors.rs rename to crates/ink/tests/ui/trait_def/pass/valid_selectors.rs index fc00d76e05c..a51b0238df2 100644 --- a/crates/lang/tests/ui/trait_def/pass/valid_selectors.rs +++ b/crates/ink/tests/ui/trait_def/pass/valid_selectors.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition] pub trait TraitDefinition { #[ink(message)] @@ -12,8 +10,7 @@ pub trait TraitDefinition { fn message3(&mut self); } -use ink_env::DefaultEnvironment; -use ink_lang::{ +use ink::{ reflect::{ TraitDefinitionRegistry, TraitMessageInfo, @@ -21,6 +18,7 @@ use ink_lang::{ selector_bytes, selector_id, }; +use ink_env::DefaultEnvironment; fn main() { macro_rules! assert_selector_eq { diff --git a/crates/lang/tests/ui/trait_def/pass/valid_selectors_namespace.rs b/crates/ink/tests/ui/trait_def/pass/valid_selectors_namespace.rs similarity index 96% rename from crates/lang/tests/ui/trait_def/pass/valid_selectors_namespace.rs rename to crates/ink/tests/ui/trait_def/pass/valid_selectors_namespace.rs index 402ee896824..dde2d2f81f4 100644 --- a/crates/lang/tests/ui/trait_def/pass/valid_selectors_namespace.rs +++ b/crates/ink/tests/ui/trait_def/pass/valid_selectors_namespace.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition(namespace = "foo")] pub trait TraitDefinition { #[ink(message)] @@ -12,8 +10,7 @@ pub trait TraitDefinition { fn message3(&mut self); } -use ink_env::DefaultEnvironment; -use ink_lang::{ +use ink::{ reflect::{ TraitDefinitionRegistry, TraitMessageInfo, @@ -21,6 +18,7 @@ use ink_lang::{ selector_bytes, selector_id, }; +use ink_env::DefaultEnvironment; fn main() { macro_rules! assert_selector_eq { diff --git a/crates/lang/tests/ui/trait_def/pass/with_keep_attr.rs b/crates/ink/tests/ui/trait_def/pass/with_keep_attr.rs similarity index 88% rename from crates/lang/tests/ui/trait_def/pass/with_keep_attr.rs rename to crates/ink/tests/ui/trait_def/pass/with_keep_attr.rs index d2e2ef3fc7e..29504977bf2 100644 --- a/crates/lang/tests/ui/trait_def/pass/with_keep_attr.rs +++ b/crates/ink/tests/ui/trait_def/pass/with_keep_attr.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition(keep_attr = "foo, bar")] pub trait WithKeepAttr { #[ink(message)] diff --git a/crates/lang/tests/ui/trait_def/pass/with_namespace.rs b/crates/ink/tests/ui/trait_def/pass/with_namespace.rs similarity index 86% rename from crates/lang/tests/ui/trait_def/pass/with_namespace.rs rename to crates/ink/tests/ui/trait_def/pass/with_namespace.rs index 3664134030f..a0c3dfff6f1 100644 --- a/crates/lang/tests/ui/trait_def/pass/with_namespace.rs +++ b/crates/ink/tests/ui/trait_def/pass/with_namespace.rs @@ -1,5 +1,3 @@ -use ink_lang as ink; - #[ink::trait_definition(namespace = "my_trait_namespace")] pub trait WithNamespace { #[ink(message)] diff --git a/crates/lang/tests/unique_topics.rs b/crates/ink/tests/unique_topics.rs similarity index 98% rename from crates/lang/tests/unique_topics.rs rename to crates/ink/tests/unique_topics.rs index 3eae5731298..8234d8470fa 100644 --- a/crates/lang/tests/unique_topics.rs +++ b/crates/ink/tests/unique_topics.rs @@ -14,8 +14,6 @@ #![cfg_attr(not(feature = "std"), no_std)] -use ink_lang as ink; - #[ink::contract] mod my_contract { #[ink(storage)] @@ -63,7 +61,6 @@ mod my_contract { mod tests { use super::*; use ink_env::test::EmittedEvent; - use ink_lang as ink; #[ink::test] fn event_must_have_unique_topics() { diff --git a/crates/lang/tests/ui/blake2b/pass/no_implicit_prelude.rs b/crates/lang/tests/ui/blake2b/pass/no_implicit_prelude.rs deleted file mode 100644 index e8845083bdb..00000000000 --- a/crates/lang/tests/ui/blake2b/pass/no_implicit_prelude.rs +++ /dev/null @@ -1,5 +0,0 @@ -#![no_implicit_prelude] - -const _: [::core::primitive::u8; 32] = ::ink_lang::blake2x256!("test"); - -fn main() {} diff --git a/crates/lang/tests/ui/contract/fail/config-keep-attr-invalid-type.stderr b/crates/lang/tests/ui/contract/fail/config-keep-attr-invalid-type.stderr deleted file mode 100644 index c63515a032e..00000000000 --- a/crates/lang/tests/ui/contract/fail/config-keep-attr-invalid-type.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: expected a string with attributes separated by `,` - --> tests/ui/contract/fail/config-keep-attr-invalid-type.rs:3:17 - | -3 | #[ink::contract(keep_attr = true)] - | ^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-abi.stderr b/crates/lang/tests/ui/contract/fail/constructor-abi.stderr deleted file mode 100644 index ac69b6edc50..00000000000 --- a/crates/lang/tests/ui/contract/fail/constructor-abi.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: ink! constructors must not have explicit ABI - --> tests/ui/contract/fail/constructor-abi.rs:10:13 - | -10 | pub extern "C" fn constructor() -> Self { - | ^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-async.stderr b/crates/lang/tests/ui/contract/fail/constructor-async.stderr deleted file mode 100644 index 86a797e0c13..00000000000 --- a/crates/lang/tests/ui/contract/fail/constructor-async.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: ink! constructors must not be async - --> tests/ui/contract/fail/constructor-async.rs:10:13 - | -10 | pub async fn constructor() -> Self { - | ^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-const.stderr b/crates/lang/tests/ui/contract/fail/constructor-const.stderr deleted file mode 100644 index 4a4b2399fd3..00000000000 --- a/crates/lang/tests/ui/contract/fail/constructor-const.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: ink! constructors must not be const - --> tests/ui/contract/fail/constructor-const.rs:10:13 - | -10 | pub const fn constructor() -> Self { - | ^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-input-pattern.stderr b/crates/lang/tests/ui/contract/fail/constructor-input-pattern.stderr deleted file mode 100644 index 59def8bc720..00000000000 --- a/crates/lang/tests/ui/contract/fail/constructor-input-pattern.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: ink! constructor arguments must have an identifier - --> tests/ui/contract/fail/constructor-input-pattern.rs:10:28 - | -10 | pub fn constructor((_a, _b): (i32, i32)) -> Self { - | ^^^^^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-missing-return.stderr b/crates/lang/tests/ui/contract/fail/constructor-missing-return.stderr deleted file mode 100644 index fda3fa61b5a..00000000000 --- a/crates/lang/tests/ui/contract/fail/constructor-missing-return.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: missing return for ink! constructor - --> tests/ui/contract/fail/constructor-missing-return.rs:10:13 - | -10 | pub fn constructor() {} - | ^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-payable-invalid-1.stderr b/crates/lang/tests/ui/contract/fail/constructor-payable-invalid-1.stderr deleted file mode 100644 index 37c817d6158..00000000000 --- a/crates/lang/tests/ui/contract/fail/constructor-payable-invalid-1.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: unknown ink! attribute argument (name = value) - --> tests/ui/contract/fail/constructor-payable-invalid-1.rs:9:28 - | -9 | #[ink(constructor, payable = true)] - | ^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-payable-invalid-2.stderr b/crates/lang/tests/ui/contract/fail/constructor-payable-invalid-2.stderr deleted file mode 100644 index f3e00a09ce8..00000000000 --- a/crates/lang/tests/ui/contract/fail/constructor-payable-invalid-2.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: unknown ink! attribute argument (name = value) - --> tests/ui/contract/fail/constructor-payable-invalid-2.rs:9:28 - | -9 | #[ink(constructor, payable = false)] - | ^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-self-receiver-01.stderr b/crates/lang/tests/ui/contract/fail/constructor-self-receiver-01.stderr deleted file mode 100644 index b10addb66d3..00000000000 --- a/crates/lang/tests/ui/contract/fail/constructor-self-receiver-01.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: ink! constructors must have no `self` receiver - --> tests/ui/contract/fail/constructor-self-receiver-01.rs:10:28 - | -10 | pub fn constructor(&self) -> Self { - | ^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-self-receiver-02.stderr b/crates/lang/tests/ui/contract/fail/constructor-self-receiver-02.stderr deleted file mode 100644 index f217562f530..00000000000 --- a/crates/lang/tests/ui/contract/fail/constructor-self-receiver-02.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: ink! constructors must have no `self` receiver - --> tests/ui/contract/fail/constructor-self-receiver-02.rs:10:28 - | -10 | pub fn constructor(&mut self) -> Self { - | ^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-self-receiver-03.stderr b/crates/lang/tests/ui/contract/fail/constructor-self-receiver-03.stderr deleted file mode 100644 index 3eb8ed412b2..00000000000 --- a/crates/lang/tests/ui/contract/fail/constructor-self-receiver-03.stderr +++ /dev/null @@ -1,28 +0,0 @@ -error[E0411]: cannot find type `Self` in this scope - --> tests/ui/contract/fail/constructor-self-receiver-03.rs:10:35 - | -6 | pub struct Contract {} - | --- `Self` not allowed in a constant item -... -10 | pub fn constructor(this: &Self) -> Self { - | ^^^^ `Self` is only available in impls, traits, and type definitions - -error[E0411]: cannot find type `Self` in this scope - --> tests/ui/contract/fail/constructor-self-receiver-03.rs:10:35 - | -3 | #[ink::contract] - | ---------------- `Self` not allowed in a function -... -10 | pub fn constructor(this: &Self) -> Self { - | ^^^^ `Self` is only available in impls, traits, and type definitions - -error[E0106]: missing lifetime specifier - --> tests/ui/contract/fail/constructor-self-receiver-03.rs:10:34 - | -10 | pub fn constructor(this: &Self) -> Self { - | ^ expected named lifetime parameter - | -help: consider introducing a named lifetime parameter - | -10 | pub<'a> fn constructor(this: &'a Self) -> Self { - | ++++ ++ diff --git a/crates/lang/tests/ui/contract/fail/constructor-self-receiver-04.stderr b/crates/lang/tests/ui/contract/fail/constructor-self-receiver-04.stderr deleted file mode 100644 index c5259d8f9bd..00000000000 --- a/crates/lang/tests/ui/contract/fail/constructor-self-receiver-04.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: ink! constructors must have no `self` receiver - --> tests/ui/contract/fail/constructor-self-receiver-04.rs:10:28 - | -10 | pub fn constructor(self) -> Self { - | ^^^^ diff --git a/crates/lang/tests/ui/contract/fail/constructor-unsafe.stderr b/crates/lang/tests/ui/contract/fail/constructor-unsafe.stderr deleted file mode 100644 index d340ce7205e..00000000000 --- a/crates/lang/tests/ui/contract/fail/constructor-unsafe.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: ink! constructors must not be unsafe - --> tests/ui/contract/fail/constructor-unsafe.rs:10:13 - | -10 | pub unsafe fn constructor() -> Self { - | ^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/event-conflicting-storage.stderr b/crates/lang/tests/ui/contract/fail/event-conflicting-storage.stderr deleted file mode 100644 index 42ea9e9f95e..00000000000 --- a/crates/lang/tests/ui/contract/fail/event-conflicting-storage.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: encountered conflicting ink! attribute argument - --> tests/ui/contract/fail/event-conflicting-storage.rs:9:11 - | -9 | #[ink(storage)] - | ^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/message-input-pattern.stderr b/crates/lang/tests/ui/contract/fail/message-input-pattern.stderr deleted file mode 100644 index f74e49855d4..00000000000 --- a/crates/lang/tests/ui/contract/fail/message-input-pattern.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: ink! message arguments must have an identifier - --> tests/ui/contract/fail/message-input-pattern.rs:15:31 - | -15 | pub fn message(&self, (_a, _b): (i32, i32)) {} - | ^^^^^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/message-returns-self.stderr b/crates/lang/tests/ui/contract/fail/message-returns-self.stderr deleted file mode 100644 index 7dea02f224d..00000000000 --- a/crates/lang/tests/ui/contract/fail/message-returns-self.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: ink! messages must not return `Self` - --> tests/ui/contract/fail/message-returns-self.rs:15:39 - | -15 | pub fn returns_self(&self) -> Self {} - | ^^^^ diff --git a/crates/lang/tests/ui/contract/fail/message-self-receiver-missing.stderr b/crates/lang/tests/ui/contract/fail/message-self-receiver-missing.stderr deleted file mode 100644 index 44ca13ad68b..00000000000 --- a/crates/lang/tests/ui/contract/fail/message-self-receiver-missing.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: ink! messages must have `&self` or `&mut self` receiver - --> tests/ui/contract/fail/message-self-receiver-missing.rs:14:9 - | -14 | #[ink(message)] - | ^ diff --git a/crates/lang/tests/ui/contract/fail/message-unknown-property.stderr b/crates/lang/tests/ui/contract/fail/message-unknown-property.stderr deleted file mode 100644 index 0f27d2dc911..00000000000 --- a/crates/lang/tests/ui/contract/fail/message-unknown-property.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: unknown ink! attribute (path) - --> tests/ui/contract/fail/message-unknown-property.rs:15:15 - | -15 | #[ink(unknown_marker)] - | ^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/module-missing-constructor.stderr b/crates/lang/tests/ui/contract/fail/module-missing-constructor.stderr deleted file mode 100644 index 4ffe5418fda..00000000000 --- a/crates/lang/tests/ui/contract/fail/module-missing-constructor.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: missing ink! constructor - --> tests/ui/contract/fail/module-missing-constructor.rs:4:1 - | -4 | mod contract { - | ^^^ diff --git a/crates/lang/tests/ui/contract/fail/module-missing-message.stderr b/crates/lang/tests/ui/contract/fail/module-missing-message.stderr deleted file mode 100644 index e8bb3b90b98..00000000000 --- a/crates/lang/tests/ui/contract/fail/module-missing-message.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: missing ink! message - --> tests/ui/contract/fail/module-missing-message.rs:4:1 - | -4 | mod contract { - | ^^^ diff --git a/crates/lang/tests/ui/contract/fail/module-missing-storage.stderr b/crates/lang/tests/ui/contract/fail/module-missing-storage.stderr deleted file mode 100644 index 854257d829e..00000000000 --- a/crates/lang/tests/ui/contract/fail/module-missing-storage.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: missing ink! storage struct - --> tests/ui/contract/fail/module-missing-storage.rs:4:1 - | -4 | mod contract { - | ^^^ diff --git a/crates/lang/tests/ui/contract/fail/module-multiple-storages.stderr b/crates/lang/tests/ui/contract/fail/module-multiple-storages.stderr deleted file mode 100644 index 38f800e5b63..00000000000 --- a/crates/lang/tests/ui/contract/fail/module-multiple-storages.stderr +++ /dev/null @@ -1,17 +0,0 @@ -error: encountered multiple ink! storage structs, expected exactly one - --> tests/ui/contract/fail/module-multiple-storages.rs:4:1 - | -4 | mod contract { - | ^^^ - -error: ink! storage struct here - --> tests/ui/contract/fail/module-multiple-storages.rs:6:5 - | -6 | pub struct Contract {} - | ^^^ - -error: ink! storage struct here - --> tests/ui/contract/fail/module-multiple-storages.rs:19:5 - | -19 | pub struct Contract2 {} - | ^^^ diff --git a/crates/lang/tests/ui/contract/fail/storage-conflicting-event.stderr b/crates/lang/tests/ui/contract/fail/storage-conflicting-event.stderr deleted file mode 100644 index 84ef72bc72b..00000000000 --- a/crates/lang/tests/ui/contract/fail/storage-conflicting-event.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: encountered conflicting ink! attribute argument - --> tests/ui/contract/fail/storage-conflicting-event.rs:6:11 - | -6 | #[ink(event)] - | ^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/storage-unknown-marker.stderr b/crates/lang/tests/ui/contract/fail/storage-unknown-marker.stderr deleted file mode 100644 index b24ba558ba2..00000000000 --- a/crates/lang/tests/ui/contract/fail/storage-unknown-marker.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: unknown ink! attribute (path) - --> tests/ui/contract/fail/storage-unknown-marker.rs:6:11 - | -6 | #[ink(unknown_or_unsupported)] - | ^^^^^^^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/contract/fail/trait-impl-namespace-invalid.stderr b/crates/lang/tests/ui/contract/fail/trait-impl-namespace-invalid.stderr deleted file mode 100644 index 1b2c5693382..00000000000 --- a/crates/lang/tests/ui/contract/fail/trait-impl-namespace-invalid.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: namespace ink! property is not allowed on ink! trait implementation blocks - --> tests/ui/contract/fail/trait-impl-namespace-invalid.rs:23:5 - | -23 | #[ink(namespace = "namespace")] - | ^ diff --git a/crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-1.stderr b/crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-1.stderr deleted file mode 100644 index 7c0aa4e8320..00000000000 --- a/crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-1.stderr +++ /dev/null @@ -1,17 +0,0 @@ -error[E0119]: conflicting implementations of trait `ink_lang::reflect::DispatchableMessageInfo<1083895717_u32>` for type `contract::Contract` - --> tests/ui/contract/fail/trait-message-selector-overlap-1.rs:47:9 - | -42 | fn message(&self) {} - | -- first implementation here -... -47 | fn message(&self) {} - | ^^ conflicting implementation for `contract::Contract` - -error[E0119]: conflicting implementations of trait `ink_lang::codegen::TraitCallForwarderFor<1083895717_u32>` for type `contract::_::CallBuilder` - --> tests/ui/contract/fail/trait-message-selector-overlap-1.rs:45:5 - | -40 | impl TraitDefinition1 for Contract { - | ---- first implementation here -... -45 | impl TraitDefinition2 for Contract { - | ^^^^ conflicting implementation for `contract::_::CallBuilder` diff --git a/crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-2.stderr b/crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-2.stderr deleted file mode 100644 index 91689c8315b..00000000000 --- a/crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-2.stderr +++ /dev/null @@ -1,17 +0,0 @@ -error[E0119]: conflicting implementations of trait `ink_lang::reflect::DispatchableMessageInfo<1518209067_u32>` for type `contract::Contract` - --> tests/ui/contract/fail/trait-message-selector-overlap-2.rs:47:9 - | -42 | fn message(&self) {} - | -- first implementation here -... -47 | fn message(&self) {} - | ^^ conflicting implementation for `contract::Contract` - -error[E0119]: conflicting implementations of trait `ink_lang::codegen::TraitCallForwarderFor<1518209067_u32>` for type `contract::_::CallBuilder` - --> tests/ui/contract/fail/trait-message-selector-overlap-2.rs:45:5 - | -40 | impl TraitDefinition1 for Contract { - | ---- first implementation here -... -45 | impl TraitDefinition2 for Contract { - | ^^^^ conflicting implementation for `contract::_::CallBuilder` diff --git a/crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-3.stderr b/crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-3.stderr deleted file mode 100644 index 06d2d37e211..00000000000 --- a/crates/lang/tests/ui/contract/fail/trait-message-selector-overlap-3.stderr +++ /dev/null @@ -1,17 +0,0 @@ -error[E0119]: conflicting implementations of trait `ink_lang::reflect::DispatchableMessageInfo<42_u32>` for type `contract::Contract` - --> tests/ui/contract/fail/trait-message-selector-overlap-3.rs:47:9 - | -42 | fn message1(&self) {} - | -- first implementation here -... -47 | fn message2(&self) {} - | ^^ conflicting implementation for `contract::Contract` - -error[E0119]: conflicting implementations of trait `ink_lang::codegen::TraitCallForwarderFor<42_u32>` for type `contract::_::CallBuilder` - --> tests/ui/contract/fail/trait-message-selector-overlap-3.rs:45:5 - | -40 | impl TraitDefinition1 for Contract { - | ---- first implementation here -... -45 | impl TraitDefinition2 for Contract { - | ^^^^ conflicting implementation for `contract::_::CallBuilder` diff --git a/crates/lang/tests/ui/selector_bytes/pass/no_implicit_prelude.rs b/crates/lang/tests/ui/selector_bytes/pass/no_implicit_prelude.rs deleted file mode 100644 index bbb97278bc0..00000000000 --- a/crates/lang/tests/ui/selector_bytes/pass/no_implicit_prelude.rs +++ /dev/null @@ -1,5 +0,0 @@ -#![no_implicit_prelude] - -const _: [::core::primitive::u8; 4] = ::ink_lang::selector_bytes!("test"); - -fn main() {} diff --git a/crates/lang/tests/ui/selector_id/pass/no_implicit_prelude.rs b/crates/lang/tests/ui/selector_id/pass/no_implicit_prelude.rs deleted file mode 100644 index 5be7923112e..00000000000 --- a/crates/lang/tests/ui/selector_id/pass/no_implicit_prelude.rs +++ /dev/null @@ -1,5 +0,0 @@ -#![no_implicit_prelude] - -const _: ::core::primitive::u32 = ::ink_lang::selector_id!("test"); - -fn main() {} diff --git a/crates/lang/tests/ui/trait_def/fail/config_keep_attr_invalid_type.stderr b/crates/lang/tests/ui/trait_def/fail/config_keep_attr_invalid_type.stderr deleted file mode 100644 index e2916df50da..00000000000 --- a/crates/lang/tests/ui/trait_def/fail/config_keep_attr_invalid_type.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: expected a string with attributes separated by `,` - --> tests/ui/trait_def/fail/config_keep_attr_invalid_type.rs:3:25 - | -3 | #[ink::trait_definition(keep_attr = true)] - | ^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/definition_constructor.stderr b/crates/lang/tests/ui/trait_def/fail/definition_constructor.stderr deleted file mode 100644 index 7bdbe3f5e0f..00000000000 --- a/crates/lang/tests/ui/trait_def/fail/definition_constructor.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: ink! trait definitions must not have constructors - --> tests/ui/trait_def/fail/definition_constructor.rs:5:5 - | -5 | #[ink(constructor)] - | ^ diff --git a/crates/lang/tests/ui/trait_def/fail/definition_empty.stderr b/crates/lang/tests/ui/trait_def/fail/definition_empty.stderr deleted file mode 100644 index 9771116e22c..00000000000 --- a/crates/lang/tests/ui/trait_def/fail/definition_empty.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: encountered invalid empty ink! trait definition - --> tests/ui/trait_def/fail/definition_empty.rs:4:1 - | -4 | pub trait TraitDefinition {} - | ^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/definition_generic.stderr b/crates/lang/tests/ui/trait_def/fail/definition_generic.stderr deleted file mode 100644 index a0381027e1a..00000000000 --- a/crates/lang/tests/ui/trait_def/fail/definition_generic.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: ink! trait definitions must not be generic - --> tests/ui/trait_def/fail/definition_generic.rs:4:27 - | -4 | pub trait TraitDefinition { - | ^ diff --git a/crates/lang/tests/ui/trait_def/fail/definition_super_trait_invalid_2.stderr b/crates/lang/tests/ui/trait_def/fail/definition_super_trait_invalid_2.stderr deleted file mode 100644 index 3350a2b89c2..00000000000 --- a/crates/lang/tests/ui/trait_def/fail/definition_super_trait_invalid_2.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: ink! trait definitions with supertraits are not supported, yet - --> tests/ui/trait_def/fail/definition_super_trait_invalid_2.rs:10:28 - | -10 | pub trait TraitDefinition: SuperTraitDefinition { - | ^^^^^^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/definition_unsafe.stderr b/crates/lang/tests/ui/trait_def/fail/definition_unsafe.stderr deleted file mode 100644 index 063a7c2d239..00000000000 --- a/crates/lang/tests/ui/trait_def/fail/definition_unsafe.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: ink! trait definitions cannot be unsafe - --> tests/ui/trait_def/fail/definition_unsafe.rs:4:5 - | -4 | pub unsafe trait TraitDefinition { - | ^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_abi_invalid.stderr b/crates/lang/tests/ui/trait_def/fail/message_abi_invalid.stderr deleted file mode 100644 index 4a3c6d02a5a..00000000000 --- a/crates/lang/tests/ui/trait_def/fail/message_abi_invalid.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: ink! trait methods with non default ABI are not supported - --> tests/ui/trait_def/fail/message_abi_invalid.rs:6:5 - | -6 | extern "C" fn message_ref(&self); - | ^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_async_invalid.stderr b/crates/lang/tests/ui/trait_def/fail/message_async_invalid.stderr deleted file mode 100644 index b1e6354058d..00000000000 --- a/crates/lang/tests/ui/trait_def/fail/message_async_invalid.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: async ink! trait methods are not supported - --> tests/ui/trait_def/fail/message_async_invalid.rs:6:5 - | -6 | async fn message_ref(&self); - | ^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_const_invalid.stderr b/crates/lang/tests/ui/trait_def/fail/message_const_invalid.stderr deleted file mode 100644 index 4cf9f2fa071..00000000000 --- a/crates/lang/tests/ui/trait_def/fail/message_const_invalid.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: const ink! trait methods are not supported - --> tests/ui/trait_def/fail/message_const_invalid.rs:6:5 - | -6 | const fn message_ref(&self); - | ^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_constructor_conflict.stderr b/crates/lang/tests/ui/trait_def/fail/message_constructor_conflict.stderr deleted file mode 100644 index 53b3112851c..00000000000 --- a/crates/lang/tests/ui/trait_def/fail/message_constructor_conflict.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: encountered conflicting ink! attribute argument - --> tests/ui/trait_def/fail/message_constructor_conflict.rs:5:20 - | -5 | #[ink(message, constructor)] - | ^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_generic_invalid.stderr b/crates/lang/tests/ui/trait_def/fail/message_generic_invalid.stderr deleted file mode 100644 index c2df8eda524..00000000000 --- a/crates/lang/tests/ui/trait_def/fail/message_generic_invalid.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: generic ink! trait methods are not supported - --> tests/ui/trait_def/fail/message_generic_invalid.rs:6:20 - | -6 | fn message_ref(&self); - | ^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_payable_invalid_1.stderr b/crates/lang/tests/ui/trait_def/fail/message_payable_invalid_1.stderr deleted file mode 100644 index 5b341d5a4e8..00000000000 --- a/crates/lang/tests/ui/trait_def/fail/message_payable_invalid_1.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: unknown ink! attribute argument (name = value) - --> tests/ui/trait_def/fail/message_payable_invalid_1.rs:5:20 - | -5 | #[ink(message, payable = false)] - | ^^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_payable_invalid_2.stderr b/crates/lang/tests/ui/trait_def/fail/message_payable_invalid_2.stderr deleted file mode 100644 index f794664ce1f..00000000000 --- a/crates/lang/tests/ui/trait_def/fail/message_payable_invalid_2.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: unknown ink! attribute argument (name = value) - --> tests/ui/trait_def/fail/message_payable_invalid_2.rs:5:20 - | -5 | #[ink(message, payable = true)] - | ^^^^^^^^^^^^^^ diff --git a/crates/lang/tests/ui/trait_def/fail/message_unsafe_invalid.stderr b/crates/lang/tests/ui/trait_def/fail/message_unsafe_invalid.stderr deleted file mode 100644 index 4d7d1fe35a6..00000000000 --- a/crates/lang/tests/ui/trait_def/fail/message_unsafe_invalid.stderr +++ /dev/null @@ -1,5 +0,0 @@ -error: unsafe ink! trait methods are not supported - --> tests/ui/trait_def/fail/message_unsafe_invalid.rs:6:5 - | -6 | unsafe fn message_ref(&self); - | ^^^^^^ diff --git a/crates/storage/Cargo.toml b/crates/storage/Cargo.toml index 8815d157380..f6f5f969675 100644 --- a/crates/storage/Cargo.toml +++ b/crates/storage/Cargo.toml @@ -32,7 +32,7 @@ quickcheck = "1.0" quickcheck_macros = "1.0" itertools = "0.10" -ink_lang = { path = "../lang", default-features = false } +ink = { path = "../ink" } [features] default = ["std"] diff --git a/crates/storage/src/lazy/mapping.rs b/crates/storage/src/lazy/mapping.rs index 32ed82549b6..dadbe51c9c0 100644 --- a/crates/storage/src/lazy/mapping.rs +++ b/crates/storage/src/lazy/mapping.rs @@ -47,8 +47,7 @@ use scale::{ /// /// This is an example of how you can do this: /// ```rust -/// # use ink_lang as ink; -/// # use ink_env::{ +/// # use ink::env::{ /// # Environment, /// # DefaultEnvironment, /// # }; @@ -56,7 +55,7 @@ use scale::{ /// /// # #[ink::contract] /// # mod my_module { -/// use ink_storage::{traits::ManualKey, Mapping}; +/// use ink::storage::{traits::ManualKey, Mapping}; /// /// #[ink(storage)] /// #[derive(Default)] diff --git a/crates/storage/src/lazy/mod.rs b/crates/storage/src/lazy/mod.rs index 0b3451ea90d..4909d8bda16 100644 --- a/crates/storage/src/lazy/mod.rs +++ b/crates/storage/src/lazy/mod.rs @@ -57,8 +57,7 @@ use scale::{ /// /// This is an example of how you can do this: /// ```rust -/// # use ink_lang as ink; -/// # use ink_env::{ +/// # use ink::env::{ /// # Environment, /// # DefaultEnvironment, /// # }; @@ -66,7 +65,7 @@ use scale::{ /// /// # #[ink::contract] /// # mod my_module { -/// use ink_storage::{traits::ManualKey, Lazy}; +/// use ink::storage::{traits::ManualKey, Lazy}; /// /// #[ink(storage)] /// #[derive(Default)] diff --git a/crates/storage/traits/derive/Cargo.toml b/crates/storage/traits/derive/Cargo.toml index cfa70aa15ca..0a9e0397952 100644 --- a/crates/storage/traits/derive/Cargo.toml +++ b/crates/storage/traits/derive/Cargo.toml @@ -25,9 +25,7 @@ synstructure = "0.12.4" ink_storage_codegen = { version = "4.0.0-alpha.1", path = "../codegen" } [dev-dependencies] -ink_env = { path = "../../../env" } +ink = { path = "../../../ink" } ink_metadata = { path = "../../../metadata" } -ink_prelude = { path = "../../../prelude" } -ink_primitives = { path = "../../../primitives" } ink_storage = { path = "../.." } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive", "full"] } diff --git a/crates/storage/traits/derive/src/storable.rs b/crates/storage/traits/derive/src/storable.rs index 3811bd90dfc..4b273cb9e44 100644 --- a/crates/storage/traits/derive/src/storable.rs +++ b/crates/storage/traits/derive/src/storable.rs @@ -27,18 +27,18 @@ fn storable_struct_derive(s: &synstructure::Structure) -> TokenStream2 { let ty = &field.ty; let span = ty.span(); quote_spanned!(span => - <#ty as ::ink_storage::traits::Storable>::decode(__input)? + <#ty as ::ink::storage::traits::Storable>::decode(__input)? ) }); let encode_body = variant.each(|binding| { let span = binding.ast().ty.span(); quote_spanned!(span => - ::ink_storage::traits::Storable::encode(#binding, __dest); + ::ink::storage::traits::Storable::encode(#binding, __dest); ) }); s.gen_impl(quote! { - gen impl ::ink_storage::traits::Storable for @Self { + gen impl ::ink::storage::traits::Storable for @Self { #[inline(always)] #[allow(non_camel_case_types)] fn decode<__ink_I: ::scale::Input>(__input: &mut __ink_I) -> ::core::result::Result { @@ -77,7 +77,7 @@ fn storable_enum_derive(s: &synstructure::Structure) -> TokenStream2 { let ty = &field.ty; let span = ty.span(); quote_spanned!(span => - <#ty as ::ink_storage::traits::Storable>::decode(__input)? + <#ty as ::ink::storage::traits::Storable>::decode(__input)? ) }) }) @@ -96,12 +96,12 @@ fn storable_enum_derive(s: &synstructure::Structure) -> TokenStream2 { let fields = variant.bindings().iter().map(|field| { let span = field.ast().ty.span(); quote_spanned!(span => - ::ink_storage::traits::Storable::encode(#field, __dest); + ::ink::storage::traits::Storable::encode(#field, __dest); ) }); quote! { #pat => { - { <::core::primitive::u8 as ::ink_storage::traits::Storable>::encode(&#index, __dest); } + { <::core::primitive::u8 as ::ink::storage::traits::Storable>::encode(&#index, __dest); } #( { #fields } )* @@ -109,12 +109,12 @@ fn storable_enum_derive(s: &synstructure::Structure) -> TokenStream2 { } }); s.gen_impl(quote! { - gen impl ::ink_storage::traits::Storable for @Self { + gen impl ::ink::storage::traits::Storable for @Self { #[inline(always)] #[allow(non_camel_case_types)] fn decode<__ink_I: ::scale::Input>(__input: &mut __ink_I) -> ::core::result::Result { ::core::result::Result::Ok( - match <::core::primitive::u8 as ::ink_storage::traits::Storable>::decode(__input)? { + match <::core::primitive::u8 as ::ink::storage::traits::Storable>::decode(__input)? { #decode_body _ => unreachable!("encountered invalid enum discriminant"), } diff --git a/crates/storage/traits/derive/src/storable_hint.rs b/crates/storage/traits/derive/src/storable_hint.rs index 66053e7d4c9..084360fcf6e 100644 --- a/crates/storage/traits/derive/src/storable_hint.rs +++ b/crates/storage/traits/derive/src/storable_hint.rs @@ -30,7 +30,7 @@ fn storable_hint_inner(s: synstructure::Structure) -> TokenStream2 { let mut generics = s.ast().generics.clone(); generics.params.push( - parse2(quote! { #salt_ident : ::ink_storage::traits::StorageKey }).unwrap(), + parse2(quote! { #salt_ident : ::ink::storage::traits::StorageKey }).unwrap(), ); let (impl_generics, _, where_clause) = generics.split_for_impl(); @@ -61,16 +61,16 @@ fn storable_hint_inner(s: synstructure::Structure) -> TokenStream2 { .collect(); quote! { - impl #impl_generics ::ink_storage::traits::StorableHint<#salt_ident> for #ident #ty_generics_original #where_clause { + impl #impl_generics ::ink::storage::traits::StorableHint<#salt_ident> for #ident #ty_generics_original #where_clause { type Type = #ident <#(#ty_generics),*>; type PreferredKey = #inner_salt_ident; } } } else { quote! { - impl #impl_generics ::ink_storage::traits::StorableHint<#salt_ident> for #ident #ty_generics_original #where_clause { + impl #impl_generics ::ink::storage::traits::StorableHint<#salt_ident> for #ident #ty_generics_original #where_clause { type Type = #ident #ty_generics_original; - type PreferredKey = ::ink_storage::traits::AutoKey; + type PreferredKey = ::ink::storage::traits::AutoKey; } } } diff --git a/crates/storage/traits/derive/src/storage_key.rs b/crates/storage/traits/derive/src/storage_key.rs index 0cf0e479bd7..25991ba5623 100644 --- a/crates/storage/traits/derive/src/storage_key.rs +++ b/crates/storage/traits/derive/src/storage_key.rs @@ -30,8 +30,8 @@ pub fn storage_key_derive(mut s: synstructure::Structure) -> TokenStream2 { }; s.gen_impl(quote! { - gen impl ::ink_storage::traits::StorageKey for @Self { - const KEY: ::ink_primitives::Key = <#salt as ::ink_storage::traits::StorageKey>::KEY; + gen impl ::ink::storage::traits::StorageKey for @Self { + const KEY: ::ink::primitives::Key = <#salt as ::ink::storage::traits::StorageKey>::KEY; } }) } diff --git a/crates/storage/traits/derive/src/storage_layout.rs b/crates/storage/traits/derive/src/storage_layout.rs index c42e43ae17b..0a0c084bfd1 100644 --- a/crates/storage/traits/derive/src/storage_layout.rs +++ b/crates/storage/traits/derive/src/storage_layout.rs @@ -32,9 +32,9 @@ fn field_layout<'a>( }; let ty = &field.ty; quote! { - ::ink_metadata::layout::FieldLayout::new( + ::ink::metadata::layout::FieldLayout::new( #ident, - <#ty as ::ink_storage::traits::StorageLayout>::layout(__key), + <#ty as ::ink::storage::traits::StorageLayout>::layout(__key), ) } }) @@ -53,10 +53,10 @@ fn storage_layout_struct(s: &synstructure::Structure) -> TokenStream2 { let variant: &synstructure::VariantInfo = &s.variants()[0]; let field_layouts = field_layout(variant); s.gen_impl(quote! { - gen impl ::ink_storage::traits::StorageLayout for @Self { - fn layout(__key: &::ink_primitives::Key) -> ::ink_metadata::layout::Layout { - ::ink_metadata::layout::Layout::Struct( - ::ink_metadata::layout::StructLayout::new( + gen impl ::ink::storage::traits::StorageLayout for @Self { + fn layout(__key: &::ink::primitives::Key) -> ::ink::metadata::layout::Layout { + ::ink::metadata::layout::Layout::Struct( + ::ink::metadata::layout::StructLayout::new( ::core::stringify!(#struct_ident), [ #(#field_layouts ,)* @@ -94,8 +94,8 @@ fn storage_layout_enum(s: &synstructure::Structure) -> TokenStream2 { quote! { { ( - ::ink_metadata::layout::Discriminant::from(#discriminant), - ::ink_metadata::layout::StructLayout::new( + ::ink::metadata::layout::Discriminant::from(#discriminant), + ::ink::metadata::layout::StructLayout::new( ::core::stringify!(#variant_ident), [ #(#field_layouts ,)* @@ -107,12 +107,12 @@ fn storage_layout_enum(s: &synstructure::Structure) -> TokenStream2 { }); let enum_ident = s.ast().ident.clone(); s.gen_impl(quote! { - gen impl ::ink_storage::traits::StorageLayout for @Self { - fn layout(__key: &::ink_primitives::Key) -> ::ink_metadata::layout::Layout { - ::ink_metadata::layout::Layout::Enum( - ::ink_metadata::layout::EnumLayout::new( + gen impl ::ink::storage::traits::StorageLayout for @Self { + fn layout(__key: &::ink::primitives::Key) -> ::ink::metadata::layout::Layout { + ::ink::metadata::layout::Layout::Enum( + ::ink::metadata::layout::EnumLayout::new( ::core::stringify!(#enum_ident), - ::ink_metadata::layout::LayoutKey::from(__key), + ::ink::metadata::layout::LayoutKey::from(__key), [ #(#variant_layouts ,)* ] diff --git a/crates/storage/traits/derive/src/tests/storable.rs b/crates/storage/traits/derive/src/tests/storable.rs index 41de200d8b6..b59c1681fa9 100644 --- a/crates/storage/traits/derive/src/tests/storable.rs +++ b/crates/storage/traits/derive/src/tests/storable.rs @@ -30,7 +30,7 @@ fn unit_struct_works() { } expands to { const _: () = { - impl ::ink_storage::traits::Storable for UnitStruct { + impl ::ink::storage::traits::Storable for UnitStruct { #[inline(always)] #[allow(non_camel_case_types)] fn decode<__ink_I: ::scale::Input>(__input: &mut __ink_I) -> ::core::result::Result { @@ -62,15 +62,15 @@ fn struct_works() { } expands to { const _: () = { - impl ::ink_storage::traits::Storable for NamedFields { + impl ::ink::storage::traits::Storable for NamedFields { #[inline(always)] #[allow(non_camel_case_types)] fn decode<__ink_I: ::scale::Input>(__input: &mut __ink_I) -> ::core::result::Result { ::core::result::Result::Ok( NamedFields { - a : ::decode(__input)?, - b : <[u8; 32] as ::ink_storage::traits::Storable>::decode(__input)?, - d : as ::ink_storage::traits::Storable>::decode(__input)?, + a : ::decode(__input)?, + b : <[u8; 32] as ::ink::storage::traits::Storable>::decode(__input)?, + d : as ::ink::storage::traits::Storable>::decode(__input)?, } ) } @@ -86,19 +86,19 @@ fn struct_works() { d: __binding_2, } => { { - ::ink_storage::traits::Storable::encode( + ::ink::storage::traits::Storable::encode( __binding_0, __dest ); } { - ::ink_storage::traits::Storable::encode( + ::ink::storage::traits::Storable::encode( __binding_1, __dest ); } { - ::ink_storage::traits::Storable::encode( + ::ink::storage::traits::Storable::encode( __binding_2, __dest ); @@ -122,12 +122,12 @@ fn one_variant_enum_works() { } expands to { const _: () = { - impl ::ink_storage::traits::Storable for OneVariantEnum { + impl ::ink::storage::traits::Storable for OneVariantEnum { #[inline(always)] #[allow(non_camel_case_types)] fn decode<__ink_I: ::scale::Input>(__input: &mut __ink_I) -> ::core::result::Result { ::core::result::Result::Ok( - match <::core::primitive::u8 as ::ink_storage::traits::Storable>::decode(__input)? + match <::core::primitive::u8 as ::ink::storage::traits::Storable>::decode(__input)? { 0u8 => OneVariantEnum::A, _ => unreachable!("encountered invalid enum discriminant"), @@ -141,7 +141,7 @@ fn one_variant_enum_works() { match self { OneVariantEnum::A => { { - <::core::primitive::u8 as ::ink_storage::traits::Storable>::encode( + <::core::primitive::u8 as ::ink::storage::traits::Storable>::encode( &0u8, __dest ); @@ -167,21 +167,21 @@ fn enum_works() { } expands to { const _: () = { - impl ::ink_storage::traits::Storable for MixedEnum { + impl ::ink::storage::traits::Storable for MixedEnum { #[inline(always)] #[allow(non_camel_case_types)] fn decode<__ink_I: ::scale::Input>(__input: &mut __ink_I) -> ::core::result::Result { ::core::result::Result::Ok( - match <::core::primitive::u8 as ::ink_storage::traits::Storable>::decode(__input)? + match <::core::primitive::u8 as ::ink::storage::traits::Storable>::decode(__input)? { 0u8 => MixedEnum::A, 1u8 => MixedEnum::B( - ::decode(__input)?, - <[u8; 32] as ::ink_storage::traits::Storable>::decode(__input)?, + ::decode(__input)?, + <[u8; 32] as ::ink::storage::traits::Storable>::decode(__input)?, ), 2u8 => MixedEnum::C { - a: < i32 as ::ink_storage::traits::Storable>::decode(__input)?, - b: <(bool, i32) as ::ink_storage::traits::Storable>::decode(__input)?, + a: < i32 as ::ink::storage::traits::Storable>::decode(__input)?, + b: <(bool, i32) as ::ink::storage::traits::Storable>::decode(__input)?, }, _ => unreachable!("encountered invalid enum discriminant"), } @@ -194,7 +194,7 @@ fn enum_works() { match self { MixedEnum::A => { { - <::core::primitive::u8 as ::ink_storage::traits::Storable>::encode( + <::core::primitive::u8 as ::ink::storage::traits::Storable>::encode( &0u8, __dest ); @@ -202,19 +202,19 @@ fn enum_works() { } MixedEnum::B(__binding_0, __binding_1,) => { { - <::core::primitive::u8 as ::ink_storage::traits::Storable>::encode( + <::core::primitive::u8 as ::ink::storage::traits::Storable>::encode( &1u8, __dest ); } { - ::ink_storage::traits::Storable::encode( + ::ink::storage::traits::Storable::encode( __binding_0, __dest ); } { - ::ink_storage::traits::Storable::encode( + ::ink::storage::traits::Storable::encode( __binding_1, __dest ); @@ -225,18 +225,18 @@ fn enum_works() { b: __binding_1, } => { { - <::core::primitive::u8 as ::ink_storage::traits::Storable>::encode( + <::core::primitive::u8 as ::ink::storage::traits::Storable>::encode( &2u8, __dest ); } { - ::ink_storage::traits::Storable::encode( + ::ink::storage::traits::Storable::encode( __binding_0, __dest ); } { - ::ink_storage::traits::Storable::encode( + ::ink::storage::traits::Storable::encode( __binding_1, __dest ); @@ -265,22 +265,22 @@ fn generic_struct_works() { } expands to { const _: () = { - impl ::ink_storage::traits::Storable for GenericStruct + impl ::ink::storage::traits::Storable for GenericStruct where T1: ::scale::Decode, T2: ::scale::Encode, - T1: ::ink_storage::traits::Storable, - (T1 , T2): ::ink_storage::traits::Storable + T1: ::ink::storage::traits::Storable, + (T1 , T2): ::ink::storage::traits::Storable { #[inline(always)] #[allow(non_camel_case_types)] fn decode<__ink_I: ::scale::Input>(__input: &mut __ink_I) -> ::core::result::Result { ::core::result::Result::Ok( GenericStruct { - a: ::decode( + a: ::decode( __input )?, - b: <(T1, T2) as ::ink_storage::traits::Storable>::decode( + b: <(T1, T2) as ::ink::storage::traits::Storable>::decode( __input )?, } @@ -296,13 +296,13 @@ fn generic_struct_works() { b: __binding_1, } => { { - ::ink_storage::traits::Storable::encode( + ::ink::storage::traits::Storable::encode( __binding_0, __dest ); } { - ::ink_storage::traits::Storable::encode( + ::ink::storage::traits::Storable::encode( __binding_1, __dest ); @@ -327,24 +327,24 @@ fn generic_enum_works() { } expands to { const _: () = { - impl ::ink_storage::traits::Storable for GenericEnum + impl ::ink::storage::traits::Storable for GenericEnum where - T1: ::ink_storage::traits::Storable, - T2: ::ink_storage::traits::Storable + T1: ::ink::storage::traits::Storable, + T2: ::ink::storage::traits::Storable { #[inline(always)] #[allow(non_camel_case_types)] fn decode<__ink_I: ::scale::Input>(__input: &mut __ink_I) -> ::core::result::Result { ::core::result::Result::Ok( - match <::core::primitive::u8 as ::ink_storage::traits::Storable>::decode(__input)? + match <::core::primitive::u8 as ::ink::storage::traits::Storable>::decode(__input)? { 0u8 => GenericEnum::Tuple( - ::decode(__input)?, - ::decode(__input)?, + ::decode(__input)?, + ::decode(__input)?, ), 1u8 => GenericEnum::Named { - a: ::decode(__input)?, - b: ::decode(__input)?, + a: ::decode(__input)?, + b: ::decode(__input)?, }, _ => unreachable!("encountered invalid enum discriminant"), } @@ -357,16 +357,16 @@ fn generic_enum_works() { match self { GenericEnum::Tuple(__binding_0, __binding_1,) => { { - <::core::primitive::u8 as ::ink_storage::traits::Storable>::encode(&0u8, __dest); + <::core::primitive::u8 as ::ink::storage::traits::Storable>::encode(&0u8, __dest); } { - ::ink_storage::traits::Storable::encode( + ::ink::storage::traits::Storable::encode( __binding_0, __dest ); } { - ::ink_storage::traits::Storable::encode( + ::ink::storage::traits::Storable::encode( __binding_1, __dest ); @@ -377,16 +377,16 @@ fn generic_enum_works() { b: __binding_1, } => { { - <::core::primitive::u8 as ::ink_storage::traits::Storable>::encode(&1u8, __dest); + <::core::primitive::u8 as ::ink::storage::traits::Storable>::encode(&1u8, __dest); } { - ::ink_storage::traits::Storable::encode( + ::ink::storage::traits::Storable::encode( __binding_0, __dest ); } { - ::ink_storage::traits::Storable::encode( + ::ink::storage::traits::Storable::encode( __binding_1, __dest ); diff --git a/crates/storage/traits/derive/src/tests/storable_hint.rs b/crates/storage/traits/derive/src/tests/storable_hint.rs index 288dee8e9ac..91b5ca38cf3 100644 --- a/crates/storage/traits/derive/src/tests/storable_hint.rs +++ b/crates/storage/traits/derive/src/tests/storable_hint.rs @@ -22,11 +22,11 @@ fn unit_struct_works() { } expands to { const _: () = { - impl<__ink_generic_salt: ::ink_storage::traits::StorageKey> - ::ink_storage::traits::StorableHint<__ink_generic_salt> for UnitStruct + impl<__ink_generic_salt: ::ink::storage::traits::StorageKey> + ::ink::storage::traits::StorableHint<__ink_generic_salt> for UnitStruct { type Type = UnitStruct; - type PreferredKey = ::ink_storage::traits::AutoKey; + type PreferredKey = ::ink::storage::traits::AutoKey; } }; } @@ -38,15 +38,15 @@ fn unit_struct_works() { fn unit_struct_salt_works() { crate::test_derive! { storable_hint_derive { - struct UnitStruct; + struct UnitStruct; } expands to { const _: () = { impl< - Salt: ::ink_storage::traits::StorageKey, - __ink_generic_salt: ::ink_storage::traits::StorageKey + Salt: ::ink::storage::traits::StorageKey, + __ink_generic_salt: ::ink::storage::traits::StorageKey > - ::ink_storage::traits::StorableHint<__ink_generic_salt> for UnitStruct + ::ink::storage::traits::StorableHint<__ink_generic_salt> for UnitStruct { type Type = UnitStruct<__ink_generic_salt>; type PreferredKey = Salt; @@ -69,11 +69,11 @@ fn struct_works() { } expands to { const _: () = { - impl<__ink_generic_salt: ::ink_storage::traits::StorageKey> - ::ink_storage::traits::StorableHint<__ink_generic_salt> for NamedFields + impl<__ink_generic_salt: ::ink::storage::traits::StorageKey> + ::ink::storage::traits::StorableHint<__ink_generic_salt> for NamedFields { type Type = NamedFields; - type PreferredKey = ::ink_storage::traits::AutoKey; + type PreferredKey = ::ink::storage::traits::AutoKey; } }; } @@ -95,9 +95,9 @@ fn struct_salt_works() { const _: () = { impl< Salt: StorageKey, - __ink_generic_salt: ::ink_storage::traits::StorageKey + __ink_generic_salt: ::ink::storage::traits::StorageKey > - ::ink_storage::traits::StorableHint<__ink_generic_salt> for NamedFields + ::ink::storage::traits::StorableHint<__ink_generic_salt> for NamedFields { type Type = NamedFields<__ink_generic_salt>; type PreferredKey = Salt; @@ -120,11 +120,11 @@ fn enum_works() { } expands to { const _: () = { - impl<__ink_generic_salt: ::ink_storage::traits::StorageKey> - ::ink_storage::traits::StorableHint<__ink_generic_salt> for MixedEnum + impl<__ink_generic_salt: ::ink::storage::traits::StorageKey> + ::ink::storage::traits::StorableHint<__ink_generic_salt> for MixedEnum { type Type = MixedEnum; - type PreferredKey = ::ink_storage::traits::AutoKey; + type PreferredKey = ::ink::storage::traits::AutoKey; } }; } @@ -146,9 +146,9 @@ fn enum_salt_works() { const _: () = { impl< Salt: traits::StorageKey, - __ink_generic_salt: ::ink_storage::traits::StorageKey + __ink_generic_salt: ::ink::storage::traits::StorageKey > - ::ink_storage::traits::StorableHint<__ink_generic_salt> for MixedEnum + ::ink::storage::traits::StorableHint<__ink_generic_salt> for MixedEnum { type Type = MixedEnum<__ink_generic_salt>; type PreferredKey = Salt; diff --git a/crates/storage/traits/derive/src/tests/storage_key.rs b/crates/storage/traits/derive/src/tests/storage_key.rs index 4c0e6bdae5b..d4de9f9c409 100644 --- a/crates/storage/traits/derive/src/tests/storage_key.rs +++ b/crates/storage/traits/derive/src/tests/storage_key.rs @@ -22,8 +22,8 @@ fn unit_struct_works() { } expands to { const _: () = { - impl ::ink_storage::traits::StorageKey for UnitStruct { - const KEY: ::ink_primitives::Key = <() as ::ink_storage::traits::StorageKey>::KEY; + impl ::ink::storage::traits::StorageKey for UnitStruct { + const KEY: ::ink::primitives::Key = <() as ::ink::storage::traits::StorageKey>::KEY; } }; } @@ -39,8 +39,8 @@ fn unit_struct_generic_works() { } expands to { const _: () = { - impl ::ink_storage::traits::StorageKey for UnitStruct { - const KEY: ::ink_primitives::Key = <() as ::ink_storage::traits::StorageKey>::KEY; + impl ::ink::storage::traits::StorageKey for UnitStruct { + const KEY: ::ink::primitives::Key = <() as ::ink::storage::traits::StorageKey>::KEY; } }; } @@ -52,12 +52,12 @@ fn unit_struct_generic_works() { fn unit_struct_salt_works() { crate::test_derive! { storage_key_derive { - struct UnitStruct; + struct UnitStruct; } expands to { const _: () = { - impl ::ink_storage::traits::StorageKey for UnitStruct { - const KEY: ::ink_primitives::Key = ::KEY; + impl ::ink::storage::traits::StorageKey for UnitStruct { + const KEY: ::ink::primitives::Key = ::KEY; } }; } @@ -77,8 +77,8 @@ fn struct_works() { } expands to { const _: () = { - impl ::ink_storage::traits::StorageKey for NamedFields { - const KEY: ::ink_primitives::Key = <() as ::ink_storage::traits::StorageKey>::KEY; + impl ::ink::storage::traits::StorageKey for NamedFields { + const KEY: ::ink::primitives::Key = <() as ::ink::storage::traits::StorageKey>::KEY; } }; } @@ -98,8 +98,8 @@ fn struct_generic_works() { } expands to { const _: () = { - impl ::ink_storage::traits::StorageKey for NamedFields { - const KEY: ::ink_primitives::Key = <() as ::ink_storage::traits::StorageKey>::KEY; + impl ::ink::storage::traits::StorageKey for NamedFields { + const KEY: ::ink::primitives::Key = <() as ::ink::storage::traits::StorageKey>::KEY; } }; } @@ -119,8 +119,8 @@ fn struct_salt_works() { } expands to { const _: () = { - impl ::ink_storage::traits::StorageKey for NamedFields { - const KEY: ::ink_primitives::Key = ::KEY; + impl ::ink::storage::traits::StorageKey for NamedFields { + const KEY: ::ink::primitives::Key = ::KEY; } }; } @@ -140,8 +140,8 @@ fn enum_works() { } expands to { const _: () = { - impl ::ink_storage::traits::StorageKey for MixedEnum { - const KEY: ::ink_primitives::Key = <() as ::ink_storage::traits::StorageKey>::KEY; + impl ::ink::storage::traits::StorageKey for MixedEnum { + const KEY: ::ink::primitives::Key = <() as ::ink::storage::traits::StorageKey>::KEY; } }; } @@ -161,8 +161,8 @@ fn enum_generic_works() { } expands to { const _: () = { - impl ::ink_storage::traits::StorageKey for MixedEnum { - const KEY: ::ink_primitives::Key = <() as ::ink_storage::traits::StorageKey>::KEY; + impl ::ink::storage::traits::StorageKey for MixedEnum { + const KEY: ::ink::primitives::Key = <() as ::ink::storage::traits::StorageKey>::KEY; } }; } @@ -182,8 +182,8 @@ fn enum_salt_works() { } expands to { const _: () = { - impl ::ink_storage::traits::StorageKey for MixedEnum { - const KEY: ::ink_primitives::Key = ::KEY; + impl ::ink::storage::traits::StorageKey for MixedEnum { + const KEY: ::ink::primitives::Key = ::KEY; } }; } diff --git a/crates/storage/traits/derive/src/tests/storage_layout.rs b/crates/storage/traits/derive/src/tests/storage_layout.rs index 59cba43543d..198d5865f05 100644 --- a/crates/storage/traits/derive/src/tests/storage_layout.rs +++ b/crates/storage/traits/derive/src/tests/storage_layout.rs @@ -22,10 +22,10 @@ fn unit_struct_works() { } expands to { const _: () = { - impl ::ink_storage::traits::StorageLayout for UnitStruct { - fn layout(__key: &::ink_primitives::Key) -> ::ink_metadata::layout::Layout { - ::ink_metadata::layout::Layout::Struct( - ::ink_metadata::layout::StructLayout::new(::core::stringify!(UnitStruct), []) + impl ::ink::storage::traits::StorageLayout for UnitStruct { + fn layout(__key: &::ink::primitives::Key) -> ::ink::metadata::layout::Layout { + ::ink::metadata::layout::Layout::Struct( + ::ink::metadata::layout::StructLayout::new(::core::stringify!(UnitStruct), []) ) } } @@ -42,23 +42,23 @@ fn tuple_struct_works() { } expands to { const _: () = { - impl ::ink_storage::traits::StorageLayout for TupleStruct { - fn layout(__key: &::ink_primitives::Key) -> ::ink_metadata::layout::Layout { - ::ink_metadata::layout::Layout::Struct( - ::ink_metadata::layout::StructLayout::new( + impl ::ink::storage::traits::StorageLayout for TupleStruct { + fn layout(__key: &::ink::primitives::Key) -> ::ink::metadata::layout::Layout { + ::ink::metadata::layout::Layout::Struct( + ::ink::metadata::layout::StructLayout::new( ::core::stringify!(TupleStruct), [ - ::ink_metadata::layout::FieldLayout::new( + ::ink::metadata::layout::FieldLayout::new( "0", - ::layout(__key), + ::layout(__key), ), - ::ink_metadata::layout::FieldLayout::new( + ::ink::metadata::layout::FieldLayout::new( "1", - ::layout(__key), + ::layout(__key), ), - ::ink_metadata::layout::FieldLayout::new( + ::ink::metadata::layout::FieldLayout::new( "2", - ::layout(__key), + ::layout(__key), ), ] ) @@ -82,23 +82,23 @@ fn named_fields_struct_works() { } expands to { const _: () = { - impl ::ink_storage::traits::StorageLayout for NamedFieldsStruct { - fn layout(__key: &::ink_primitives::Key) -> ::ink_metadata::layout::Layout { - ::ink_metadata::layout::Layout::Struct( - ::ink_metadata::layout::StructLayout::new( + impl ::ink::storage::traits::StorageLayout for NamedFieldsStruct { + fn layout(__key: &::ink::primitives::Key) -> ::ink::metadata::layout::Layout { + ::ink::metadata::layout::Layout::Struct( + ::ink::metadata::layout::StructLayout::new( ::core::stringify!(NamedFieldsStruct), [ - ::ink_metadata::layout::FieldLayout::new( + ::ink::metadata::layout::FieldLayout::new( "a", - ::layout(__key), + ::layout(__key), ), - ::ink_metadata::layout::FieldLayout::new( + ::ink::metadata::layout::FieldLayout::new( "b", - ::layout(__key), + ::layout(__key), ), - ::ink_metadata::layout::FieldLayout::new( + ::ink::metadata::layout::FieldLayout::new( "c", - ::layout(__key), + ::layout(__key), ), ] ) @@ -118,33 +118,33 @@ fn clike_enum_works() { } expands to { const _: () = { - impl ::ink_storage::traits::StorageLayout for ClikeEnum { - fn layout(__key: &::ink_primitives::Key) -> ::ink_metadata::layout::Layout { - ::ink_metadata::layout::Layout::Enum( - ::ink_metadata::layout::EnumLayout::new( + impl ::ink::storage::traits::StorageLayout for ClikeEnum { + fn layout(__key: &::ink::primitives::Key) -> ::ink::metadata::layout::Layout { + ::ink::metadata::layout::Layout::Enum( + ::ink::metadata::layout::EnumLayout::new( ::core::stringify!(ClikeEnum), - ::ink_metadata::layout::LayoutKey::from(__key), + ::ink::metadata::layout::LayoutKey::from(__key), [ { ( - ::ink_metadata::layout::Discriminant::from(0usize), - ::ink_metadata::layout::StructLayout::new( + ::ink::metadata::layout::Discriminant::from(0usize), + ::ink::metadata::layout::StructLayout::new( ::core::stringify!(A), [] ), ) }, { ( - ::ink_metadata::layout::Discriminant::from(1usize), - ::ink_metadata::layout::StructLayout::new( + ::ink::metadata::layout::Discriminant::from(1usize), + ::ink::metadata::layout::StructLayout::new( ::core::stringify!(B), [] ), ) }, { ( - ::ink_metadata::layout::Discriminant::from(2usize), - ::ink_metadata::layout::StructLayout::new( + ::ink::metadata::layout::Discriminant::from(2usize), + ::ink::metadata::layout::StructLayout::new( ::core::stringify!(C), [] ), ) @@ -175,38 +175,38 @@ fn mixed_enum_works() { } expands to { const _: () = { - impl ::ink_storage::traits::StorageLayout for MixedEnum { - fn layout(__key: &::ink_primitives::Key) -> ::ink_metadata::layout::Layout { - ::ink_metadata::layout::Layout::Enum( - ::ink_metadata::layout::EnumLayout::new( + impl ::ink::storage::traits::StorageLayout for MixedEnum { + fn layout(__key: &::ink::primitives::Key) -> ::ink::metadata::layout::Layout { + ::ink::metadata::layout::Layout::Enum( + ::ink::metadata::layout::EnumLayout::new( ::core::stringify!(MixedEnum), - ::ink_metadata::layout::LayoutKey::from(__key), + ::ink::metadata::layout::LayoutKey::from(__key), [ { ( - ::ink_metadata::layout::Discriminant::from(0usize), - ::ink_metadata::layout::StructLayout::new( + ::ink::metadata::layout::Discriminant::from(0usize), + ::ink::metadata::layout::StructLayout::new( ::core::stringify!(A), [] ), ) }, { ( - ::ink_metadata::layout::Discriminant::from(1usize), - ::ink_metadata::layout::StructLayout::new( + ::ink::metadata::layout::Discriminant::from(1usize), + ::ink::metadata::layout::StructLayout::new( ::core::stringify!(B), [ - ::ink_metadata::layout::FieldLayout::new( + ::ink::metadata::layout::FieldLayout::new( "0", - ::layout(__key), + ::layout(__key), ), - ::ink_metadata::layout::FieldLayout::new( + ::ink::metadata::layout::FieldLayout::new( "1", - ::layout(__key), + ::layout(__key), ), - ::ink_metadata::layout::FieldLayout::new( + ::ink::metadata::layout::FieldLayout::new( "2", - ::layout(__key), + ::layout(__key), ), ] ), @@ -214,21 +214,21 @@ fn mixed_enum_works() { }, { ( - ::ink_metadata::layout::Discriminant::from(2usize), - ::ink_metadata::layout::StructLayout::new( + ::ink::metadata::layout::Discriminant::from(2usize), + ::ink::metadata::layout::StructLayout::new( ::core::stringify!(C), [ - ::ink_metadata::layout::FieldLayout::new( + ::ink::metadata::layout::FieldLayout::new( "a", - ::layout(__key), + ::layout(__key), ), - ::ink_metadata::layout::FieldLayout::new( + ::ink::metadata::layout::FieldLayout::new( "b", - ::layout(__key), + ::layout(__key), ), - ::ink_metadata::layout::FieldLayout::new( + ::ink::metadata::layout::FieldLayout::new( "c", - ::layout(__key), + ::layout(__key), ), ] ), diff --git a/examples/contract-terminate/Cargo.toml b/examples/contract-terminate/Cargo.toml index 82cb97f9376..243bf0c6a7c 100644 --- a/examples/contract-terminate/Cargo.toml +++ b/examples/contract-terminate/Cargo.toml @@ -6,11 +6,7 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../crates/primitives", default-features = false } -ink_metadata = { path = "../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../crates/env", default-features = false } -ink_storage = { path = "../../crates/storage", default-features = false } -ink_lang = { path = "../../crates/lang", default-features = false } +ink = { path = "../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -23,11 +19,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/contract-terminate/lib.rs b/examples/contract-terminate/lib.rs index 707aa4dcff1..72f675b88a2 100644 --- a/examples/contract-terminate/lib.rs +++ b/examples/contract-terminate/lib.rs @@ -4,8 +4,6 @@ #![cfg_attr(not(feature = "std"), no_std)] #![allow(clippy::new_without_default)] -use ink_lang as ink; - #[ink::contract] pub mod just_terminates { /// No storage is needed for this simple contract. @@ -29,16 +27,15 @@ pub mod just_terminates { #[cfg(test)] mod tests { use super::*; - use ink_lang as ink; #[ink::test] fn terminating_works() { // given let accounts = - ink_env::test::default_accounts::(); - let contract_id = ink_env::test::callee::(); - ink_env::test::set_caller::(accounts.alice); - ink_env::test::set_account_balance::( + ink::env::test::default_accounts::(); + let contract_id = ink::env::test::callee::(); + ink::env::test::set_caller::(accounts.alice); + ink::env::test::set_account_balance::( contract_id, 100, ); @@ -48,7 +45,7 @@ pub mod just_terminates { let should_terminate = move || contract.terminate_me(); // then - ink_env::test::assert_contract_termination::( + ink::env::test::assert_contract_termination::( should_terminate, accounts.alice, 100, diff --git a/examples/contract-transfer/Cargo.toml b/examples/contract-transfer/Cargo.toml index a90735dd969..e35b3954873 100644 --- a/examples/contract-transfer/Cargo.toml +++ b/examples/contract-transfer/Cargo.toml @@ -6,12 +6,7 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../crates/primitives", default-features = false } -ink_metadata = { path = "../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../crates/env", default-features = false, features = [ "ink-debug" ] } -ink_storage = { path = "../../crates/storage", default-features = false } -ink_lang = { path = "../../crates/lang", default-features = false } -ink_prelude = { path = "../../crates/prelude", default-features = false } +ink = { path = "../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -24,11 +19,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/contract-transfer/lib.rs b/examples/contract-transfer/lib.rs index 27e419dadd9..0e159e9b159 100644 --- a/examples/contract-transfer/lib.rs +++ b/examples/contract-transfer/lib.rs @@ -4,8 +4,6 @@ #![cfg_attr(not(feature = "std"), no_std)] #![allow(clippy::new_without_default)] -use ink_lang as ink; - #[ink::contract] pub mod give_me { /// No storage is needed for this simple contract. @@ -30,8 +28,8 @@ pub mod give_me { /// - Panics in case the transfer failed for another reason. #[ink(message)] pub fn give_me(&mut self, value: Balance) { - ink_env::debug_println!("requested value: {}", value); - ink_env::debug_println!("contract balance: {}", self.env().balance()); + ink::env::debug_println!("requested value: {}", value); + ink::env::debug_println!("contract balance: {}", self.env().balance()); assert!(value <= self.env().balance(), "insufficient funds!"); @@ -54,7 +52,7 @@ pub mod give_me { /// allowed to receive value as part of the call. #[ink(message, payable, selector = 0xCAFEBABE)] pub fn was_it_ten(&self) { - ink_env::debug_println!( + ink::env::debug_println!( "received payment: {}", self.env().transferred_value() ); @@ -65,7 +63,6 @@ pub mod give_me { #[cfg(test)] mod tests { use super::*; - use ink_lang as ink; #[ink::test] fn transfer_works() { @@ -101,7 +98,7 @@ pub mod give_me { #[ink::test] fn test_transferred_value() { - use ink_lang::codegen::Env; + use ink::codegen::Env; // given let accounts = default_accounts(); let give_me = create_contract(100); @@ -117,7 +114,7 @@ pub mod give_me { // then // we use helper macro to emulate method invocation coming with payment, // and there must be no panic - ink_env::pay_with_call!(give_me.was_it_ten(), 10); + ink::env::pay_with_call!(give_me.was_it_ten(), 10); // and // balances should be changed properly @@ -140,7 +137,7 @@ pub mod give_me { // the `mock_transferred_value` as the value which the contract // will see as transferred to it. set_sender(accounts.eve); - ink_env::test::set_value_transferred::(13); + ink::env::test::set_value_transferred::(13); // then give_me.was_it_ten(); @@ -157,27 +154,29 @@ pub mod give_me { } fn contract_id() -> AccountId { - ink_env::test::callee::() + ink::env::test::callee::() } fn set_sender(sender: AccountId) { - ink_env::test::set_caller::(sender); + ink::env::test::set_caller::(sender); } fn default_accounts( - ) -> ink_env::test::DefaultAccounts { - ink_env::test::default_accounts::() + ) -> ink::env::test::DefaultAccounts { + ink::env::test::default_accounts::() } fn set_balance(account_id: AccountId, balance: Balance) { - ink_env::test::set_account_balance::( + ink::env::test::set_account_balance::( account_id, balance, ) } fn get_balance(account_id: AccountId) -> Balance { - ink_env::test::get_account_balance::(account_id) - .expect("Cannot get account balance") + ink::env::test::get_account_balance::( + account_id, + ) + .expect("Cannot get account balance") } } } diff --git a/examples/delegator/Cargo.toml b/examples/delegator/Cargo.toml index 9818d24e612..97538c709b7 100644 --- a/examples/delegator/Cargo.toml +++ b/examples/delegator/Cargo.toml @@ -6,11 +6,7 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../crates/primitives", default-features = false } -ink_metadata = { path = "../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../crates/env", default-features = false } -ink_storage = { path = "../../crates/storage", default-features = false } -ink_lang = { path = "../../crates/lang", default-features = false } +ink = { path = "../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -27,11 +23,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", diff --git a/examples/delegator/accumulator/Cargo.toml b/examples/delegator/accumulator/Cargo.toml index 4febf16c52b..4adbc40501b 100644 --- a/examples/delegator/accumulator/Cargo.toml +++ b/examples/delegator/accumulator/Cargo.toml @@ -5,12 +5,7 @@ authors = ["Parity Technologies "] edition = "2021" [dependencies] -ink_primitives = { path = "../../../crates/primitives", default-features = false } -ink_metadata = { path = "../../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../../crates/env", default-features = false } -ink_storage = { path = "../../../crates/storage", default-features = false } -ink_lang = { path = "../../../crates/lang", default-features = false } - +ink = { path = "../../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -27,11 +22,7 @@ crate-type = [ [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/delegator/accumulator/lib.rs b/examples/delegator/accumulator/lib.rs index fae1482a9a6..244ad388e68 100644 --- a/examples/delegator/accumulator/lib.rs +++ b/examples/delegator/accumulator/lib.rs @@ -5,8 +5,6 @@ pub use self::accumulator::{ AccumulatorRef, }; -use ink_lang as ink; - #[ink::contract] pub mod accumulator { /// Holds a simple `i32` value that can be incremented and decremented. diff --git a/examples/delegator/adder/Cargo.toml b/examples/delegator/adder/Cargo.toml index a5fe987090b..51cb59c2e71 100644 --- a/examples/delegator/adder/Cargo.toml +++ b/examples/delegator/adder/Cargo.toml @@ -5,11 +5,7 @@ authors = ["Parity Technologies "] edition = "2021" [dependencies] -ink_primitives = { path = "../../../crates/primitives", default-features = false } -ink_metadata = { path = "../../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../../crates/env", default-features = false } -ink_storage = { path = "../../../crates/storage", default-features = false } -ink_lang = { path = "../../../crates/lang", default-features = false } +ink = { path = "../../../crates/ink", default-features = false } accumulator = { path = "../accumulator", default-features = false, features = ["ink-as-dependency"] } @@ -29,11 +25,7 @@ crate-type = [ [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", diff --git a/examples/delegator/adder/lib.rs b/examples/delegator/adder/lib.rs index 5996ed1a787..839915c6175 100644 --- a/examples/delegator/adder/lib.rs +++ b/examples/delegator/adder/lib.rs @@ -5,8 +5,6 @@ pub use self::adder::{ AdderRef, }; -use ink_lang as ink; - #[ink::contract] mod adder { use accumulator::AccumulatorRef; diff --git a/examples/delegator/lib.rs b/examples/delegator/lib.rs index 6f3f4dc3ca4..7260621018e 100644 --- a/examples/delegator/lib.rs +++ b/examples/delegator/lib.rs @@ -1,7 +1,5 @@ #![cfg_attr(not(feature = "std"), no_std)] -use ink_lang as ink; - #[ink::contract] mod delegator { use accumulator::AccumulatorRef; @@ -17,7 +15,7 @@ mod delegator { #[derive(Debug, Copy, Clone, PartialEq, Eq, scale::Decode, scale::Encode)] #[cfg_attr( feature = "std", - derive(ink_storage::traits::StorageLayout, scale_info::TypeInfo) + derive(ink::storage::traits::StorageLayout, scale_info::TypeInfo) )] pub enum Which { Adder, diff --git a/examples/delegator/subber/Cargo.toml b/examples/delegator/subber/Cargo.toml index 8f14a198203..055e800dd76 100644 --- a/examples/delegator/subber/Cargo.toml +++ b/examples/delegator/subber/Cargo.toml @@ -5,11 +5,7 @@ authors = ["Parity Technologies "] edition = "2021" [dependencies] -ink_primitives = { path = "../../../crates/primitives", default-features = false } -ink_metadata = { path = "../../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../../crates/env", default-features = false } -ink_storage = { path = "../../../crates/storage", default-features = false } -ink_lang = { path = "../../../crates/lang", default-features = false } +ink = { path = "../../../crates/ink", default-features = false } accumulator = { path = "../accumulator", default-features = false, features = ["ink-as-dependency"] } @@ -29,11 +25,7 @@ crate-type = [ [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", diff --git a/examples/delegator/subber/lib.rs b/examples/delegator/subber/lib.rs index 35180f9bbf2..37629aca244 100644 --- a/examples/delegator/subber/lib.rs +++ b/examples/delegator/subber/lib.rs @@ -5,8 +5,6 @@ pub use self::subber::{ SubberRef, }; -use ink_lang as ink; - #[ink::contract] mod subber { use accumulator::AccumulatorRef; diff --git a/examples/dns/Cargo.toml b/examples/dns/Cargo.toml index 3555a5936bc..8a06d22d94b 100644 --- a/examples/dns/Cargo.toml +++ b/examples/dns/Cargo.toml @@ -6,11 +6,7 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../crates/primitives", default-features = false } -ink_metadata = { path = "../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../crates/env", default-features = false } -ink_storage = { path = "../../crates/storage", default-features = false } -ink_lang = { path = "../../crates/lang", default-features = false } +ink = { path = "../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -23,11 +19,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/dns/lib.rs b/examples/dns/lib.rs index 4da715a97ac..63743863044 100644 --- a/examples/dns/lib.rs +++ b/examples/dns/lib.rs @@ -1,10 +1,8 @@ #![cfg_attr(not(feature = "std"), no_std)] -use ink_lang as ink; - #[ink::contract] mod dns { - use ink_storage::Mapping; + use ink::storage::Mapping; /// Emitted whenever a new name is being registered. #[ink(event)] @@ -172,15 +170,14 @@ mod dns { #[cfg(test)] mod tests { use super::*; - use ink_lang as ink; fn default_accounts( - ) -> ink_env::test::DefaultAccounts { - ink_env::test::default_accounts::() + ) -> ink::env::test::DefaultAccounts { + ink::env::test::default_accounts::() } fn set_next_caller(caller: AccountId) { - ink_env::test::set_caller::(caller); + ink::env::test::set_caller::(caller); } #[ink::test] diff --git a/examples/erc1155/Cargo.toml b/examples/erc1155/Cargo.toml index dc055a916d8..b6ca2e5ca08 100644 --- a/examples/erc1155/Cargo.toml +++ b/examples/erc1155/Cargo.toml @@ -6,12 +6,7 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../crates/primitives", default-features = false } -ink_metadata = { path = "../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../crates/env", default-features = false } -ink_storage = { path = "../../crates/storage", default-features = false } -ink_lang = { path = "../../crates/lang", default-features = false } -ink_prelude = { path = "../../crates/prelude", default-features = false } +ink = { path = "../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -24,12 +19,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", - "ink_prelude/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/erc1155/lib.rs b/examples/erc1155/lib.rs index 625c0ac1d31..50379d964b8 100644 --- a/examples/erc1155/lib.rs +++ b/examples/erc1155/lib.rs @@ -1,8 +1,9 @@ #![cfg_attr(not(feature = "std"), no_std)] -use ink_lang as ink; -use ink_prelude::vec::Vec; -use ink_primitives::AccountId; +use ink::{ + prelude::vec::Vec, + primitives::AccountId, +}; // This is the return value that we expect if a smart contract supports receiving ERC-1155 // tokens. @@ -24,7 +25,7 @@ const _ON_ERC_1155_BATCH_RECEIVED_SELECTOR: [u8; 4] = [0xBC, 0x19, 0x7C, 0x81]; /// A type representing the unique IDs of tokens managed by this contract. pub type TokenId = u128; -type Balance = ::Balance; +type Balance = ::Balance; // The ERC-1155 error types. #[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] @@ -187,7 +188,7 @@ pub trait Erc1155TokenReceiver { mod erc1155 { use super::*; - use ink_storage::Mapping; + use ink::storage::Mapping; type Owner = AccountId; type Operator = AccountId; @@ -220,7 +221,7 @@ mod erc1155 { /// Indicate that a token's URI has been updated. #[ink(event)] pub struct Uri { - value: ink_prelude::string::String, + value: ink::prelude::string::String, #[ink(topic)] token_id: TokenId, } @@ -355,7 +356,7 @@ mod erc1155 { // supported (tests end up panicking). #[cfg(not(test))] { - use ink_env::call::{ + use ink::env::call::{ build_call, Call, ExecutionInput, @@ -377,9 +378,9 @@ mod erc1155 { .returns::>() .params(); - match ink_env::invoke_contract(¶ms) { + match ink::env::invoke_contract(¶ms) { Ok(v) => { - ink_env::debug_println!( + ink::env::debug_println!( "Received return value \"{:?}\" from contract {:?}", v, from @@ -393,11 +394,11 @@ mod erc1155 { } Err(e) => { match e { - ink_env::Error::CodeNotFound - | ink_env::Error::NotCallable => { + ink::env::Error::CodeNotFound + | ink::env::Error::NotCallable => { // Our recipient wasn't a smart contract, so there's nothing more for // us to do - ink_env::debug_println!("Recipient at {:?} from is not a smart contract ({:?})", from, e); + ink::env::debug_println!("Recipient at {:?} from is not a smart contract ({:?})", from, e); } _ => { // We got some sort of error from the call to our recipient smart @@ -584,14 +585,12 @@ mod erc1155 { use super::*; use crate::Erc1155; - use ink_lang as ink; - fn set_sender(sender: AccountId) { - ink_env::test::set_caller::(sender); + ink::env::test::set_caller::(sender); } - fn default_accounts() -> ink_env::test::DefaultAccounts { - ink_env::test::default_accounts::() + fn default_accounts() -> ink::env::test::DefaultAccounts { + ink::env::test::default_accounts::() } fn alice() -> AccountId { diff --git a/examples/erc20/Cargo.toml b/examples/erc20/Cargo.toml index 5f16ef868e2..db32cc6b1e0 100644 --- a/examples/erc20/Cargo.toml +++ b/examples/erc20/Cargo.toml @@ -6,11 +6,7 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../crates/primitives", default-features = false } -ink_metadata = { path = "../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../crates/env", default-features = false } -ink_storage = { path = "../../crates/storage", default-features = false } -ink_lang = { path = "../../crates/lang", default-features = false } +ink = { path = "../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -23,11 +19,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/erc20/lib.rs b/examples/erc20/lib.rs index 2ec53433745..a624e48d5fc 100644 --- a/examples/erc20/lib.rs +++ b/examples/erc20/lib.rs @@ -1,10 +1,8 @@ #![cfg_attr(not(feature = "std"), no_std)] -use ink_lang as ink; - #[ink::contract] mod erc20 { - use ink_storage::Mapping; + use ink::storage::Mapping; /// A simple ERC-20 contract. #[ink(storage)] @@ -219,13 +217,12 @@ mod erc20 { mod tests { use super::*; - use ink_lang as ink; - use ink_primitives::Clear; + use ink::primitives::Clear; - type Event = ::Type; + type Event = ::Type; fn assert_transfer_event( - event: &ink_env::test::EmittedEvent, + event: &ink::env::test::EmittedEvent, expected_from: Option, expected_to: Option, expected_value: Balance, @@ -281,7 +278,7 @@ mod erc20 { let _erc20 = Erc20::new(100); // Transfer event triggered during initial construction. - let emitted_events = ink_env::test::recorded_events().collect::>(); + let emitted_events = ink::env::test::recorded_events().collect::>(); assert_eq!(1, emitted_events.len()); assert_transfer_event( @@ -298,7 +295,7 @@ mod erc20 { // Constructor works. let erc20 = Erc20::new(100); // Transfer event triggered during initial construction. - let emitted_events = ink_env::test::recorded_events().collect::>(); + let emitted_events = ink::env::test::recorded_events().collect::>(); assert_transfer_event( &emitted_events[0], None, @@ -315,7 +312,7 @@ mod erc20 { // Constructor works let erc20 = Erc20::new(100); // Transfer event triggered during initial construction - let emitted_events = ink_env::test::recorded_events().collect::>(); + let emitted_events = ink::env::test::recorded_events().collect::>(); assert_transfer_event( &emitted_events[0], None, @@ -323,7 +320,7 @@ mod erc20 { 100, ); let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); // Alice owns all the tokens on contract instantiation assert_eq!(erc20.balance_of(accounts.alice), 100); // Bob does not owns tokens @@ -336,7 +333,7 @@ mod erc20 { let mut erc20 = Erc20::new(100); // Transfer event triggered during initial construction. let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); assert_eq!(erc20.balance_of(accounts.bob), 0); // Alice transfers 10 tokens to Bob. @@ -344,7 +341,7 @@ mod erc20 { // Bob owns 10 tokens. assert_eq!(erc20.balance_of(accounts.bob), 10); - let emitted_events = ink_env::test::recorded_events().collect::>(); + let emitted_events = ink::env::test::recorded_events().collect::>(); assert_eq!(emitted_events.len(), 2); // Check first transfer event related to ERC-20 instantiation. assert_transfer_event( @@ -367,14 +364,14 @@ mod erc20 { // Constructor works. let mut erc20 = Erc20::new(100); let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); assert_eq!(erc20.balance_of(accounts.bob), 0); // Set the contract as callee and Bob as caller. - let contract = ink_env::account_id::(); - ink_env::test::set_callee::(contract); - ink_env::test::set_caller::(accounts.bob); + let contract = ink::env::account_id::(); + ink::env::test::set_callee::(contract); + ink::env::test::set_caller::(accounts.bob); // Bob fails to transfers 10 tokens to Eve. assert_eq!( @@ -387,7 +384,7 @@ mod erc20 { assert_eq!(erc20.balance_of(accounts.eve), 0); // Transfer event triggered during initial construction. - let emitted_events = ink_env::test::recorded_events().collect::>(); + let emitted_events = ink::env::test::recorded_events().collect::>(); assert_eq!(emitted_events.len(), 1); assert_transfer_event( &emitted_events[0], @@ -403,7 +400,7 @@ mod erc20 { let mut erc20 = Erc20::new(100); // Transfer event triggered during initial construction. let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); // Bob fails to transfer tokens owned by Alice. assert_eq!( @@ -414,12 +411,12 @@ mod erc20 { assert_eq!(erc20.approve(accounts.bob, 10), Ok(())); // The approve event takes place. - assert_eq!(ink_env::test::recorded_events().count(), 2); + assert_eq!(ink::env::test::recorded_events().count(), 2); // Set the contract as callee and Bob as caller. - let contract = ink_env::account_id::(); - ink_env::test::set_callee::(contract); - ink_env::test::set_caller::(accounts.bob); + let contract = ink::env::account_id::(); + ink::env::test::set_callee::(contract); + ink::env::test::set_caller::(accounts.bob); // Bob transfers tokens from Alice to Eve. assert_eq!( @@ -430,7 +427,7 @@ mod erc20 { assert_eq!(erc20.balance_of(accounts.eve), 10); // Check all transfer events that happened during the previous calls: - let emitted_events = ink_env::test::recorded_events().collect::>(); + let emitted_events = ink::env::test::recorded_events().collect::>(); assert_eq!(emitted_events.len(), 3); assert_transfer_event( &emitted_events[0], @@ -451,7 +448,7 @@ mod erc20 { fn allowance_must_not_change_on_failed_transfer() { let mut erc20 = Erc20::new(100); let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); // Alice approves Bob for token transfers on her behalf. let alice_balance = erc20.balance_of(accounts.alice); @@ -459,12 +456,12 @@ mod erc20 { assert_eq!(erc20.approve(accounts.bob, initial_allowance), Ok(())); // Get contract address. - let callee = ink_env::account_id::(); - ink_env::test::set_callee::(callee); - ink_env::test::set_caller::(accounts.bob); + let callee = ink::env::account_id::(); + ink::env::test::set_callee::(callee); + ink::env::test::set_caller::(accounts.bob); // Bob tries to transfer tokens from Alice to Eve. - let emitted_events_before = ink_env::test::recorded_events().count(); + let emitted_events_before = ink::env::test::recorded_events().count(); assert_eq!( erc20.transfer_from(accounts.alice, accounts.eve, alice_balance + 1), Err(Error::InsufficientBalance) @@ -477,7 +474,7 @@ mod erc20 { // No more events must have been emitted assert_eq!( emitted_events_before, - ink_env::test::recorded_events().count() + ink::env::test::recorded_events().count() ) } @@ -507,11 +504,15 @@ mod erc20 { where T: scale::Encode, { - use ink_env::hash::{ - Blake2x256, - CryptoHash, - HashOutput, + use ink::{ + env::hash::{ + Blake2x256, + CryptoHash, + HashOutput, + }, + primitives::Clear, }; + let mut result = Hash::clear(); let len_result = result.as_ref().len(); let encoded = entity.encode(); diff --git a/examples/erc721/Cargo.toml b/examples/erc721/Cargo.toml index 20857ee0e84..3b984a25abe 100644 --- a/examples/erc721/Cargo.toml +++ b/examples/erc721/Cargo.toml @@ -6,11 +6,7 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../crates/primitives", default-features = false } -ink_metadata = { path = "../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../crates/env", default-features = false } -ink_storage = { path = "../../crates/storage", default-features = false } -ink_lang = { path = "../../crates/lang", default-features = false } +ink = { path = "../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -23,11 +19,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/erc721/lib.rs b/examples/erc721/lib.rs index da3d3ebee48..e85be4fa587 100644 --- a/examples/erc721/lib.rs +++ b/examples/erc721/lib.rs @@ -50,11 +50,9 @@ #![cfg_attr(not(feature = "std"), no_std)] -use ink_lang as ink; - #[ink::contract] mod erc721 { - use ink_storage::Mapping; + use ink::storage::Mapping; use scale::{ Decode, @@ -409,12 +407,11 @@ mod erc721 { mod tests { /// Imports all the definitions from the outer scope so we can use them here. use super::*; - use ink_lang as ink; #[ink::test] fn mint_works() { let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); // Create a new contract instance. let mut erc721 = Erc721::new(); // Token 1 does not exists. @@ -430,13 +427,13 @@ mod erc721 { #[ink::test] fn mint_existing_should_fail() { let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); // Create a new contract instance. let mut erc721 = Erc721::new(); // Create token Id 1. assert_eq!(erc721.mint(1), Ok(())); // The first Transfer event takes place - assert_eq!(1, ink_env::test::recorded_events().count()); + assert_eq!(1, ink::env::test::recorded_events().count()); // Alice owns 1 token. assert_eq!(erc721.balance_of(accounts.alice), 1); // Alice owns token Id 1. @@ -449,7 +446,7 @@ mod erc721 { #[ink::test] fn transfer_works() { let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); // Create a new contract instance. let mut erc721 = Erc721::new(); // Create token Id 1 for Alice @@ -459,11 +456,11 @@ mod erc721 { // Bob does not owns any token assert_eq!(erc721.balance_of(accounts.bob), 0); // The first Transfer event takes place - assert_eq!(1, ink_env::test::recorded_events().count()); + assert_eq!(1, ink::env::test::recorded_events().count()); // Alice transfers token 1 to Bob assert_eq!(erc721.transfer(accounts.bob, 1), Ok(())); // The second Transfer event takes place - assert_eq!(2, ink_env::test::recorded_events().count()); + assert_eq!(2, ink::env::test::recorded_events().count()); // Bob owns token 1 assert_eq!(erc721.balance_of(accounts.bob), 1); } @@ -471,7 +468,7 @@ mod erc721 { #[ink::test] fn invalid_transfer_should_fail() { let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); // Create a new contract instance. let mut erc721 = Erc721::new(); // Transfer token fails if it does not exists. @@ -493,7 +490,7 @@ mod erc721 { #[ink::test] fn approved_transfer_works() { let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); // Create a new contract instance. let mut erc721 = Erc721::new(); // Create token Id 1. @@ -522,7 +519,7 @@ mod erc721 { #[ink::test] fn approved_for_all_works() { let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); // Create a new contract instance. let mut erc721 = Erc721::new(); // Create token Id 1. @@ -565,7 +562,7 @@ mod erc721 { #[ink::test] fn not_approved_transfer_should_fail() { let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); // Create a new contract instance. let mut erc721 = Erc721::new(); // Create token Id 1. @@ -594,7 +591,7 @@ mod erc721 { #[ink::test] fn burn_works() { let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); // Create a new contract instance. let mut erc721 = Erc721::new(); // Create token Id 1 for Alice @@ -622,7 +619,7 @@ mod erc721 { #[ink::test] fn burn_fails_not_owner() { let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); // Create a new contract instance. let mut erc721 = Erc721::new(); // Create token Id 1 for Alice @@ -633,7 +630,7 @@ mod erc721 { } fn set_caller(sender: AccountId) { - ink_env::test::set_caller::(sender); + ink::env::test::set_caller::(sender); } } } diff --git a/examples/flipper/Cargo.toml b/examples/flipper/Cargo.toml index cf3a5c21955..648ec777ebd 100644 --- a/examples/flipper/Cargo.toml +++ b/examples/flipper/Cargo.toml @@ -6,11 +6,7 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../crates/primitives", default-features = false } -ink_metadata = { path = "../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../crates/env", default-features = false } -ink_storage = { path = "../../crates/storage", default-features = false } -ink_lang = { path = "../../crates/lang", default-features = false } +ink = { path = "../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -23,11 +19,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/flipper/lib.rs b/examples/flipper/lib.rs index ec8c3026533..58f191054d6 100644 --- a/examples/flipper/lib.rs +++ b/examples/flipper/lib.rs @@ -1,7 +1,5 @@ #![cfg_attr(not(feature = "std"), no_std)] -use ink_lang as ink; - #[ink::contract] pub mod flipper { #[ink(storage)] @@ -38,7 +36,6 @@ pub mod flipper { #[cfg(test)] mod tests { use super::*; - use ink_lang as ink; #[ink::test] fn default_works() { diff --git a/examples/incrementer/Cargo.toml b/examples/incrementer/Cargo.toml index 8a44a5b2f3b..09014edc7a4 100644 --- a/examples/incrementer/Cargo.toml +++ b/examples/incrementer/Cargo.toml @@ -6,11 +6,7 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../crates/primitives", default-features = false } -ink_metadata = { path = "../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../crates/env", default-features = false } -ink_storage = { path = "../../crates/storage", default-features = false } -ink_lang = { path = "../../crates/lang", default-features = false } +ink = { path = "../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -23,11 +19,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/incrementer/lib.rs b/examples/incrementer/lib.rs index 05e88494379..2a2699963ae 100644 --- a/examples/incrementer/lib.rs +++ b/examples/incrementer/lib.rs @@ -1,7 +1,5 @@ #![cfg_attr(not(feature = "std"), no_std)] -use ink_lang as ink; - #[ink::contract] mod incrementer { #[ink(storage)] @@ -34,7 +32,6 @@ mod incrementer { #[cfg(test)] mod tests { use super::*; - use ink_lang as ink; #[ink::test] fn default_works() { diff --git a/examples/mother/Cargo.toml b/examples/mother/Cargo.toml index 7809a3e1b29..aa9696af543 100755 --- a/examples/mother/Cargo.toml +++ b/examples/mother/Cargo.toml @@ -7,12 +7,7 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../crates/primitives", default-features = false } -ink_metadata = { path = "../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../crates/env", default-features = false } -ink_storage = { path = "../../crates/storage", default-features = false } -ink_lang = { path = "../../crates/lang", default-features = false } -ink_prelude = { path = "../../crates/prelude", default-features = false } +ink = { path = "../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -28,10 +23,7 @@ crate-type = [ [features] default = ["std"] std = [ - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_primitives/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/mother/lib.rs b/examples/mother/lib.rs index 3f4898356ab..c0dc79887c2 100755 --- a/examples/mother/lib.rs +++ b/examples/mother/lib.rs @@ -17,11 +17,9 @@ #![cfg_attr(not(feature = "std"), no_std)] -use ink_lang as ink; - #[ink::contract] mod mother { - use ink_prelude::{ + use ink::prelude::{ string::{ String, ToString, @@ -29,7 +27,7 @@ mod mother { vec::Vec, }; - use ink_storage::Mapping; + use ink::storage::Mapping; /// Struct for storing winning bids per bidding sample (a block). /// Vector index corresponds to sample number. @@ -37,7 +35,7 @@ mod mother { #[derive(Default, PartialEq, Eq, Debug, Clone, scale::Decode, scale::Encode)] #[cfg_attr( feature = "std", - derive(ink_storage::traits::StorageLayout, scale_info::TypeInfo) + derive(ink::storage::traits::StorageLayout, scale_info::TypeInfo) )] pub struct Bids(Vec>>); @@ -45,7 +43,7 @@ mod mother { #[derive(PartialEq, Eq, Debug, Clone, scale::Decode, scale::Encode)] #[cfg_attr( feature = "std", - derive(ink_storage::traits::StorageLayout, scale_info::TypeInfo) + derive(ink::storage::traits::StorageLayout, scale_info::TypeInfo) )] pub enum Outline { NoWinner, @@ -59,7 +57,7 @@ mod mother { #[derive(PartialEq, Eq, Debug, Clone, scale::Decode, scale::Encode)] #[cfg_attr( feature = "std", - derive(ink_storage::traits::StorageLayout, scale_info::TypeInfo) + derive(ink::storage::traits::StorageLayout, scale_info::TypeInfo) )] pub enum Status { /// An auction has not started yet. @@ -81,7 +79,7 @@ mod mother { #[derive(Debug, PartialEq, Eq, Clone, scale::Decode, scale::Encode)] #[cfg_attr( feature = "std", - derive(ink_storage::traits::StorageLayout, scale_info::TypeInfo) + derive(ink::storage::traits::StorageLayout, scale_info::TypeInfo) )] pub struct Auction { /// Branded name of the auction event. @@ -178,14 +176,13 @@ mod mother { /// Prints the specified string into node's debug log. #[ink(message)] pub fn debug_log(&mut self, _message: String) { - ink_env::debug_println!("debug_log: {}", _message); + ink::env::debug_println!("debug_log: {}", _message); } } #[cfg(test)] mod tests { use super::*; - use ink_lang as ink; #[ink::test] fn echo_auction_works() { diff --git a/examples/multisig/Cargo.toml b/examples/multisig/Cargo.toml index 1d6b6e0c8d1..10ede315eca 100755 --- a/examples/multisig/Cargo.toml +++ b/examples/multisig/Cargo.toml @@ -6,12 +6,7 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../crates/primitives", default-features = false } -ink_metadata = { path = "../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../crates/env", default-features = false } -ink_storage = { path = "../../crates/storage", default-features = false } -ink_lang = { path = "../../crates/lang", default-features = false } -ink_prelude = { path = "../../crates/prelude", default-features = false } +ink = { path = "../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -24,12 +19,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", - "ink_primitives/std", - "ink_prelude/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/multisig/lib.rs b/examples/multisig/lib.rs index 62e0be07c26..4b9ac0bb8e2 100755 --- a/examples/multisig/lib.rs +++ b/examples/multisig/lib.rs @@ -60,20 +60,21 @@ pub use self::multisig::{ Multisig, Transaction, }; -use ink_lang as ink; #[ink::contract] mod multisig { - use ink_env::{ - call::{ - build_call, - Call, - ExecutionInput, + use ink::{ + env::{ + call::{ + build_call, + Call, + ExecutionInput, + }, + CallFlags, }, - CallFlags, + prelude::vec::Vec, + storage::Mapping, }; - use ink_prelude::vec::Vec; - use ink_storage::Mapping; use scale::Output; /// Tune this to your liking but be wary that allowing too many owners will not perform well. @@ -98,7 +99,7 @@ mod multisig { #[derive(Clone, Copy, scale::Decode, scale::Encode)] #[cfg_attr( feature = "std", - derive(scale_info::TypeInfo, ink_storage::traits::StorageLayout) + derive(scale_info::TypeInfo, ink::storage::traits::StorageLayout) )] pub enum ConfirmationStatus { /// The transaction is already confirmed. @@ -117,7 +118,7 @@ mod multisig { PartialEq, Eq, scale_info::TypeInfo, - ink_storage::traits::StorageLayout + ink::storage::traits::StorageLayout ) )] pub struct Transaction { @@ -154,7 +155,7 @@ mod multisig { PartialEq, Eq, scale_info::TypeInfo, - ink_storage::traits::StorageLayout + ink::storage::traits::StorageLayout ) )] pub struct Transactions { @@ -306,7 +307,7 @@ mod multisig { /// Since this message must be send by the wallet itself it has to be build as a /// `Transaction` and dispatched through `submit_transaction` and `invoke_transaction`: /// ```should_panic - /// use ink_env::{ + /// use ink::env::{ /// call::{ /// utils::ArgumentList, /// Call, @@ -317,7 +318,7 @@ mod multisig { /// AccountId, /// DefaultEnvironment as Env, /// }; - /// use ink_lang::selector_bytes; + /// use ink::selector_bytes; /// use scale::Encode; /// use multisig::{Transaction, ConfirmationStatus}; /// @@ -340,7 +341,7 @@ mod multisig { /// // /// // Note that the selector bytes of the `submit_transaction` method /// // are `[86, 244, 13, 223]`. - /// let (id, _status) = ink_env::call::build_call::() + /// let (id, _status) = ink::env::call::build_call::() /// .call_type(Call::new().callee(wallet_id)) /// .gas_limit(0) /// .exec_input(ExecutionInput::new(Selector::new([86, 244, 13, 223])) @@ -354,7 +355,7 @@ mod multisig { /// // /// // Note that the selector bytes of the `invoke_transaction` method /// // are `[185, 50, 225, 236]`. - /// ink_env::call::build_call::() + /// ink::env::call::build_call::() /// .call_type(Call::new().callee(wallet_id)) /// .gas_limit(0) /// .exec_input(ExecutionInput::new(Selector::new([185, 50, 225, 236])) @@ -536,7 +537,7 @@ mod multisig { self.ensure_confirmed(trans_id); let t = self.take_transaction(trans_id).expect(WRONG_TRANSACTION_ID); assert!(self.env().transferred_value() == t.transferred_value); - let result = build_call::<::Env>() + let result = build_call::<::Env>() .call_type( Call::new() .callee(t.callee) @@ -569,7 +570,7 @@ mod multisig { ) -> Result, Error> { self.ensure_confirmed(trans_id); let t = self.take_transaction(trans_id).expect(WRONG_TRANSACTION_ID); - let result = build_call::<::Env>() + let result = build_call::<::Env>() .call_type( Call::new() .callee(t.callee) @@ -713,11 +714,10 @@ mod multisig { #[cfg(test)] mod tests { use super::*; - use ink_env::{ + use ink::env::{ call::utils::ArgumentList, test, }; - use ink_lang as ink; const WALLET: [u8; 32] = [7; 32]; @@ -739,7 +739,7 @@ mod multisig { } fn set_caller(sender: AccountId) { - ink_env::test::set_caller::(sender); + ink::env::test::set_caller::(sender); } fn set_from_wallet() { @@ -758,13 +758,13 @@ mod multisig { } fn default_accounts() -> test::DefaultAccounts { - ink_env::test::default_accounts::() + ink::env::test::default_accounts::() } fn build_contract() -> Multisig { // Set the contract's address as `WALLET`. let callee: AccountId = AccountId::from(WALLET); - ink_env::test::set_callee::(callee); + ink::env::test::set_callee::(callee); let accounts = default_accounts(); let owners = vec![accounts.alice, accounts.bob, accounts.eve]; diff --git a/examples/payment-channel/Cargo.toml b/examples/payment-channel/Cargo.toml index 28f87220e95..d9055397abb 100755 --- a/examples/payment-channel/Cargo.toml +++ b/examples/payment-channel/Cargo.toml @@ -6,18 +6,14 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../crates/primitives", default-features = false } -ink_metadata = { path = "../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../crates/env", default-features = false } -ink_storage = { path = "../../crates/storage", default-features = false } -ink_lang = { path = "../../crates/lang", default-features = false } +ink = { path = "../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"] } [dev-dependencies] hex-literal = { version = "0.3" } -sp-core = { version = "6.0.0", default-features = false } +sp-core = "6.0.0" [lib] name = "payment_channel" @@ -27,13 +23,9 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_primitives/std", + "ink/std", "scale/std", "scale-info/std", - "sp-core/std", ] ink-as-dependency = [] diff --git a/examples/payment-channel/lib.rs b/examples/payment-channel/lib.rs index 438d7f0a987..6742cde5898 100755 --- a/examples/payment-channel/lib.rs +++ b/examples/payment-channel/lib.rs @@ -39,8 +39,6 @@ #![cfg_attr(not(feature = "std"), no_std)] -use ink_lang as ink; - #[ink::contract] mod payment_channel { @@ -261,14 +259,17 @@ mod payment_channel { fn is_signature_valid(&self, amount: Balance, signature: [u8; 65]) -> bool { let encodable = (self.env().account_id(), amount); let mut message = - ::Type::default(); - ink_env::hash_encoded::(&encodable, &mut message); + ::Type::default(); + ink::env::hash_encoded::( + &encodable, + &mut message, + ); let mut pub_key = [0; 33]; - ink_env::ecdsa_recover(&signature, &message, &mut pub_key) + ink::env::ecdsa_recover(&signature, &message, &mut pub_key) .expect("recover failed"); let mut signature_account_id = [0; 32]; - ::hash( + ::hash( &pub_key, &mut signature_account_id, ); @@ -282,34 +283,33 @@ mod payment_channel { use super::*; use hex_literal; - use ink_lang as ink; use sp_core::{ Encode, Pair, }; fn default_accounts( - ) -> ink_env::test::DefaultAccounts { - ink_env::test::default_accounts::() + ) -> ink::env::test::DefaultAccounts { + ink::env::test::default_accounts::() } fn set_next_caller(caller: AccountId) { - ink_env::test::set_caller::(caller); + ink::env::test::set_caller::(caller); } fn set_account_balance(account: AccountId, balance: Balance) { - ink_env::test::set_account_balance::( + ink::env::test::set_account_balance::( account, balance, ); } fn get_account_balance(account: AccountId) -> Balance { - ink_env::test::get_account_balance::(account) + ink::env::test::get_account_balance::(account) .expect("Cannot get account balance") } fn advance_block() { - ink_env::test::advance_block::(); + ink::env::test::advance_block::(); } fn get_current_time() -> Timestamp { @@ -332,7 +332,7 @@ mod payment_channel { .try_into() .expect("slice with incorrect length"); let mut account_id = [0; 32]; - ::hash( + ::hash( &compressed_pub_key, &mut account_id, ); @@ -342,15 +342,15 @@ mod payment_channel { fn contract_id() -> AccountId { let accounts = default_accounts(); let contract_id = accounts.charlie; - ink_env::test::set_callee::(contract_id); + ink::env::test::set_callee::(contract_id); contract_id } fn sign(contract_id: AccountId, amount: Balance) -> [u8; 65] { let encodable = (contract_id, amount); let mut hash = - ::Type::default(); // 256-bit buffer - ink_env::hash_encoded::(&encodable, &mut hash); + ::Type::default(); // 256-bit buffer + ink::env::hash_encoded::(&encodable, &mut hash); // Use Dan's seed // `subkey inspect //Dan --scheme Ecdsa --output-type json | jq .secretSeed` @@ -408,7 +408,7 @@ mod payment_channel { // then let should_close = move || payment_channel.close(amount, signature).unwrap(); - ink_env::test::assert_contract_termination::( + ink::env::test::assert_contract_termination::( should_close, accounts.alice, amount, @@ -548,7 +548,7 @@ mod payment_channel { // then let should_close = move || payment_channel.claim_timeout().unwrap(); - ink_env::test::assert_contract_termination::( + ink::env::test::assert_contract_termination::( should_close, accounts.alice, mock_deposit_value, diff --git a/examples/psp22-extension/Cargo.toml b/examples/psp22-extension/Cargo.toml index 92e34a0705e..54b74419caa 100755 --- a/examples/psp22-extension/Cargo.toml +++ b/examples/psp22-extension/Cargo.toml @@ -6,12 +6,7 @@ edition = "2021" publish = false [dependencies] -ink_prelude = { path = "../../crates/prelude", default-features = false } -ink_primitives = { path = "../../crates/primitives", default-features = false } -ink_metadata = { path = "../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../crates/env", default-features = false } -ink_storage = { path = "../../crates/storage", default-features = false } -ink_lang = { path = "../../crates/lang", default-features = false } +ink = { path = "../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -24,11 +19,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_prelude/std", - "ink_primitives/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/psp22-extension/lib.rs b/examples/psp22-extension/lib.rs index d8ed8ae850c..2538fdda7d5 100755 --- a/examples/psp22-extension/lib.rs +++ b/examples/psp22-extension/lib.rs @@ -1,11 +1,12 @@ #![cfg_attr(not(feature = "std"), no_std)] -use ink_env::Environment; -use ink_lang as ink; -use ink_prelude::vec::Vec; +use ink::{ + env::Environment, + prelude::vec::Vec, +}; -type DefaultAccountId = ::AccountId; -type DefaultBalance = ::Balance; +type DefaultAccountId = ::AccountId; +type DefaultBalance = ::Balance; #[ink::chain_extension] pub trait Psp22Extension { @@ -90,7 +91,7 @@ impl From for Psp22Error { } } -impl ink_env::chain_extension::FromStatusCode for Psp22Error { +impl ink::env::chain_extension::FromStatusCode for Psp22Error { fn from_status_code(status_code: u32) -> core::result::Result<(), Self> { match status_code { 0 => Ok(()), @@ -107,13 +108,13 @@ pub enum CustomEnvironment {} impl Environment for CustomEnvironment { const MAX_EVENT_TOPICS: usize = - ::MAX_EVENT_TOPICS; + ::MAX_EVENT_TOPICS; type AccountId = DefaultAccountId; type Balance = DefaultBalance; - type Hash = ::Hash; - type Timestamp = ::Timestamp; - type BlockNumber = ::BlockNumber; + type Hash = ::Hash; + type Timestamp = ::Timestamp; + type BlockNumber = ::BlockNumber; type ChainExtension = crate::Psp22Extension; } diff --git a/examples/rand-extension/Cargo.toml b/examples/rand-extension/Cargo.toml index 03193741a6f..ac4f63824d2 100755 --- a/examples/rand-extension/Cargo.toml +++ b/examples/rand-extension/Cargo.toml @@ -6,11 +6,7 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../crates/primitives", default-features = false } -ink_metadata = { path = "../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../crates/env", default-features = false } -ink_storage = { path = "../../crates/storage", default-features = false } -ink_lang = { path = "../../crates/lang", default-features = false } +ink = { path = "../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -23,10 +19,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_primitives/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/rand-extension/lib.rs b/examples/rand-extension/lib.rs index bf6740937ae..5dc4f0a3318 100755 --- a/examples/rand-extension/lib.rs +++ b/examples/rand-extension/lib.rs @@ -1,7 +1,6 @@ #![cfg_attr(not(feature = "std"), no_std)] -use ink_env::Environment; -use ink_lang as ink; +use ink::env::Environment; /// This is an example of how an ink! contract may call the Substrate /// runtime function `RandomnessCollectiveFlip::random_seed`. See the @@ -24,7 +23,7 @@ pub enum RandomReadErr { FailGetRandomSource, } -impl ink_env::chain_extension::FromStatusCode for RandomReadErr { +impl ink::env::chain_extension::FromStatusCode for RandomReadErr { fn from_status_code(status_code: u32) -> Result<(), Self> { match status_code { 0 => Ok(()), @@ -40,13 +39,13 @@ pub enum CustomEnvironment {} impl Environment for CustomEnvironment { const MAX_EVENT_TOPICS: usize = - ::MAX_EVENT_TOPICS; + ::MAX_EVENT_TOPICS; - type AccountId = ::AccountId; - type Balance = ::Balance; - type Hash = ::Hash; - type BlockNumber = ::BlockNumber; - type Timestamp = ::Timestamp; + type AccountId = ::AccountId; + type Balance = ::Balance; + type Hash = ::Hash; + type BlockNumber = ::BlockNumber; + type Timestamp = ::Timestamp; type ChainExtension = FetchRandom; } @@ -111,7 +110,6 @@ mod rand_extension { mod tests { /// Imports all the definitions from the outer scope so we can use them here. use super::*; - use ink_lang as ink; /// We test if the default constructor does its job. #[ink::test] @@ -124,7 +122,7 @@ mod rand_extension { fn chain_extension_works() { // given struct MockedExtension; - impl ink_env::test::ChainExtension for MockedExtension { + impl ink::env::test::ChainExtension for MockedExtension { /// The static function id of the chain extension. fn func_id(&self) -> u32 { 1101 @@ -134,7 +132,7 @@ mod rand_extension { /// /// Returns an error code and may fill the `output` buffer with a /// SCALE encoded result. The error code is taken from the - /// `ink_env::chain_extension::FromStatusCode` implementation for + /// `ink::env::chain_extension::FromStatusCode` implementation for /// `RandomReadErr`. fn call(&mut self, _input: &[u8], output: &mut Vec) -> u32 { let ret: [u8; 32] = [1; 32]; @@ -142,7 +140,7 @@ mod rand_extension { 0 } } - ink_env::test::register_chain_extension(MockedExtension); + ink::env::test::register_chain_extension(MockedExtension); let mut rand_extension = RandExtension::default(); assert_eq!(rand_extension.get(), [0; 32]); diff --git a/examples/trait-erc20/Cargo.toml b/examples/trait-erc20/Cargo.toml index 58ebaa1c7e8..a60e604d6d3 100644 --- a/examples/trait-erc20/Cargo.toml +++ b/examples/trait-erc20/Cargo.toml @@ -6,11 +6,7 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../crates/primitives", default-features = false } -ink_metadata = { path = "../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../crates/env", default-features = false } -ink_storage = { path = "../../crates/storage", default-features = false } -ink_lang = { path = "../../crates/lang", default-features = false } +ink = { path = "../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -23,11 +19,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/trait-erc20/lib.rs b/examples/trait-erc20/lib.rs index 1f770e44024..e48679cb74a 100644 --- a/examples/trait-erc20/lib.rs +++ b/examples/trait-erc20/lib.rs @@ -1,11 +1,8 @@ #![cfg_attr(not(feature = "std"), no_std)] -use ink_lang as ink; - #[ink::contract] mod erc20 { - use ink_lang as ink; - use ink_storage::Mapping; + use ink::storage::Mapping; /// The ERC-20 error types. #[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] @@ -262,18 +259,19 @@ mod erc20 { mod tests { /// Imports all the definitions from the outer scope so we can use them here. use super::*; - use ink_env::hash::{ - Blake2x256, - CryptoHash, - HashOutput, + use ink::{ + env::hash::{ + Blake2x256, + CryptoHash, + HashOutput, + }, + primitives::Clear, }; - use ink_lang as ink; - use ink_primitives::Clear; - type Event = ::Type; + type Event = ::Type; fn assert_transfer_event( - event: &ink_env::test::EmittedEvent, + event: &ink::env::test::EmittedEvent, expected_from: Option, expected_to: Option, expected_value: Balance, @@ -346,7 +344,7 @@ mod erc20 { assert_eq!(::total_supply(&erc20), initial_supply); // Transfer event triggered during initial construction. - let emitted_events = ink_env::test::recorded_events().collect::>(); + let emitted_events = ink::env::test::recorded_events().collect::>(); assert_eq!(1, emitted_events.len()); assert_transfer_event( @@ -364,7 +362,7 @@ mod erc20 { let initial_supply = 100; let erc20 = Erc20::new(initial_supply); // Transfer event triggered during initial construction. - let emitted_events = ink_env::test::recorded_events().collect::>(); + let emitted_events = ink::env::test::recorded_events().collect::>(); assert_transfer_event( &emitted_events[0], None, @@ -382,7 +380,7 @@ mod erc20 { let initial_supply = 100; let erc20 = Erc20::new(initial_supply); // Transfer event triggered during initial construction - let emitted_events = ink_env::test::recorded_events().collect::>(); + let emitted_events = ink::env::test::recorded_events().collect::>(); assert_transfer_event( &emitted_events[0], None, @@ -390,7 +388,7 @@ mod erc20 { 100, ); let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); // Alice owns all the tokens on contract instantiation assert_eq!(erc20.balance_of(accounts.alice), 100); // Bob does not owns tokens @@ -404,7 +402,7 @@ mod erc20 { let mut erc20 = Erc20::new(initial_supply); // Transfer event triggered during initial construction. let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); assert_eq!(erc20.balance_of(accounts.bob), 0); // Alice transfers 10 tokens to Bob. @@ -412,7 +410,7 @@ mod erc20 { // Bob owns 10 tokens. assert_eq!(erc20.balance_of(accounts.bob), 10); - let emitted_events = ink_env::test::recorded_events().collect::>(); + let emitted_events = ink::env::test::recorded_events().collect::>(); assert_eq!(emitted_events.len(), 2); // Check first transfer event related to ERC-20 instantiation. assert_transfer_event( @@ -436,7 +434,7 @@ mod erc20 { let initial_supply = 100; let mut erc20 = Erc20::new(initial_supply); let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); assert_eq!(erc20.balance_of(accounts.bob), 0); // Set Bob as caller @@ -453,7 +451,7 @@ mod erc20 { assert_eq!(erc20.balance_of(accounts.eve), 0); // Transfer event triggered during initial construction. - let emitted_events = ink_env::test::recorded_events().collect::>(); + let emitted_events = ink::env::test::recorded_events().collect::>(); assert_eq!(emitted_events.len(), 1); assert_transfer_event( &emitted_events[0], @@ -470,7 +468,7 @@ mod erc20 { let mut erc20 = Erc20::new(initial_supply); // Transfer event triggered during initial construction. let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); // Bob fails to transfer tokens owned by Alice. assert_eq!( @@ -481,7 +479,7 @@ mod erc20 { assert_eq!(erc20.approve(accounts.bob, 10), Ok(())); // The approve event takes place. - assert_eq!(ink_env::test::recorded_events().count(), 2); + assert_eq!(ink::env::test::recorded_events().count(), 2); // Set Bob as caller. set_caller(accounts.bob); @@ -495,7 +493,7 @@ mod erc20 { assert_eq!(erc20.balance_of(accounts.eve), 10); // Check all transfer events that happened during the previous calls: - let emitted_events = ink_env::test::recorded_events().collect::>(); + let emitted_events = ink::env::test::recorded_events().collect::>(); assert_eq!(emitted_events.len(), 3); assert_transfer_event( &emitted_events[0], @@ -517,7 +515,7 @@ mod erc20 { let initial_supply = 100; let mut erc20 = Erc20::new(initial_supply); let accounts = - ink_env::test::default_accounts::(); + ink::env::test::default_accounts::(); // Alice approves Bob for token transfers on her behalf. let alice_balance = erc20.balance_of(accounts.alice); @@ -528,7 +526,7 @@ mod erc20 { set_caller(accounts.bob); // Bob tries to transfer tokens from Alice to Eve. - let emitted_events_before = ink_env::test::recorded_events(); + let emitted_events_before = ink::env::test::recorded_events(); assert_eq!( erc20.transfer_from(accounts.alice, accounts.eve, alice_balance + 1), Err(Error::InsufficientBalance) @@ -539,12 +537,12 @@ mod erc20 { initial_allowance ); // No more events must have been emitted - let emitted_events_after = ink_env::test::recorded_events(); + let emitted_events_after = ink::env::test::recorded_events(); assert_eq!(emitted_events_before.count(), emitted_events_after.count()); } fn set_caller(sender: AccountId) { - ink_env::test::set_caller::(sender); + ink::env::test::set_caller::(sender); } /// For calculating the event topic hash. diff --git a/examples/trait-flipper/Cargo.toml b/examples/trait-flipper/Cargo.toml index 695230ab7ba..6b8877a9826 100644 --- a/examples/trait-flipper/Cargo.toml +++ b/examples/trait-flipper/Cargo.toml @@ -6,11 +6,7 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../crates/primitives", default-features = false } -ink_metadata = { path = "../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../crates/env", default-features = false } -ink_storage = { path = "../../crates/storage", default-features = false } -ink_lang = { path = "../../crates/lang", default-features = false } +ink = { path = "../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -23,11 +19,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/trait-flipper/lib.rs b/examples/trait-flipper/lib.rs index 46a7c01148e..fc11987d9c5 100644 --- a/examples/trait-flipper/lib.rs +++ b/examples/trait-flipper/lib.rs @@ -1,8 +1,6 @@ #![cfg_attr(not(feature = "std"), no_std)] #![allow(clippy::new_without_default)] -use ink_lang as ink; - #[ink::trait_definition] pub trait Flip { /// Flips the current value of the Flipper's boolean. @@ -48,7 +46,6 @@ pub mod flipper { #[cfg(test)] mod tests { use super::*; - use ink_lang as ink; #[ink::test] fn default_works() { diff --git a/examples/trait-incrementer/Cargo.toml b/examples/trait-incrementer/Cargo.toml index a13cdf77931..7252b65c7b5 100644 --- a/examples/trait-incrementer/Cargo.toml +++ b/examples/trait-incrementer/Cargo.toml @@ -6,11 +6,7 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../crates/primitives", default-features = false } -ink_metadata = { path = "../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../crates/env", default-features = false } -ink_storage = { path = "../../crates/storage", default-features = false } -ink_lang = { path = "../../crates/lang", default-features = false } +ink = { path = "../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -24,11 +20,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", "traits/std", diff --git a/examples/trait-incrementer/lib.rs b/examples/trait-incrementer/lib.rs index af21de87f83..051a23cfe19 100644 --- a/examples/trait-incrementer/lib.rs +++ b/examples/trait-incrementer/lib.rs @@ -1,8 +1,6 @@ #![cfg_attr(not(feature = "std"), no_std)] #![allow(clippy::new_without_default)] -use ink_lang as ink; - #[ink::contract] pub mod incrementer { use traits::{ diff --git a/examples/trait-incrementer/traits/Cargo.toml b/examples/trait-incrementer/traits/Cargo.toml index 954bcc6923d..2afadfeee5e 100644 --- a/examples/trait-incrementer/traits/Cargo.toml +++ b/examples/trait-incrementer/traits/Cargo.toml @@ -6,11 +6,7 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../../crates/primitives", default-features = false } -ink_metadata = { path = "../../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../../crates/env", default-features = false } -ink_storage = { path = "../../../crates/storage", default-features = false } -ink_lang = { path = "../../../crates/lang", default-features = false } +ink = { path = "../../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -23,11 +19,7 @@ crate-type = ["rlib"] [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/trait-incrementer/traits/lib.rs b/examples/trait-incrementer/traits/lib.rs index ef7d844d4b7..2bd5ed112f8 100644 --- a/examples/trait-incrementer/traits/lib.rs +++ b/examples/trait-incrementer/traits/lib.rs @@ -16,8 +16,6 @@ //! Traits are extracted into a separate crate to show how the user can import //! several foreign traits and implement those for the contract. -use ink_lang as ink; - /// Allows to increment and get the current value. #[ink::trait_definition] pub trait Increment { diff --git a/examples/upgradeable-contracts/forward-calls/Cargo.toml b/examples/upgradeable-contracts/forward-calls/Cargo.toml index 966e9713f9c..95c4b96d919 100644 --- a/examples/upgradeable-contracts/forward-calls/Cargo.toml +++ b/examples/upgradeable-contracts/forward-calls/Cargo.toml @@ -6,12 +6,7 @@ edition = "2021" publish = false [dependencies] -ink_primitives = { path = "../../../crates/primitives", default-features = false } -ink_prelude = { path = "../../../crates/prelude", default-features = false } -ink_metadata = { path = "../../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../../crates/env", default-features = false } -ink_storage = { path = "../../../crates/storage", default-features = false } -ink_lang = { path = "../../../crates/lang", default-features = false } +ink = { path = "../../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -24,11 +19,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/upgradeable-contracts/forward-calls/lib.rs b/examples/upgradeable-contracts/forward-calls/lib.rs index cb2cfcddb06..09a47cd3996 100644 --- a/examples/upgradeable-contracts/forward-calls/lib.rs +++ b/examples/upgradeable-contracts/forward-calls/lib.rs @@ -15,11 +15,9 @@ #![cfg_attr(not(feature = "std"), no_std)] -use ink_lang as ink; - #[ink::contract] pub mod proxy { - use ink_env::call::Call; + use ink::env::call::Call; /// A simple proxy contract. #[ink(storage)] @@ -71,7 +69,7 @@ pub mod proxy { /// have any effect whatsoever on the contract we forward to. #[ink(message, payable, selector = _)] pub fn forward(&self) -> u32 { - ink_env::call::build_call::() + ink::env::call::build_call::() .call_type( Call::new() .callee(self.forward_to) @@ -79,7 +77,7 @@ pub mod proxy { .gas_limit(0), ) .call_flags( - ink_env::CallFlags::default() + ink::env::CallFlags::default() .set_forward_input(true) .set_tail_call(true), ) diff --git a/examples/upgradeable-contracts/set-code-hash/Cargo.toml b/examples/upgradeable-contracts/set-code-hash/Cargo.toml index dbf6e342fea..79b7cbd95b2 100644 --- a/examples/upgradeable-contracts/set-code-hash/Cargo.toml +++ b/examples/upgradeable-contracts/set-code-hash/Cargo.toml @@ -8,12 +8,7 @@ publish = false # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -ink_primitives = { path = "../../../crates/primitives", default-features = false } -ink_prelude = { path = "../../../crates/prelude", default-features = false } -ink_metadata = { path = "../../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../../crates/env", default-features = false } -ink_storage = { path = "../../../crates/storage", default-features = false } -ink_lang = { path = "../../../crates/lang", default-features = false } +ink = { path = "../../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -26,11 +21,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/upgradeable-contracts/set-code-hash/lib.rs b/examples/upgradeable-contracts/set-code-hash/lib.rs index 6579f94be4c..3708f29e336 100644 --- a/examples/upgradeable-contracts/set-code-hash/lib.rs +++ b/examples/upgradeable-contracts/set-code-hash/lib.rs @@ -1,7 +1,5 @@ #![cfg_attr(not(feature = "std"), no_std)] -use ink_lang as ink; - #[ink::contract] pub mod incrementer { @@ -29,7 +27,7 @@ pub mod incrementer { #[ink(message)] pub fn inc(&mut self) { self.count += 1; - ink_env::debug_println!( + ink::env::debug_println!( "The new count is {}, it was modified using the original contract code.", self.count ); @@ -47,13 +45,13 @@ pub mod incrementer { /// can execute this method. In a production contract you would do some authorization here. #[ink(message)] pub fn set_code(&mut self, code_hash: [u8; 32]) { - ink_env::set_code_hash(&code_hash).unwrap_or_else(|err| { + ink::env::set_code_hash(&code_hash).unwrap_or_else(|err| { panic!( "Failed to `set_code_hash` to {:?} due to {:?}", code_hash, err ) }); - ink_env::debug_println!("Switched code hash to {:?}.", code_hash); + ink::env::debug_println!("Switched code hash to {:?}.", code_hash); } } } diff --git a/examples/upgradeable-contracts/set-code-hash/updated-incrementer/Cargo.toml b/examples/upgradeable-contracts/set-code-hash/updated-incrementer/Cargo.toml index 45f8a8992ac..7196430ef93 100644 --- a/examples/upgradeable-contracts/set-code-hash/updated-incrementer/Cargo.toml +++ b/examples/upgradeable-contracts/set-code-hash/updated-incrementer/Cargo.toml @@ -8,11 +8,7 @@ publish = false # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -ink_primitives = { path = "../../../../crates/primitives", default-features = false } -ink_metadata = { path = "../../../../crates/metadata", default-features = false, features = ["derive"], optional = true } -ink_env = { path = "../../../../crates/env", default-features = false } -ink_storage = { path = "../../../../crates/storage", default-features = false } -ink_lang = { path = "../../../../crates/lang", default-features = false } +ink = { path = "../../../../crates/ink", default-features = false } scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } scale-info = { version = "2", default-features = false, features = ["derive"], optional = true } @@ -25,11 +21,7 @@ crate-type = ["cdylib"] [features] default = ["std"] std = [ - "ink_primitives/std", - "ink_metadata/std", - "ink_env/std", - "ink_storage/std", - "ink_lang/std", + "ink/std", "scale/std", "scale-info/std", ] diff --git a/examples/upgradeable-contracts/set-code-hash/updated-incrementer/lib.rs b/examples/upgradeable-contracts/set-code-hash/updated-incrementer/lib.rs index ec4747e9586..7afd26e2af7 100644 --- a/examples/upgradeable-contracts/set-code-hash/updated-incrementer/lib.rs +++ b/examples/upgradeable-contracts/set-code-hash/updated-incrementer/lib.rs @@ -1,7 +1,5 @@ #![cfg_attr(not(feature = "std"), no_std)] -use ink_lang as ink; - #[ink::contract] pub mod incrementer { @@ -36,7 +34,7 @@ pub mod incrementer { #[ink(message)] pub fn inc(&mut self) { self.count += 4; - ink_env::debug_println!("The new count is {}, it was modified using the updated `new_incrementer` code.", self.count); + ink::env::debug_println!("The new count is {}, it was modified using the updated `new_incrementer` code.", self.count); } /// Returns the counter value which is stored in this contract's storage. @@ -51,13 +49,13 @@ pub mod incrementer { /// can execute this method. In a production contract you would do some authorization here. #[ink(message)] pub fn set_code(&mut self, code_hash: [u8; 32]) { - ink_env::set_code_hash(&code_hash).unwrap_or_else(|err| { + ink::env::set_code_hash(&code_hash).unwrap_or_else(|err| { panic!( "Failed to `set_code_hash` to {:?} due to {:?}", code_hash, err ) }); - ink_env::debug_println!("Switched code hash to {:?}.", code_hash); + ink::env::debug_println!("Switched code hash to {:?}.", code_hash); } } } diff --git a/linting/Cargo.toml b/linting/Cargo.toml index 5cffbdfc78d..67ad8895f2d 100644 --- a/linting/Cargo.toml +++ b/linting/Cargo.toml @@ -29,7 +29,7 @@ dylint_testing = "2.0.0" # The following are ink! dependencies, they are only required for the `ui` tests. ink_env = { path = "../crates/env", default-features = false } -ink_lang = { path = "../crates/lang", default-features = false } +ink = { path = "../crates/ink", default-features = false } ink_metadata = { path = "../crates/metadata", default-features = false } ink_primitives = { path = "../crates/primitives", default-features = false } ink_storage = { path = "../crates/storage", default-features = false }