pub trait SierraGenGroup: Database + HasQueryGroup<SierraGenDatabase> + LoweringGroup + Upcast<dyn LoweringGroup> {
Show 17 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: ConcreteTypeLongId) -> ConcreteTypeId;
fn lookup_intern_concrete_type(
&self,
key0: ConcreteTypeId
) -> ConcreteTypeLongId;
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_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
) -> SierraFreeFunctionData;
fn function_with_body_sierra(
&self,
key0: ConcreteFunctionWithBodyId
) -> Maybe<Arc<Function>>;
fn contains_cycle(&self, key0: ConcreteFunctionWithBodyId) -> Maybe<bool>;
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: ConcreteTypeLongId) -> ConcreteTypeId
fn lookup_intern_concrete_type(&self, key0: ConcreteTypeId) -> ConcreteTypeLongId
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_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
) -> SierraFreeFunctionData
fn priv_function_with_body_sierra_data(
&self,
key0: ConcreteFunctionWithBodyId
) -> SierraFreeFunctionData
Private query to compute Sierra data about a free function.
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 free function.
sourcefn contains_cycle(&self, key0: ConcreteFunctionWithBodyId) -> Maybe<bool>
fn contains_cycle(&self, key0: ConcreteFunctionWithBodyId) -> Maybe<bool>
Returns true
if the function calls (possibly indirectly) itself, or if it calls (possibly
indirectly) such a function. For example, if f0 calls f1, f1 calls f2, f2 calls f3, and f3
calls f2, then Self::contains_cycle will return true
for all of these functions.
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.