Module lib_func

Source

Structs§

BranchSignature
Contains information on the variables returned in a single libfunc branch for all the output variables in an output branch.
LibfuncSignature
Represents the signature of a library function.
OutputVarInfo
Contains information regarding an output variable in a single branch.
ParamSignature
Information regarding a parameter of the libfunc.
SignatureAndTypeConcreteLibfunc
Struct providing a ConcreteLibfunc only with a signature and a type.
SignatureOnlyConcreteLibfunc
Struct providing a ConcreteLibfunc only with a signature - should not be implemented for concrete libfuncs that require any extra data.
WrapSignatureAndTypeGenericLibfunc
Wrapper to prevent implementation collisions for NamedLibfunc.

Enums§

DeferredOutputKind
The type of a deferred output.
OutputVarReferenceInfo
Information regarding the reference created as an output of a library function.
SierraApChange
Describes the effect on the ap register in a given libfunc branch.

Traits§

ConcreteLibfunc
Trait for a specialized library function.
GenericLibfunc
Trait for implementing a libfunc specialization generator.
GenericLibfuncEx
Trait for introducing helper methods on GenericLibfunc.
NamedLibfunc
Trait for implementing a specialization generator with a simple id.
NoGenericArgsGenericLibfunc
Trait for implementing a specialization generator with no generic arguments.
SignatureAndTypeGenericLibfunc
Trait for implementing a specialization generator expecting a single generic param type, and creating a concrete libfunc containing that type as well.
SignatureBasedConcreteLibfunc
Trait for implementing a ConcreteLibfunc that returns a reference to the full signature of the library function.
SignatureOnlyGenericLibfunc
Trait for implementing a specialization generator not holding anything more than a signature.
SignatureSpecializationContext
Trait for the specialization of libfunc signatures.
SpecializationContext
Trait for the specialization of full libfuncs.