pub trait SierraGenGroup: Database + HasQueryGroup<SierraGenDatabase> + LoweringGroup + Upcast<dyn LoweringGroup> {
Show 19 methods // Required methods fn intern_label_id(&self, key0: LabelLongId) -> LabelId; fn lookup_intern_label_id(&self, key0: LabelId) -> LabelLongId; fn intern_concrete_lib_func( &self, key0: ConcreteLibfuncLongId ) -> ConcreteLibfuncId; fn lookup_intern_concrete_lib_func( &self, key0: ConcreteLibfuncId ) -> ConcreteLibfuncLongId; fn intern_concrete_type( &self, key0: SierraGeneratorTypeLongId ) -> ConcreteTypeId; fn lookup_intern_concrete_type( &self, key0: ConcreteTypeId ) -> SierraGeneratorTypeLongId; fn intern_sierra_function(&self, key0: FunctionId) -> FunctionId; fn lookup_intern_sierra_function(&self, key0: FunctionId) -> FunctionId; fn get_concrete_type_id(&self, key0: TypeId) -> Maybe<ConcreteTypeId>; fn get_concrete_long_type_id( &self, key0: TypeId ) -> Maybe<Arc<ConcreteTypeLongId>>; fn is_self_referential(&self, key0: TypeId) -> Maybe<bool>; fn type_dependencies(&self, key0: TypeId) -> Maybe<Arc<Vec<TypeId>>>; fn get_function_signature( &self, key0: FunctionId ) -> Maybe<Arc<FunctionSignature>>; fn get_type_info(&self, key0: ConcreteTypeId) -> Maybe<Arc<TypeInfo>>; fn priv_function_with_body_sierra_data( &self, key0: ConcreteFunctionWithBodyId ) -> SierraFunctionWithBodyData; fn function_with_body_sierra( &self, key0: ConcreteFunctionWithBodyId ) -> Maybe<Arc<Function>>; fn get_ap_change( &self, key0: ConcreteFunctionWithBodyId ) -> Maybe<SierraApChange>; fn get_sierra_program_for_functions( &self, key0: Vec<ConcreteFunctionWithBodyId> ) -> Maybe<Arc<Program>>; fn get_sierra_program(&self, key0: Vec<CrateId>) -> Maybe<Arc<Program>>;
}

Required Methods§

source

fn intern_label_id(&self, key0: LabelLongId) -> LabelId

source

fn lookup_intern_label_id(&self, key0: LabelId) -> LabelLongId

source

fn intern_concrete_lib_func( &self, key0: ConcreteLibfuncLongId ) -> ConcreteLibfuncId

source

fn lookup_intern_concrete_lib_func( &self, key0: ConcreteLibfuncId ) -> ConcreteLibfuncLongId

source

fn intern_concrete_type( &self, key0: SierraGeneratorTypeLongId ) -> ConcreteTypeId

source

fn lookup_intern_concrete_type( &self, key0: ConcreteTypeId ) -> SierraGeneratorTypeLongId

source

fn intern_sierra_function(&self, key0: FunctionId) -> FunctionId

Creates a Sierra function id for a function id of the semantic model.

source

fn lookup_intern_sierra_function(&self, key0: FunctionId) -> FunctionId

source

fn get_concrete_type_id(&self, key0: TypeId) -> Maybe<ConcreteTypeId>

Returns the matching sierra concrete type id for a given semantic type id.

source

fn get_concrete_long_type_id( &self, key0: TypeId ) -> Maybe<Arc<ConcreteTypeLongId>>

Returns the matching sierra concrete type long id for a given semantic type id.

source

fn is_self_referential(&self, key0: TypeId) -> Maybe<bool>

Returns if the semantic id has a circular definition.

source

fn type_dependencies(&self, key0: TypeId) -> Maybe<Arc<Vec<TypeId>>>

Returns the semantic type ids the type is directly dependent on.

source

fn get_function_signature( &self, key0: FunctionId ) -> Maybe<Arc<FunctionSignature>>

Returns the cairo_lang_sierra::program::FunctionSignature object for the given function id.

source

fn get_type_info(&self, key0: ConcreteTypeId) -> Maybe<Arc<TypeInfo>>

Returns the cairo_lang_sierra::extensions::types::TypeInfo object for the given type id.

source

fn priv_function_with_body_sierra_data( &self, key0: ConcreteFunctionWithBodyId ) -> SierraFunctionWithBodyData

Private query to compute Sierra data about a function with body.

source

fn function_with_body_sierra( &self, key0: ConcreteFunctionWithBodyId ) -> Maybe<Arc<Function>>

Returns the Sierra code (as pre_sierra::Function) for a given function with body.

source

fn get_ap_change( &self, key0: ConcreteFunctionWithBodyId ) -> Maybe<SierraApChange>

Returns the ap change of a given function if it is known at compile time or SierraApChange::Unknown otherwise.

source

fn get_sierra_program_for_functions( &self, key0: Vec<ConcreteFunctionWithBodyId> ) -> Maybe<Arc<Program>>

Returns the cairo_lang_sierra::program::Program object of the requested functions.

source

fn get_sierra_program(&self, key0: Vec<CrateId>) -> Maybe<Arc<Program>>

Returns the cairo_lang_sierra::program::Program object of the requested crates.

Implementors§

source§

impl<DB> SierraGenGroup for DBwhere DB: LoweringGroup + Upcast<dyn LoweringGroup> + Database + HasQueryGroup<SierraGenDatabase>,