pub trait ApplicationPortabilityValidation {
// Required methods
fn validate_compiled_contract(
&self,
bundle: &ContractBundle,
) -> Result<(), ApplicationPortabilityError>;
fn compiled_reimport_entity_schedule(
&self,
bundle: &ContractBundle,
) -> Result<Vec<EntityTypeId>, ApplicationPortabilityError>;
fn validate_adapter_conformance(
&self,
adapter: &AdapterConformanceManifest,
) -> Result<(), ApplicationPortabilityError>;
}Expand description
Compiler- and adapter-owned checks over the serialization-neutral value.
Required Methods§
Sourcefn validate_compiled_contract(
&self,
bundle: &ContractBundle,
) -> Result<(), ApplicationPortabilityError>
fn validate_compiled_contract( &self, bundle: &ContractBundle, ) -> Result<(), ApplicationPortabilityError>
Verifies every mapping against one exact compiler-owned contract bundle.
Sourcefn compiled_reimport_entity_schedule(
&self,
bundle: &ContractBundle,
) -> Result<Vec<EntityTypeId>, ApplicationPortabilityError>
fn compiled_reimport_entity_schedule( &self, bundle: &ContractBundle, ) -> Result<Vec<EntityTypeId>, ApplicationPortabilityError>
Derives the only legal entity reconstitution order.
Sourcefn validate_adapter_conformance(
&self,
adapter: &AdapterConformanceManifest,
) -> Result<(), ApplicationPortabilityError>
fn validate_adapter_conformance( &self, adapter: &AdapterConformanceManifest, ) -> Result<(), ApplicationPortabilityError>
Binds mappings and observations to one exact adapter-owned public surface.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".