[][src]Function solana_libra_bytecode_verifier::verifier::verify_module_dependencies

pub fn verify_module_dependencies<'a>(
    module: &VerifiedModule,
    dependencies: impl IntoIterator<Item = &'a VerifiedModule>
) -> Vec<VMStatus>

Verification of a module in isolation (using VerifiedModule::new) trusts that struct and function handles not implemented in the module are declared correctly. The following procedure justifies this trust by checking that these declarations match the definitions in the module dependencies. Each dependency of 'module' is looked up in 'dependencies'. If not found, an error is included in the returned list of errors. If found, usage of types and functions of the dependency in 'module' is checked against the declarations in the found module and mismatch errors are returned.