I am working on chain extension to call rmrk pallet methods. One of the methods needs a BoundedVec that I need to pass via ink smart contract. What data type can I use to do this on smart contract side? Is there a BoundedVec<> type on ink?
I tried using Vec and then trying to convert it to BoundedVec in the chain extension in runtime but I get the following error
env.read_as()?;
|
^^^^^^^ the trait `MaxEncodedLen` is not implemented for `sp_runtime::sp_application_crypto::Vec<u8>
The method signature on ink contract
fn create_collection(contract_address: AccountId, metadata: Vec<u8>, symbol: Vec<u8>) -> Result<CollectionId, RCError>;
Reading the arguments in the runtime
let (contract_address, metadata, symbol) : (AccountId, Vec<u8>, Vec<u8>) = env.read_as()?;