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§
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
sourcefn intern_sierra_function(&self, key0: FunctionId) -> FunctionId
fn intern_sierra_function(&self, key0: FunctionId) -> FunctionId
Creates a Sierra function id for a function id of the semantic model.
fn lookup_intern_sierra_function(&self, key0: FunctionId) -> FunctionId
sourcefn get_concrete_type_id(&self, key0: TypeId) -> Maybe<ConcreteTypeId>
fn get_concrete_type_id(&self, key0: TypeId) -> Maybe<ConcreteTypeId>
Returns the matching sierra concrete type id for a given semantic type id.
sourcefn get_concrete_long_type_id(
&self,
key0: TypeId
) -> Maybe<Arc<ConcreteTypeLongId>>
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.
sourcefn is_self_referential(&self, key0: TypeId) -> Maybe<bool>
fn is_self_referential(&self, key0: TypeId) -> Maybe<bool>
Returns if the semantic id has a circular definition.
sourcefn type_dependencies(&self, key0: TypeId) -> Maybe<Arc<Vec<TypeId>>>
fn type_dependencies(&self, key0: TypeId) -> Maybe<Arc<Vec<TypeId>>>
Returns the semantic type ids the type is directly dependent on.
sourcefn get_function_signature(
&self,
key0: FunctionId
) -> Maybe<Arc<FunctionSignature>>
fn get_function_signature( &self, key0: FunctionId ) -> Maybe<Arc<FunctionSignature>>
Returns the cairo_lang_sierra::program::FunctionSignature object for the given function id.
sourcefn get_type_info(&self, key0: ConcreteTypeId) -> Maybe<Arc<TypeInfo>>
fn get_type_info(&self, key0: ConcreteTypeId) -> Maybe<Arc<TypeInfo>>
Returns the cairo_lang_sierra::extensions::types::TypeInfo object for the given type id.
sourcefn priv_function_with_body_sierra_data(
&self,
key0: ConcreteFunctionWithBodyId
) -> SierraFunctionWithBodyData
fn priv_function_with_body_sierra_data( &self, key0: ConcreteFunctionWithBodyId ) -> SierraFunctionWithBodyData
Private query to compute Sierra data about a function with body.
sourcefn function_with_body_sierra(
&self,
key0: ConcreteFunctionWithBodyId
) -> Maybe<Arc<Function>>
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.
sourcefn get_ap_change(
&self,
key0: ConcreteFunctionWithBodyId
) -> Maybe<SierraApChange>
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.
sourcefn get_sierra_program_for_functions(
&self,
key0: Vec<ConcreteFunctionWithBodyId>
) -> Maybe<Arc<Program>>
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.
sourcefn get_sierra_program(&self, key0: Vec<CrateId>) -> Maybe<Arc<Program>>
fn get_sierra_program(&self, key0: Vec<CrateId>) -> Maybe<Arc<Program>>
Returns the cairo_lang_sierra::program::Program object of the requested crates.