Currently the following structures and impls are generated by the derive macro in sylvia-derive/src/multitest.rs:
CodeId,
InstantiateProxy,
impl<Generics> sylvia::cw_multi_test::Contract<#custom_msg, #custom_query> for #contract_name.
From the initial analysis it turns out that we could move them to sylvia::multitest module with a minimal impact on the user's API and potentially significant improvement for readability of sylvia generated code and understandability of the generated code for the user.
It seems that the only derive dependent thing are the generics forwarded to IntantantiateMsg for the purpose of the CodeId::instantiate(field1: Generic1, field2: Generic2,...) method. The mentioned method could be changed to: CodeId::instantiate(instantiate_msg: GenericIntantantiateMsg).
Currently the following structures and impls are generated by the derive macro in
sylvia-derive/src/multitest.rs
:CodeId
,InstantiateProxy
,impl<Generics> sylvia::cw_multi_test::Contract<#custom_msg, #custom_query> for #contract_name
.From the initial analysis it turns out that we could move them to
sylvia::multitest
module with a minimal impact on the user's API and potentially significant improvement for readability of sylvia generated code and understandability of the generated code for the user.It seems that the only derive dependent thing are the generics forwarded to
IntantantiateMsg
for the purpose of theCodeId::instantiate(field1: Generic1, field2: Generic2,...)
method. The mentioned method could be changed to:CodeId::instantiate(instantiate_msg: GenericIntantantiateMsg)
.It is possible that more changes will be needed.