You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It cannot be stored in Account storage. It should be made storable.
Suggested Solution
It requires a bit of effort. Comments from @turbolent on Discord
Composite values of built-in types are not storable by default (because usually, they have some special behaviour, like functions need to be injected ... like here). See CompositeValue.IsStorable
e.g. there's a PublicKey built-in type, and because it has natively implemented functions (e.g. verify) and computed fields (publicKey, returns a copy on each access), the type/values of it are not storable (yet)
we'll need to change/extend this, so we have a general mechanism to allow composite values with built-in types to be stored, and their computed fields and functions be injected after the value has been loaded, when those fields/functions are accessed, just like for "normal" composite values (CompositeValue.InitializeFunctions)
we basically already wanted to have it for PublicKey but didn't get to it (it's not very important to have the ability to store/load a public key in account storage), we want to have it for the new range types, and I actually also happen to need for some other work that's in progress
The text was updated successfully, but these errors were encountered:
@turbolent I saw that we have closed the PR that makes built-in composite types storable: #2881. Does that mean we wouldn't be able to make InclusiveRange storable at least in the short term?
Issue to be solved
InclusiveRange was introduced as part of #2482.
It cannot be stored in Account storage. It should be made storable.
Suggested Solution
It requires a bit of effort. Comments from @turbolent on Discord
The text was updated successfully, but these errors were encountered: