Trait fe_driver::CodegenDb

pub trait CodegenDb: Database + HasQueryGroup<CodegenDbStorage> + MirDb + Upcast<dyn MirDb> + UpcastMut<dyn MirDb> {
Show 16 methods // Required methods fn codegen_legalized_signature( &self, key0: FunctionId ) -> Rc<FunctionSignature>; fn codegen_legalized_body(&self, key0: FunctionId) -> Rc<FunctionBody>; fn codegen_function_symbol_name(&self, key0: FunctionId) -> Rc<String>; fn codegen_legalized_type(&self, key0: TypeId) -> TypeId; fn codegen_abi_type(&self, key0: TypeId) -> AbiType; fn codegen_abi_function(&self, key0: FunctionId) -> AbiFunction; fn codegen_abi_event(&self, key0: TypeId) -> AbiEvent; fn codegen_abi_contract(&self, key0: ContractId) -> AbiContract; fn codegen_abi_module_events(&self, key0: ModuleId) -> Vec<AbiEvent>; fn codegen_abi_type_maximum_size(&self, key0: TypeId) -> usize; fn codegen_abi_type_minimum_size(&self, key0: TypeId) -> usize; fn codegen_abi_function_argument_maximum_size( &self, key0: FunctionId ) -> usize; fn codegen_abi_function_return_maximum_size( &self, key0: FunctionId ) -> usize; fn codegen_contract_symbol_name(&self, key0: ContractId) -> Rc<String>; fn codegen_contract_deployer_symbol_name( &self, key0: ContractId ) -> Rc<String>; fn codegen_constant_string_symbol_name(&self, key0: String) -> Rc<String>;
}

Required Methods§

fn codegen_legalized_signature(&self, key0: FunctionId) -> Rc<FunctionSignature>

fn codegen_legalized_body(&self, key0: FunctionId) -> Rc<FunctionBody>

fn codegen_function_symbol_name(&self, key0: FunctionId) -> Rc<String>

fn codegen_legalized_type(&self, key0: TypeId) -> TypeId

fn codegen_abi_type(&self, key0: TypeId) -> AbiType

fn codegen_abi_function(&self, key0: FunctionId) -> AbiFunction

fn codegen_abi_event(&self, key0: TypeId) -> AbiEvent

fn codegen_abi_contract(&self, key0: ContractId) -> AbiContract

fn codegen_abi_module_events(&self, key0: ModuleId) -> Vec<AbiEvent>

fn codegen_abi_type_maximum_size(&self, key0: TypeId) -> usize

fn codegen_abi_type_minimum_size(&self, key0: TypeId) -> usize

fn codegen_abi_function_argument_maximum_size(&self, key0: FunctionId) -> usize

fn codegen_abi_function_return_maximum_size(&self, key0: FunctionId) -> usize

fn codegen_contract_symbol_name(&self, key0: ContractId) -> Rc<String>

fn codegen_contract_deployer_symbol_name(&self, key0: ContractId) -> Rc<String>

fn codegen_constant_string_symbol_name(&self, key0: String) -> Rc<String>

Implementors§

§

impl<DB> CodegenDb for DBwhere DB: MirDb + Upcast<dyn MirDb> + UpcastMut<dyn MirDb> + Database + HasQueryGroup<CodegenDbStorage>,