Kagome
Polkadot Runtime Engine in C++17
kagome::runtime::wavm::ModuleFactoryImpl Class Referencefinal

#include <module_factory_impl.hpp>

Inheritance diagram for kagome::runtime::wavm::ModuleFactoryImpl:
Collaboration diagram for kagome::runtime::wavm::ModuleFactoryImpl:

Public Member Functions

 ModuleFactoryImpl (std::shared_ptr< CompartmentWrapper > compartment, std::shared_ptr< ModuleParams > module_params, std::shared_ptr< const InstanceEnvironmentFactory > env_factory, std::shared_ptr< IntrinsicModule > intrinsic_module, std::optional< std::shared_ptr< ModuleCache >> module_cache, std::shared_ptr< crypto::Hasher > hasher)
 
outcome::result< std::unique_ptr< Module > > make (gsl::span< const uint8_t > code) const override
 
- Public Member Functions inherited from kagome::runtime::ModuleFactory
virtual ~ModuleFactory ()=default
 

Private Attributes

std::shared_ptr< CompartmentWrappercompartment_
 
std::shared_ptr< ModuleParamsmodule_params_
 
std::shared_ptr< const InstanceEnvironmentFactoryenv_factory_
 
std::shared_ptr< IntrinsicModuleintrinsic_module_
 
std::shared_ptr< crypto::Hasherhasher_
 

Detailed Description

Definition at line 28 of file module_factory_impl.hpp.

Constructor & Destructor Documentation

kagome::runtime::wavm::ModuleFactoryImpl::ModuleFactoryImpl ( std::shared_ptr< CompartmentWrapper compartment,
std::shared_ptr< ModuleParams module_params,
std::shared_ptr< const InstanceEnvironmentFactory env_factory,
std::shared_ptr< IntrinsicModule intrinsic_module,
std::optional< std::shared_ptr< ModuleCache >>  module_cache,
std::shared_ptr< crypto::Hasher hasher 
)

Definition at line 15 of file module_factory_impl.cpp.

Member Function Documentation

outcome::result< std::unique_ptr< Module > > kagome::runtime::wavm::ModuleFactoryImpl::make ( gsl::span< const uint8_t >  code) const
overridevirtual

Implements kagome::runtime::ModuleFactory.

Definition at line 38 of file module_factory_impl.cpp.

Member Data Documentation

std::shared_ptr<CompartmentWrapper> kagome::runtime::wavm::ModuleFactoryImpl::compartment_
private

Definition at line 42 of file module_factory_impl.hpp.

std::shared_ptr<const InstanceEnvironmentFactory> kagome::runtime::wavm::ModuleFactoryImpl::env_factory_
private

Definition at line 44 of file module_factory_impl.hpp.

std::shared_ptr<crypto::Hasher> kagome::runtime::wavm::ModuleFactoryImpl::hasher_
private

Definition at line 46 of file module_factory_impl.hpp.

std::shared_ptr<IntrinsicModule> kagome::runtime::wavm::ModuleFactoryImpl::intrinsic_module_
private

Definition at line 45 of file module_factory_impl.hpp.

std::shared_ptr<ModuleParams> kagome::runtime::wavm::ModuleFactoryImpl::module_params_
private

Definition at line 43 of file module_factory_impl.hpp.


The documentation for this class was generated from the following files: