diff --git a/cairo_native/all.html b/cairo_native/all.html index c54639a5d..a2b531677 100644 --- a/cairo_native/all.html +++ b/cairo_native/all.html @@ -1 +1 @@ -List of all items in this crate

List of all items

Structs

Enums

Traits

Functions

Type Definitions

\ No newline at end of file +List of all items in this crate

List of all items

Structs

Enums

Traits

Functions

Type Definitions

\ No newline at end of file diff --git a/cairo_native/context/struct.NativeContext.html b/cairo_native/context/struct.NativeContext.html index cd970d0ce..b8349c111 100644 --- a/cairo_native/context/struct.NativeContext.html +++ b/cairo_native/context/struct.NativeContext.html @@ -1,4 +1,4 @@ -NativeContext in cairo_native::context - Rust
pub struct NativeContext { /* private fields */ }
Expand description

Context of IRs, dialects and passes for Cairo programs compilation.

+NativeContext in cairo_native::context - Rust
pub struct NativeContext { /* private fields */ }
Expand description

Context of IRs, dialects and passes for Cairo programs compilation.

Implementations§

source§

impl NativeContext

source

pub fn new() -> Self

source

pub fn compile( &self, program: &Program @@ -16,9 +16,7 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Qwhere - Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>where diff --git a/cairo_native/error/compile/enum.ErrorImpl.html b/cairo_native/error/compile/enum.ErrorImpl.html index bd6c29af2..d48b977cc 100644 --- a/cairo_native/error/compile/enum.ErrorImpl.html +++ b/cairo_native/error/compile/enum.ErrorImpl.html @@ -18,13 +18,13 @@ TType: GenericType, TLibfunc: GenericLibfunc, <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>, - <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<TType, TLibfunc> Display for ErrorImpl<TType, TLibfunc>where + <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<TType, TLibfunc> Display for ErrorImpl<TType, TLibfunc>where TType: GenericType, TLibfunc: GenericLibfunc, <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>, <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>, <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Display, - <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Display,

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<TType, TLibfunc> Error for ErrorImpl<TType, TLibfunc>where + <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Display,

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<TType, TLibfunc> Error for ErrorImpl<TType, TLibfunc>where TType: GenericType, TLibfunc: GenericLibfunc, <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>, @@ -37,11 +37,11 @@ TType: GenericType, TLibfunc: GenericLibfunc, <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>, - <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,

source§

fn from(source: EditStateError) -> Self

Converts to this type from the input type.
source§

impl<TType, TLibfunc> From<Error> for ErrorImpl<TType, TLibfunc>where + <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,

source§

fn from(source: EditStateError) -> Self

Converts to this type from the input type.
source§

impl<TType, TLibfunc> From<Error> for ErrorImpl<TType, TLibfunc>where TType: GenericType, TLibfunc: GenericLibfunc, <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>, - <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,

source§

fn from(source: Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl<TType, TLibfunc> RefUnwindSafe for ErrorImpl<TType, TLibfunc>where + <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,

source§

fn from(source: Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl<TType, TLibfunc> RefUnwindSafe for ErrorImpl<TType, TLibfunc>where <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: RefUnwindSafe, <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: RefUnwindSafe,

§

impl<TType, TLibfunc> Send for ErrorImpl<TType, TLibfunc>where <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Send, diff --git a/cairo_native/error/compile/struct.Error.html b/cairo_native/error/compile/struct.Error.html index a370a61d0..be8e46d8c 100644 --- a/cairo_native/error/compile/struct.Error.html +++ b/cairo_native/error/compile/struct.Error.html @@ -8,7 +8,7 @@ TType: GenericType, TLibfunc: GenericLibfunc, <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>, - <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<TType, TLibfunc> Deref for Error<TType, TLibfunc>where + <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<TType, TLibfunc> Deref for Error<TType, TLibfunc>where TType: GenericType, TLibfunc: GenericLibfunc, <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>, @@ -16,7 +16,7 @@ TType: GenericType, TLibfunc: GenericLibfunc, <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>, - <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<TType, TLibfunc> Error for Error<TType, TLibfunc>where + <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<TType, TLibfunc> Error for Error<TType, TLibfunc>where TType: GenericType, TLibfunc: GenericLibfunc, <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>, @@ -27,12 +27,12 @@ TLibfunc: GenericLibfunc, <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>, <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>, - ErrorImpl<TType, TLibfunc>: From<E>,

source§

fn from(error: E) -> Self

Converts to this type from the input type.
source§

impl<TType, TLibfunc, E> From<E> for Error<TType, TLibfunc>where + ErrorImpl<TType, TLibfunc>: From<E>,

source§

fn from(error: E) -> Self

Converts to this type from the input type.
source§

impl<TType, TLibfunc, E> From<E> for Error<TType, TLibfunc>where TType: GenericType, TLibfunc: GenericLibfunc, <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>, <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>, - ErrorImpl<TType, TLibfunc>: From<E>,

source§

fn from(error: E) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl<TType, TLibfunc> RefUnwindSafe for Error<TType, TLibfunc>where + ErrorImpl<TType, TLibfunc>: From<E>,

source§

fn from(error: E) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl<TType, TLibfunc> RefUnwindSafe for Error<TType, TLibfunc>where <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: RefUnwindSafe, <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: RefUnwindSafe,

§

impl<TType, TLibfunc> Send for Error<TType, TLibfunc>where <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Send, diff --git a/cairo_native/error/jit_engine/enum.ErrorImpl.html b/cairo_native/error/jit_engine/enum.ErrorImpl.html index 58f485329..6d0690d13 100644 --- a/cairo_native/error/jit_engine/enum.ErrorImpl.html +++ b/cairo_native/error/jit_engine/enum.ErrorImpl.html @@ -13,7 +13,7 @@ have: u128, }, MissingSyscallHandler, -}

Variants§

§

LayoutError(LayoutError)

§

MlirError(Error)

§

ProgramRegistryError(Box<ProgramRegistryError>)

§

TypeBuilderError

Fields

§type_id: ConcreteTypeId
§error: <<CoreType as GenericType>::Concrete as TypeBuilder<CoreType, CoreLibfunc>>::Error
§

MissingParameter(String)

§

UnexpectedValue(String)

§

InsufficientGasError

Fields

§needed: u128
§have: u128
§

MissingSyscallHandler

Trait Implementations§

source§

impl Debug for ErrorImpl

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for ErrorImpl

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for ErrorImpl

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Box<ProgramRegistryError, Global>> for ErrorImpl

source§

fn from(source: Box<ProgramRegistryError>) -> Self

Converts to this type from the input type.
source§

impl From<Error> for ErrorImpl

source§

fn from(source: Error) -> Self

Converts to this type from the input type.
source§

impl From<LayoutError> for ErrorImpl

source§

fn from(source: LayoutError) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere +}

Variants§

§

LayoutError(LayoutError)

§

MlirError(Error)

§

ProgramRegistryError(Box<ProgramRegistryError>)

§

TypeBuilderError

Fields

§type_id: ConcreteTypeId
§error: <<CoreType as GenericType>::Concrete as TypeBuilder<CoreType, CoreLibfunc>>::Error
§

MissingParameter(String)

§

UnexpectedValue(String)

§

InsufficientGasError

Fields

§needed: u128
§have: u128
§

MissingSyscallHandler

Trait Implementations§

source§

impl Debug for ErrorImpl

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for ErrorImpl

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for ErrorImpl

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Box<ProgramRegistryError, Global>> for ErrorImpl

source§

fn from(source: Box<ProgramRegistryError>) -> Self

Converts to this type from the input type.
source§

impl From<Error> for ErrorImpl

source§

fn from(source: Error) -> Self

Converts to this type from the input type.
source§

impl From<LayoutError> for ErrorImpl

source§

fn from(source: LayoutError) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> Twhere diff --git a/cairo_native/error/jit_engine/struct.Error.html b/cairo_native/error/jit_engine/struct.Error.html index 7f6ae5dde..46c1dfb7a 100644 --- a/cairo_native/error/jit_engine/struct.Error.html +++ b/cairo_native/error/jit_engine/struct.Error.html @@ -1,8 +1,8 @@ Error in cairo_native::error::jit_engine - Rust
pub struct Error {
     pub source: ErrorImpl,
-}

Fields§

§source: ErrorImpl

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Deref for Error

§

type Target = ErrorImpl

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.
source§

impl Display for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl<E> From<E> for Box<Error>where - ErrorImpl: From<E>,

source§

fn from(error: E) -> Self

Converts to this type from the input type.
source§

impl<E> From<E> for Errorwhere - ErrorImpl: From<E>,

source§

fn from(error: E) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for Twhere +}

Fields§

§source: ErrorImpl

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Deref for Error

§

type Target = ErrorImpl

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.
source§

impl Display for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl<E> From<E> for Box<Error>where + ErrorImpl: From<E>,

source§

fn from(error: E) -> Self

Converts to this type from the input type.
source§

impl<E> From<E> for Errorwhere + ErrorImpl: From<E>,

source§

fn from(error: E) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> Twhere diff --git a/cairo_native/error/libfuncs/enum.ErrorImpl.html b/cairo_native/error/libfuncs/enum.ErrorImpl.html index 6bfd6c0f0..4638efcdf 100644 --- a/cairo_native/error/libfuncs/enum.ErrorImpl.html +++ b/cairo_native/error/libfuncs/enum.ErrorImpl.html @@ -4,7 +4,7 @@ MlirError(Error), ProgramRegistryError(Box<ProgramRegistryError>), TryFromIntError(TryFromIntError), -}

Variants§

§

LayoutError(LayoutError)

§

LayoutErrorPolyfill(LayoutError)

§

MlirError(Error)

§

ProgramRegistryError(Box<ProgramRegistryError>)

§

TryFromIntError(TryFromIntError)

Trait Implementations§

source§

impl Debug for ErrorImpl

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for ErrorImpl

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for ErrorImpl

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Box<ProgramRegistryError, Global>> for ErrorImpl

source§

fn from(source: Box<ProgramRegistryError>) -> Self

Converts to this type from the input type.
source§

impl From<Error> for ErrorImpl

source§

fn from(value: CoreTypeBuilderError) -> Self

Converts to this type from the input type.
source§

impl From<Error> for ErrorImpl

source§

fn from(source: Error) -> Self

Converts to this type from the input type.
source§

impl From<LayoutError> for ErrorImpl

source§

fn from(source: LayoutError) -> Self

Converts to this type from the input type.
source§

impl From<LayoutError> for ErrorImpl

source§

fn from(source: LayoutError) -> Self

Converts to this type from the input type.
source§

impl From<TryFromIntError> for ErrorImpl

source§

fn from(source: TryFromIntError) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere +}

Variants§

§

LayoutError(LayoutError)

§

LayoutErrorPolyfill(LayoutError)

§

MlirError(Error)

§

ProgramRegistryError(Box<ProgramRegistryError>)

§

TryFromIntError(TryFromIntError)

Trait Implementations§

source§

impl Debug for ErrorImpl

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for ErrorImpl

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for ErrorImpl

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Box<ProgramRegistryError, Global>> for ErrorImpl

source§

fn from(source: Box<ProgramRegistryError>) -> Self

Converts to this type from the input type.
source§

impl From<Error> for ErrorImpl

source§

fn from(value: CoreTypeBuilderError) -> Self

Converts to this type from the input type.
source§

impl From<Error> for ErrorImpl

source§

fn from(source: Error) -> Self

Converts to this type from the input type.
source§

impl From<LayoutError> for ErrorImpl

source§

fn from(source: LayoutError) -> Self

Converts to this type from the input type.
source§

impl From<LayoutError> for ErrorImpl

source§

fn from(source: LayoutError) -> Self

Converts to this type from the input type.
source§

impl From<TryFromIntError> for ErrorImpl

source§

fn from(source: TryFromIntError) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> Twhere diff --git a/cairo_native/error/libfuncs/struct.Error.html b/cairo_native/error/libfuncs/struct.Error.html index efa184ee2..ef6c6afd9 100644 --- a/cairo_native/error/libfuncs/struct.Error.html +++ b/cairo_native/error/libfuncs/struct.Error.html @@ -1,7 +1,7 @@ Error in cairo_native::error::libfuncs - Rust
pub struct Error {
     pub source: ErrorImpl,
 }

Fields§

§source: ErrorImpl

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Deref for Error

§

type Target = ErrorImpl

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.
source§

impl Display for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl<E> From<E> for Errorwhere - ErrorImpl: From<E>,

source§

fn from(error: E) -> Self

Converts to this type from the input type.
source§

impl From<Error> for ErrorImpl

source§

fn from(source: Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for Twhere + ErrorImpl: From<E>,

source§

fn from(error: E) -> Self

Converts to this type from the input type.
source§

impl From<Error> for ErrorImpl

source§

fn from(source: Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> Twhere diff --git a/cairo_native/error/types/enum.ErrorImpl.html b/cairo_native/error/types/enum.ErrorImpl.html index 77fb686c6..6e5ca2f7e 100644 --- a/cairo_native/error/types/enum.ErrorImpl.html +++ b/cairo_native/error/types/enum.ErrorImpl.html @@ -5,7 +5,7 @@ TryFromIntError(TryFromIntError), MlirError(Error), LibFuncError(Error), -}

Variants§

§

LayoutError(LayoutError)

§

LayoutErrorPolyfill(LayoutError)

§

ProgramRegistryError(Box<ProgramRegistryError>)

§

TryFromIntError(TryFromIntError)

§

MlirError(Error)

§

LibFuncError(Error)

Trait Implementations§

source§

impl Debug for ErrorImpl

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for ErrorImpl

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for ErrorImpl

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Box<ProgramRegistryError, Global>> for ErrorImpl

source§

fn from(source: Box<ProgramRegistryError>) -> Self

Converts to this type from the input type.
source§

impl From<Error> for ErrorImpl

source§

fn from(source: Error) -> Self

Converts to this type from the input type.
source§

impl From<Error> for ErrorImpl

source§

fn from(source: Error) -> Self

Converts to this type from the input type.
source§

impl From<LayoutError> for ErrorImpl

source§

fn from(source: LayoutError) -> Self

Converts to this type from the input type.
source§

impl From<LayoutError> for ErrorImpl

source§

fn from(source: LayoutError) -> Self

Converts to this type from the input type.
source§

impl From<TryFromIntError> for ErrorImpl

source§

fn from(source: TryFromIntError) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere +}

Variants§

§

LayoutError(LayoutError)

§

LayoutErrorPolyfill(LayoutError)

§

ProgramRegistryError(Box<ProgramRegistryError>)

§

TryFromIntError(TryFromIntError)

§

MlirError(Error)

§

LibFuncError(Error)

Trait Implementations§

source§

impl Debug for ErrorImpl

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for ErrorImpl

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for ErrorImpl

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Box<ProgramRegistryError, Global>> for ErrorImpl

source§

fn from(source: Box<ProgramRegistryError>) -> Self

Converts to this type from the input type.
source§

impl From<Error> for ErrorImpl

source§

fn from(source: Error) -> Self

Converts to this type from the input type.
source§

impl From<Error> for ErrorImpl

source§

fn from(source: Error) -> Self

Converts to this type from the input type.
source§

impl From<LayoutError> for ErrorImpl

source§

fn from(source: LayoutError) -> Self

Converts to this type from the input type.
source§

impl From<LayoutError> for ErrorImpl

source§

fn from(source: LayoutError) -> Self

Converts to this type from the input type.
source§

impl From<TryFromIntError> for ErrorImpl

source§

fn from(source: TryFromIntError) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> Twhere diff --git a/cairo_native/error/types/struct.Error.html b/cairo_native/error/types/struct.Error.html index 3c9aa7a8c..508de5eea 100644 --- a/cairo_native/error/types/struct.Error.html +++ b/cairo_native/error/types/struct.Error.html @@ -1,7 +1,7 @@ Error in cairo_native::error::types - Rust

Struct cairo_native::error::types::Error

source ·
pub struct Error {
     pub source: ErrorImpl,
 }

Fields§

§source: ErrorImpl

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Deref for Error

§

type Target = ErrorImpl

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.
source§

impl Display for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl<E> From<E> for Errorwhere - ErrorImpl: From<E>,

source§

fn from(error: E) -> Self

Converts to this type from the input type.
source§

impl From<Error> for ErrorImpl

source§

fn from(value: CoreTypeBuilderError) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for Twhere + ErrorImpl: From<E>,

source§

fn from(error: E) -> Self

Converts to this type from the input type.
source§

impl From<Error> for ErrorImpl

source§

fn from(value: CoreTypeBuilderError) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> Twhere diff --git a/cairo_native/execution_result/struct.ContractExecutionResult.html b/cairo_native/execution_result/struct.ContractExecutionResult.html index a3786ae27..b42b7a679 100644 --- a/cairo_native/execution_result/struct.ContractExecutionResult.html +++ b/cairo_native/execution_result/struct.ContractExecutionResult.html @@ -1,10 +1,10 @@ ContractExecutionResult in cairo_native::execution_result - Rust
pub struct ContractExecutionResult {
     pub remaining_gas: u128,
     pub failure_flag: bool,
-    pub return_values: Vec<Felt252>,
+    pub return_values: Vec<Felt>,
     pub error_msg: Option<String>,
 }
Expand description

Starknet contract execution result.

-

Fields§

§remaining_gas: u128§failure_flag: bool§return_values: Vec<Felt252>§error_msg: Option<String>

Implementations§

source§

impl ContractExecutionResult

Fields§

§remaining_gas: u128§failure_flag: bool§return_values: Vec<Felt>§error_msg: Option<String>

Implementations§

source§

impl ContractExecutionResult

source

pub fn from_execution_result( result: ExecutionResult ) -> Result<Self, JitRunnerError>

Convert a [ExecuteResult] to a [NativeExecutionResult]

Trait Implementations§

source§

impl Debug for ContractExecutionResult

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for ContractExecutionResult

source§

fn default() -> ContractExecutionResult

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere diff --git a/cairo_native/fn.execute.html b/cairo_native/fn.execute.html index 4a09c6e51..1d0e568fd 100644 --- a/cairo_native/fn.execute.html +++ b/cairo_native/fn.execute.html @@ -1,4 +1,4 @@ -execute in cairo_native - Rust

Function cairo_native::execute

source ·
pub fn execute(
+execute in cairo_native - Rust

Function cairo_native::execute

source ·
pub fn execute(
     engine: &ExecutionEngine,
     registry: &ProgramRegistry<CoreType, CoreLibfunc>,
     function_id: &FunctionId,
diff --git a/cairo_native/fn.execute_contract.html b/cairo_native/fn.execute_contract.html
index f52020654..de8b9df61 100644
--- a/cairo_native/fn.execute_contract.html
+++ b/cairo_native/fn.execute_contract.html
@@ -1,4 +1,4 @@
-execute_contract in cairo_native - Rust
pub fn execute_contract(
+execute_contract in cairo_native - Rust
pub fn execute_contract(
     engine: &ExecutionEngine,
     registry: &ProgramRegistry<CoreType, CoreLibfunc>,
     function_id: &FunctionId,
diff --git a/cairo_native/libfuncs/ec/index.html b/cairo_native/libfuncs/ec/index.html
index 3cf210b2e..6ad16c3fd 100644
--- a/cairo_native/libfuncs/ec/index.html
+++ b/cairo_native/libfuncs/ec/index.html
@@ -1,3 +1,3 @@
-cairo_native::libfuncs::ec - Rust

Module cairo_native::libfuncs::ec

source ·
Expand description

Elliptic curve libfuncs

+cairo_native::libfuncs::ec - Rust

Module cairo_native::libfuncs::ec

source ·
Expand description

Functions

  • Select and call the correct libfunc builder function from the selector.
  • Generate MLIR operations for the ec_point_is_zero libfunc.
  • Generate MLIR operations for the ec_neg libfunc.
  • Generate MLIR operations for the ec_point_from_x_nz libfunc.
  • Generate MLIR operations for the ec_state_add libfunc.
  • Generate MLIR operations for the ec_state_add_mul libfunc.
  • Generate MLIR operations for the ec_state_try_finalize_nz libfunc.
  • Generate MLIR operations for the ec_state_init libfunc.
  • Generate MLIR operations for the ec_point_try_new_nz libfunc.
  • Generate MLIR operations for the ec_point_unwrap libfunc.
  • Generate MLIR operations for the ec_point_zero libfunc.
\ No newline at end of file diff --git a/cairo_native/libfuncs/enum.BranchTarget.html b/cairo_native/libfuncs/enum.BranchTarget.html index cb5f4f02f..63fcb52b9 100644 --- a/cairo_native/libfuncs/enum.BranchTarget.html +++ b/cairo_native/libfuncs/enum.BranchTarget.html @@ -1,4 +1,4 @@ -BranchTarget in cairo_native::libfuncs - Rust
pub enum BranchTarget<'ctx, 'a> {
+BranchTarget in cairo_native::libfuncs - Rust
pub enum BranchTarget<'ctx, 'a> {
     Jump(&'a Block<'ctx>),
     Return(usize),
 }
Expand description

A libfunc branching target.

@@ -6,7 +6,7 @@ statement’s branches using BranchTarget::Return with the branch index.

Variants§

§

Jump(&'a Block<'ctx>)

A block within the current libfunc.

§

Return(usize)

A statement’s branch target by its index.

-

Trait Implementations§

source§

impl<'ctx, 'a> Clone for BranchTarget<'ctx, 'a>

source§

fn clone(&self) -> BranchTarget<'ctx, 'a>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'ctx, 'a> Copy for BranchTarget<'ctx, 'a>

Auto Trait Implementations§

§

impl<'ctx, 'a> RefUnwindSafe for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> !Send for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> !Sync for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> Unpin for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> UnwindSafe for BranchTarget<'ctx, 'a>

Blanket Implementations§

source§

impl<T> Any for Twhere +

Trait Implementations§

source§

impl<'ctx, 'a> Clone for BranchTarget<'ctx, 'a>

source§

fn clone(&self) -> BranchTarget<'ctx, 'a>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'ctx, 'a> Copy for BranchTarget<'ctx, 'a>

Auto Trait Implementations§

§

impl<'ctx, 'a> RefUnwindSafe for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> !Send for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> !Sync for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> Unpin for BranchTarget<'ctx, 'a>

§

impl<'ctx, 'a> UnwindSafe for BranchTarget<'ctx, 'a>

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> Twhere diff --git a/cairo_native/libfuncs/felt252/index.html b/cairo_native/libfuncs/felt252/index.html index cffe8e7a5..10c00fef4 100644 --- a/cairo_native/libfuncs/felt252/index.html +++ b/cairo_native/libfuncs/felt252/index.html @@ -1 +1 @@ -cairo_native::libfuncs::felt252 - Rust
Expand description

Functions

  • Select and call the correct libfunc builder function from the selector.
  • Generate MLIR operations for the following libfuncs:
  • Generate MLIR operations for the felt252_const libfunc.
  • Generate MLIR operations for the felt252_is_zero libfunc.
\ No newline at end of file +cairo_native::libfuncs::felt252 - Rust
Expand description

Functions

  • Select and call the correct libfunc builder function from the selector.
  • Generate MLIR operations for the following libfuncs:
  • Generate MLIR operations for the felt252_const libfunc.
  • Generate MLIR operations for the felt252_is_zero libfunc.
\ No newline at end of file diff --git a/cairo_native/libfuncs/felt252_dict/index.html b/cairo_native/libfuncs/felt252_dict/index.html index d6ab166c5..6d7f02975 100644 --- a/cairo_native/libfuncs/felt252_dict/index.html +++ b/cairo_native/libfuncs/felt252_dict/index.html @@ -1 +1 @@ -cairo_native::libfuncs::felt252_dict - Rust
Expand description

Functions

\ No newline at end of file +cairo_native::libfuncs::felt252_dict - Rust
Expand description

Functions

\ No newline at end of file diff --git a/cairo_native/libfuncs/felt252_dict_entry/index.html b/cairo_native/libfuncs/felt252_dict_entry/index.html index d40558e79..468378f51 100644 --- a/cairo_native/libfuncs/felt252_dict_entry/index.html +++ b/cairo_native/libfuncs/felt252_dict_entry/index.html @@ -1,3 +1,3 @@ -cairo_native::libfuncs::felt252_dict_entry - Rust
Expand description

felt252 dictionary entry libfuncs

+cairo_native::libfuncs::felt252_dict_entry - Rust
Expand description

Functions

\ No newline at end of file diff --git a/cairo_native/libfuncs/index.html b/cairo_native/libfuncs/index.html index ce56a6869..5eae70659 100644 --- a/cairo_native/libfuncs/index.html +++ b/cairo_native/libfuncs/index.html @@ -1,4 +1,4 @@ -cairo_native::libfuncs - Rust

Module cairo_native::libfuncs

source ·
Expand description

Compiler libfunc infrastructure

+cairo_native::libfuncs - Rust

Module cairo_native::libfuncs

source ·
Expand description

Compiler libfunc infrastructure

Contains libfunc generation stuff (aka. the actual instructions).

-

Modules

Structs

  • Helper struct which contains logic generation for extra MLIR blocks and branch operations to the +

Modules

Structs

  • Helper struct which contains logic generation for extra MLIR blocks and branch operations to the next statements.

Enums

Traits

  • Generation of MLIR operations from their Sierra counterparts.
\ No newline at end of file diff --git a/cairo_native/libfuncs/pedersen/index.html b/cairo_native/libfuncs/pedersen/index.html index 533b76dd4..b269001e4 100644 --- a/cairo_native/libfuncs/pedersen/index.html +++ b/cairo_native/libfuncs/pedersen/index.html @@ -1 +1 @@ -cairo_native::libfuncs::pedersen - Rust
Expand description

Functions

\ No newline at end of file +cairo_native::libfuncs::pedersen - Rust
Expand description

Functions

\ No newline at end of file diff --git a/cairo_native/libfuncs/poseidon/index.html b/cairo_native/libfuncs/poseidon/index.html index 889937e73..49838069e 100644 --- a/cairo_native/libfuncs/poseidon/index.html +++ b/cairo_native/libfuncs/poseidon/index.html @@ -1 +1 @@ -cairo_native::libfuncs::poseidon - Rust
Expand description

Functions

\ No newline at end of file +cairo_native::libfuncs::poseidon - Rust
Expand description

Functions

\ No newline at end of file diff --git a/cairo_native/libfuncs/sidebar-items.js b/cairo_native/libfuncs/sidebar-items.js index ce061990c..87bba8693 100644 --- a/cairo_native/libfuncs/sidebar-items.js +++ b/cairo_native/libfuncs/sidebar-items.js @@ -1 +1 @@ -window.SIDEBAR_ITEMS = {"enum":["BranchTarget"],"mod":["ap_tracking","array","bitwise","bool","box","branch_align","cast","debug","drop","dup","ec","enum","felt252","felt252_dict","felt252_dict_entry","function_call","gas","mem","nullable","pedersen","poseidon","snapshot_take","stark_net","struct","uint128","uint16","uint256","uint32","uint512","uint64","uint8","unconditional_jump","unwrap_non_zero"],"struct":["LibfuncHelper"],"trait":["LibfuncBuilder"]}; \ No newline at end of file +window.SIDEBAR_ITEMS = {"enum":["BranchTarget"],"mod":["ap_tracking","array","bitwise","bool","box","branch_align","cast","debug","drop","dup","ec","enum","felt252","felt252_dict","felt252_dict_entry","function_call","gas","mem","nullable","pedersen","poseidon","sint16","sint8","snapshot_take","stark_net","struct","uint128","uint16","uint256","uint32","uint512","uint64","uint8","unconditional_jump","unwrap_non_zero"],"struct":["LibfuncHelper"],"trait":["LibfuncBuilder"]}; \ No newline at end of file diff --git a/cairo_native/libfuncs/sint16/fn.build.html b/cairo_native/libfuncs/sint16/fn.build.html new file mode 100644 index 000000000..6ee027913 --- /dev/null +++ b/cairo_native/libfuncs/sint16/fn.build.html @@ -0,0 +1,14 @@ +build in cairo_native::libfuncs::sint16 - Rust
pub fn build<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    selector: &Sint16Concrete
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Select and call the correct libfunc builder function from the selector.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint16/fn.build_const.html b/cairo_native/libfuncs/sint16/fn.build_const.html new file mode 100644 index 000000000..f4c2de12e --- /dev/null +++ b/cairo_native/libfuncs/sint16/fn.build_const.html @@ -0,0 +1,14 @@ +build_const in cairo_native::libfuncs::sint16 - Rust
pub fn build_const<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &IntConstConcreteLibfunc<Sint16Traits>
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Generate MLIR operations for the i16_const libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint16/fn.build_diff.html b/cairo_native/libfuncs/sint16/fn.build_diff.html new file mode 100644 index 000000000..f08b1d2bc --- /dev/null +++ b/cairo_native/libfuncs/sint16/fn.build_diff.html @@ -0,0 +1,13 @@ +build_diff in cairo_native::libfuncs::sint16 - Rust
pub fn build_diff<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    _registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    _info: &SignatureOnlyConcreteLibfunc
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Generate MLIR operations for the i16_diff libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint16/fn.build_equal.html b/cairo_native/libfuncs/sint16/fn.build_equal.html new file mode 100644 index 000000000..8dd239942 --- /dev/null +++ b/cairo_native/libfuncs/sint16/fn.build_equal.html @@ -0,0 +1,13 @@ +build_equal in cairo_native::libfuncs::sint16 - Rust
pub fn build_equal<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    _registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    _info: &SignatureOnlyConcreteLibfunc
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Generate MLIR operations for the i16_eq libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint16/fn.build_from_felt252.html b/cairo_native/libfuncs/sint16/fn.build_from_felt252.html new file mode 100644 index 000000000..64e8d770b --- /dev/null +++ b/cairo_native/libfuncs/sint16/fn.build_from_felt252.html @@ -0,0 +1,14 @@ +build_from_felt252 in cairo_native::libfuncs::sint16 - Rust
pub fn build_from_felt252<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &SignatureOnlyConcreteLibfunc
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Generate MLIR operations for the i16_from_felt252 libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint16/fn.build_is_zero.html b/cairo_native/libfuncs/sint16/fn.build_is_zero.html new file mode 100644 index 000000000..06d6281d2 --- /dev/null +++ b/cairo_native/libfuncs/sint16/fn.build_is_zero.html @@ -0,0 +1,13 @@ +build_is_zero in cairo_native::libfuncs::sint16 - Rust
pub fn build_is_zero<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    _registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    _info: &SignatureOnlyConcreteLibfunc
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Generate MLIR operations for the i16_is_zero libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint16/fn.build_operation.html b/cairo_native/libfuncs/sint16/fn.build_operation.html new file mode 100644 index 000000000..451cf2e89 --- /dev/null +++ b/cairo_native/libfuncs/sint16/fn.build_operation.html @@ -0,0 +1,13 @@ +build_operation in cairo_native::libfuncs::sint16 - Rust
pub fn build_operation<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    _registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    info: &IntOperationConcreteLibfunc
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Generate MLIR operations for the i16 operation libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint16/fn.build_to_felt252.html b/cairo_native/libfuncs/sint16/fn.build_to_felt252.html new file mode 100644 index 000000000..e5a627118 --- /dev/null +++ b/cairo_native/libfuncs/sint16/fn.build_to_felt252.html @@ -0,0 +1,14 @@ +build_to_felt252 in cairo_native::libfuncs::sint16 - Rust
pub fn build_to_felt252<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &SignatureOnlyConcreteLibfunc
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Generate MLIR operations for the i16_to_felt252 libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint16/fn.build_widemul.html b/cairo_native/libfuncs/sint16/fn.build_widemul.html new file mode 100644 index 000000000..56a977e98 --- /dev/null +++ b/cairo_native/libfuncs/sint16/fn.build_widemul.html @@ -0,0 +1,14 @@ +build_widemul in cairo_native::libfuncs::sint16 - Rust
pub fn build_widemul<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &SignatureOnlyConcreteLibfunc
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Generate MLIR operations for the i16_widemul libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint16/index.html b/cairo_native/libfuncs/sint16/index.html new file mode 100644 index 000000000..f10f435cc --- /dev/null +++ b/cairo_native/libfuncs/sint16/index.html @@ -0,0 +1 @@ +cairo_native::libfuncs::sint16 - Rust
Expand description

Functions

  • Select and call the correct libfunc builder function from the selector.
  • Generate MLIR operations for the i16_const libfunc.
  • Generate MLIR operations for the i16_diff libfunc.
  • Generate MLIR operations for the i16_eq libfunc.
  • Generate MLIR operations for the i16_from_felt252 libfunc.
  • Generate MLIR operations for the i16_is_zero libfunc.
  • Generate MLIR operations for the i16 operation libfunc.
  • Generate MLIR operations for the i16_to_felt252 libfunc.
  • Generate MLIR operations for the i16_widemul libfunc.
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint16/sidebar-items.js b/cairo_native/libfuncs/sint16/sidebar-items.js new file mode 100644 index 000000000..0c7142767 --- /dev/null +++ b/cairo_native/libfuncs/sint16/sidebar-items.js @@ -0,0 +1 @@ +window.SIDEBAR_ITEMS = {"fn":["build","build_const","build_diff","build_equal","build_from_felt252","build_is_zero","build_operation","build_to_felt252","build_widemul"]}; \ No newline at end of file diff --git a/cairo_native/libfuncs/sint8/fn.build.html b/cairo_native/libfuncs/sint8/fn.build.html new file mode 100644 index 000000000..e33222263 --- /dev/null +++ b/cairo_native/libfuncs/sint8/fn.build.html @@ -0,0 +1,14 @@ +build in cairo_native::libfuncs::sint8 - Rust

Function cairo_native::libfuncs::sint8::build

source ·
pub fn build<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    selector: &Sint8Concrete
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Select and call the correct libfunc builder function from the selector.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint8/fn.build_const.html b/cairo_native/libfuncs/sint8/fn.build_const.html new file mode 100644 index 000000000..471d28cb0 --- /dev/null +++ b/cairo_native/libfuncs/sint8/fn.build_const.html @@ -0,0 +1,14 @@ +build_const in cairo_native::libfuncs::sint8 - Rust
pub fn build_const<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &IntConstConcreteLibfunc<Sint8Traits>
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Generate MLIR operations for the i8_const libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint8/fn.build_diff.html b/cairo_native/libfuncs/sint8/fn.build_diff.html new file mode 100644 index 000000000..880065e40 --- /dev/null +++ b/cairo_native/libfuncs/sint8/fn.build_diff.html @@ -0,0 +1,13 @@ +build_diff in cairo_native::libfuncs::sint8 - Rust
pub fn build_diff<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    _registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    _info: &SignatureOnlyConcreteLibfunc
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Generate MLIR operations for the i8_diff libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint8/fn.build_equal.html b/cairo_native/libfuncs/sint8/fn.build_equal.html new file mode 100644 index 000000000..6c9f687cb --- /dev/null +++ b/cairo_native/libfuncs/sint8/fn.build_equal.html @@ -0,0 +1,13 @@ +build_equal in cairo_native::libfuncs::sint8 - Rust
pub fn build_equal<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    _registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    _info: &SignatureOnlyConcreteLibfunc
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Generate MLIR operations for the i8_eq libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint8/fn.build_from_felt252.html b/cairo_native/libfuncs/sint8/fn.build_from_felt252.html new file mode 100644 index 000000000..5804db998 --- /dev/null +++ b/cairo_native/libfuncs/sint8/fn.build_from_felt252.html @@ -0,0 +1,14 @@ +build_from_felt252 in cairo_native::libfuncs::sint8 - Rust
pub fn build_from_felt252<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &SignatureOnlyConcreteLibfunc
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Generate MLIR operations for the i8_from_felt252 libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint8/fn.build_is_zero.html b/cairo_native/libfuncs/sint8/fn.build_is_zero.html new file mode 100644 index 000000000..b0d84d62a --- /dev/null +++ b/cairo_native/libfuncs/sint8/fn.build_is_zero.html @@ -0,0 +1,13 @@ +build_is_zero in cairo_native::libfuncs::sint8 - Rust
pub fn build_is_zero<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    _registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    _info: &SignatureOnlyConcreteLibfunc
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Generate MLIR operations for the i8_is_zero libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint8/fn.build_operation.html b/cairo_native/libfuncs/sint8/fn.build_operation.html new file mode 100644 index 000000000..9081f45e6 --- /dev/null +++ b/cairo_native/libfuncs/sint8/fn.build_operation.html @@ -0,0 +1,13 @@ +build_operation in cairo_native::libfuncs::sint8 - Rust
pub fn build_operation<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    _registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    info: &IntOperationConcreteLibfunc
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Generate MLIR operations for the i8 operation libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint8/fn.build_to_felt252.html b/cairo_native/libfuncs/sint8/fn.build_to_felt252.html new file mode 100644 index 000000000..41c972420 --- /dev/null +++ b/cairo_native/libfuncs/sint8/fn.build_to_felt252.html @@ -0,0 +1,14 @@ +build_to_felt252 in cairo_native::libfuncs::sint8 - Rust
pub fn build_to_felt252<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &SignatureOnlyConcreteLibfunc
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Generate MLIR operations for the i8_to_felt252 libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint8/fn.build_widemul.html b/cairo_native/libfuncs/sint8/fn.build_widemul.html new file mode 100644 index 000000000..8a69b8c82 --- /dev/null +++ b/cairo_native/libfuncs/sint8/fn.build_widemul.html @@ -0,0 +1,14 @@ +build_widemul in cairo_native::libfuncs::sint8 - Rust
pub fn build_widemul<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &SignatureOnlyConcreteLibfunc
+) -> Result<()>where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
Expand description

Generate MLIR operations for the i8_widemul libfunc.

+
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint8/index.html b/cairo_native/libfuncs/sint8/index.html new file mode 100644 index 000000000..103aa780a --- /dev/null +++ b/cairo_native/libfuncs/sint8/index.html @@ -0,0 +1 @@ +cairo_native::libfuncs::sint8 - Rust
Expand description

Functions

  • Select and call the correct libfunc builder function from the selector.
  • Generate MLIR operations for the i8_const libfunc.
  • Generate MLIR operations for the i8_diff libfunc.
  • Generate MLIR operations for the i8_eq libfunc.
  • Generate MLIR operations for the i8_from_felt252 libfunc.
  • Generate MLIR operations for the i8_is_zero libfunc.
  • Generate MLIR operations for the i8 operation libfunc.
  • Generate MLIR operations for the i8_to_felt252 libfunc.
  • Generate MLIR operations for the i8_widemul libfunc.
\ No newline at end of file diff --git a/cairo_native/libfuncs/sint8/sidebar-items.js b/cairo_native/libfuncs/sint8/sidebar-items.js new file mode 100644 index 000000000..0c7142767 --- /dev/null +++ b/cairo_native/libfuncs/sint8/sidebar-items.js @@ -0,0 +1 @@ +window.SIDEBAR_ITEMS = {"fn":["build","build_const","build_diff","build_equal","build_from_felt252","build_is_zero","build_operation","build_to_felt252","build_widemul"]}; \ No newline at end of file diff --git a/cairo_native/libfuncs/stark_net/index.html b/cairo_native/libfuncs/stark_net/index.html index 5a5d32aae..779b334cb 100644 --- a/cairo_native/libfuncs/stark_net/index.html +++ b/cairo_native/libfuncs/stark_net/index.html @@ -1,3 +1,3 @@ -cairo_native::libfuncs::stark_net - Rust
Expand description

StarkNet libfuncs

+cairo_native::libfuncs::stark_net - Rust
\ No newline at end of file diff --git a/cairo_native/libfuncs/struct.LibfuncHelper.html b/cairo_native/libfuncs/struct.LibfuncHelper.html index ba4ddbe8d..cecb9ffe8 100644 --- a/cairo_native/libfuncs/struct.LibfuncHelper.html +++ b/cairo_native/libfuncs/struct.LibfuncHelper.html @@ -1,4 +1,4 @@ -LibfuncHelper in cairo_native::libfuncs - Rust
pub struct LibfuncHelper<'ctx, 'this>where
+LibfuncHelper in cairo_native::libfuncs - Rust
pub struct LibfuncHelper<'ctx, 'this>where
     'this: 'ctx,{ /* private fields */ }
Expand description

Helper struct which contains logic generation for extra MLIR blocks and branch operations to the next statements.

Each branch index should be present in exactly one call a branching method (either @@ -6,13 +6,13 @@

This helper is necessary because the statement following the current one may not have the same arguments as the results returned by the current statement. Because of that, a direct jump cannot be made and some processing is required.

-

Implementations§

source§

impl<'ctx, 'this> LibfuncHelper<'ctx, 'this>where - 'this: 'ctx,

source

pub fn init_block(&self) -> &Block<'ctx>

Return the initialization block.

+

Implementations§

source§

impl<'ctx, 'this> LibfuncHelper<'ctx, 'this>where + 'this: 'ctx,

source

pub fn init_block(&self) -> &Block<'ctx>

Return the initialization block.

The init block is used for llvm.alloca instructions. It is guaranteed to not be executed multiple times on tail-recursive functions. This property allows generating tail-recursive functions that do not grow the stack.

-
source

pub fn append_block(&self, block: Block<'ctx>) -> &'this Block<'ctx>

Inserts a new block after all the current libfunc’s blocks.

-
source

pub fn br( +

source

pub fn append_block(&self, block: Block<'ctx>) -> &'this Block<'ctx>

Inserts a new block after all the current libfunc’s blocks.

+
source

pub fn br( &self, branch: usize, results: &[Value<'ctx, 'this>], @@ -20,7 +20,7 @@ ) -> Operation<'ctx>

Creates an unconditional branching operation out of the libfunc and into the next statement.

This method will also store the returned values so that they can be moved into the state and used later on when required.

-
source

pub fn cond_br( +

source

pub fn cond_br( &self, context: &'ctx Context, condition: Value<'ctx, 'this>, @@ -33,7 +33,7 @@ avoided whenever possible. In those cases just use [melior::dialect::cf::cond_br].

This method will also store the returned values so that they can be moved into the state and used later on when required.

-

source

pub fn switch( +

source

pub fn switch( &self, context: &'ctx Context, flag: Value<'ctx, 'this>, @@ -50,7 +50,7 @@

pub fn context(&self) -> ContextRef<'c>

Gets a context.

pub fn body(&self) -> BlockRef<'c, '_>

Gets a block of a module body.

pub fn to_raw(&self) -> MlirModule

Converts a module into a raw object.

-

Trait Implementations§

source§

impl<'ctx, 'this> Deref for LibfuncHelper<'ctx, 'this>

§

type Target = Module<'ctx>

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.

Auto Trait Implementations§

§

impl<'ctx, 'this> !RefUnwindSafe for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> !Send for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> !Sync for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> Unpin for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> !UnwindSafe for LibfuncHelper<'ctx, 'this>

Blanket Implementations§

source§

impl<T> Any for Twhere +

Trait Implementations§

source§

impl<'ctx, 'this> Deref for LibfuncHelper<'ctx, 'this>

§

type Target = Module<'ctx>

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.

Auto Trait Implementations§

§

impl<'ctx, 'this> !RefUnwindSafe for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> !Send for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> !Sync for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> Unpin for LibfuncHelper<'ctx, 'this>

§

impl<'ctx, 'this> !UnwindSafe for LibfuncHelper<'ctx, 'this>

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> Twhere diff --git a/cairo_native/libfuncs/trait.LibfuncBuilder.html b/cairo_native/libfuncs/trait.LibfuncBuilder.html index 30277882c..c72de48cc 100644 --- a/cairo_native/libfuncs/trait.LibfuncBuilder.html +++ b/cairo_native/libfuncs/trait.LibfuncBuilder.html @@ -1,4 +1,4 @@ -LibfuncBuilder in cairo_native::libfuncs - Rust
pub trait LibfuncBuilder<TType, TLibfunc>where
+LibfuncBuilder in cairo_native::libfuncs - Rust
pub trait LibfuncBuilder<TType, TLibfunc>where
     TType: GenericType,
     TLibfunc: GenericLibfunc<Concrete = Self>,
     <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,{
@@ -18,8 +18,8 @@
 }
Expand description

Generation of MLIR operations from their Sierra counterparts.

All possible Sierra libfuncs must implement it. It is already implemented for all the core libfuncs, contained in [CoreConcreteLibfunc].

-

Required Associated Types§

source

type Error: Error

Error type returned by this trait’s methods.

-

Required Methods§

source

fn build<'ctx, 'this>( +

Required Associated Types§

source

type Error: Error

Error type returned by this trait’s methods.

+

Required Methods§

source

fn build<'ctx, 'this>( &self, context: &'ctx Context, registry: &ProgramRegistry<TType, TLibfunc>, @@ -28,13 +28,13 @@ helper: &LibfuncHelper<'ctx, 'this>, metadata: &mut MetadataStorage ) -> Result<(), Self::Error>

Generate the MLIR operations.

-
source

fn is_function_call(&self) -> Option<&FunctionId>

Return the target function if the statement is a function call.

+
source

fn is_function_call(&self) -> Option<&FunctionId>

Return the target function if the statement is a function call.

This is used by the compiler to check whether a statement is a function call and apply the tail recursion logic.

-

Implementations on Foreign Types§

source§

impl<TType, TLibfunc> LibfuncBuilder<TType, TLibfunc> for CoreConcreteLibfuncwhere +

Implementations on Foreign Types§

source§

impl<TType, TLibfunc> LibfuncBuilder<TType, TLibfunc> for CoreConcreteLibfuncwhere TType: 'static + GenericType, TLibfunc: 'static + GenericLibfunc<Concrete = Self>, - <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,

§

type Error = Error

source§

fn build<'ctx, 'this>( + <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,

§

type Error = Error

source§

fn build<'ctx, 'this>( &self, context: &'ctx Context, registry: &ProgramRegistry<TType, TLibfunc>, @@ -42,4 +42,4 @@ location: Location<'ctx>, helper: &LibfuncHelper<'ctx, 'this>, metadata: &mut MetadataStorage -) -> Result<(), Self::Error>

source§

fn is_function_call(&self) -> Option<&FunctionId>

Implementors§

\ No newline at end of file +) -> Result<(), Self::Error>

source§

fn is_function_call(&self) -> Option<&FunctionId>

Implementors§

\ No newline at end of file diff --git a/cairo_native/metadata/prime_modulo/index.html b/cairo_native/metadata/prime_modulo/index.html index 5a70e0f4f..ad303d6fb 100644 --- a/cairo_native/metadata/prime_modulo/index.html +++ b/cairo_native/metadata/prime_modulo/index.html @@ -1,4 +1,4 @@ cairo_native::metadata::prime_modulo - Rust
Expand description

Finite field prime modulo

Contains the prime modulo number of a finite field.

-

Currently used only for felt252.

+

Currently used only for Felt.

Structs

\ No newline at end of file diff --git a/cairo_native/metadata/syscall_handler/struct.SyscallHandlerMeta.html b/cairo_native/metadata/syscall_handler/struct.SyscallHandlerMeta.html index f3964b38c..a1557734a 100644 --- a/cairo_native/metadata/syscall_handler/struct.SyscallHandlerMeta.html +++ b/cairo_native/metadata/syscall_handler/struct.SyscallHandlerMeta.html @@ -1,4 +1,4 @@ -SyscallHandlerMeta in cairo_native::metadata::syscall_handler - Rust
pub struct SyscallHandlerMeta { /* private fields */ }

Implementations§

source§

impl SyscallHandlerMeta

source

pub fn new<T>(handler_impl: &mut T) -> Selfwhere +SyscallHandlerMeta in cairo_native::metadata::syscall_handler - Rust
pub struct SyscallHandlerMeta { /* private fields */ }

Implementations§

source§

impl SyscallHandlerMeta

source

pub fn new<T>(handler_impl: &mut T) -> Selfwhere T: StarkNetSyscallHandler,

source

pub fn as_ptr(&self) -> NonNull<()>

Trait Implementations§

source§

impl Clone for SyscallHandlerMeta

source§

fn clone(&self) -> SyscallHandlerMeta

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for SyscallHandlerMeta

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Drop for SyscallHandlerMeta

source§

fn drop(&mut self)

Executes the destructor for this type. Read more
source§

impl PartialEq<SyscallHandlerMeta> for SyscallHandlerMeta

source§

fn eq(&self, other: &SyscallHandlerMeta) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Eq for SyscallHandlerMeta

source§

impl StructuralEq for SyscallHandlerMeta

source§

impl StructuralPartialEq for SyscallHandlerMeta

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere @@ -12,9 +12,7 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Qwhere - Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>where diff --git a/cairo_native/starknet/index.html b/cairo_native/starknet/index.html index 2a57cbc75..ac06e5395 100644 --- a/cairo_native/starknet/index.html +++ b/cairo_native/starknet/index.html @@ -1,2 +1,2 @@ -cairo_native::starknet - Rust

Module cairo_native::starknet

source ·
Expand description

Starknet related code for cairo_native

+cairo_native::starknet - Rust

Module cairo_native::starknet

source ·
Expand description

Starknet related code for cairo_native

Structs

Traits

Type Definitions

\ No newline at end of file diff --git a/cairo_native/starknet/struct.BlockInfo.html b/cairo_native/starknet/struct.BlockInfo.html index a24f6b5fc..a818a0a22 100644 --- a/cairo_native/starknet/struct.BlockInfo.html +++ b/cairo_native/starknet/struct.BlockInfo.html @@ -1,8 +1,8 @@ BlockInfo in cairo_native::starknet - Rust
pub struct BlockInfo {
     pub block_number: u64,
     pub block_timestamp: u64,
-    pub sequencer_address: Felt252,
-}

Fields§

§block_number: u64§block_timestamp: u64§sequencer_address: Felt252

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere + pub sequencer_address: Felt, +}

Fields§

§block_number: u64§block_timestamp: u64§sequencer_address: Felt

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> Twhere diff --git a/cairo_native/starknet/struct.ExecutionInfo.html b/cairo_native/starknet/struct.ExecutionInfo.html index 7915293f0..d2a620c51 100644 --- a/cairo_native/starknet/struct.ExecutionInfo.html +++ b/cairo_native/starknet/struct.ExecutionInfo.html @@ -1,10 +1,10 @@ ExecutionInfo in cairo_native::starknet - Rust
pub struct ExecutionInfo {
     pub block_info: BlockInfo,
     pub tx_info: TxInfo,
-    pub caller_address: Felt252,
-    pub contract_address: Felt252,
-    pub entry_point_selector: Felt252,
-}

Fields§

§block_info: BlockInfo§tx_info: TxInfo§caller_address: Felt252§contract_address: Felt252§entry_point_selector: Felt252

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere + pub caller_address: Felt, + pub contract_address: Felt, + pub entry_point_selector: Felt, +}

Fields§

§block_info: BlockInfo§tx_info: TxInfo§caller_address: Felt§contract_address: Felt§entry_point_selector: Felt

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> Twhere diff --git a/cairo_native/starknet/struct.TxInfo.html b/cairo_native/starknet/struct.TxInfo.html index 04318de90..bb5d1ffe6 100644 --- a/cairo_native/starknet/struct.TxInfo.html +++ b/cairo_native/starknet/struct.TxInfo.html @@ -1,12 +1,12 @@ TxInfo in cairo_native::starknet - Rust
pub struct TxInfo {
-    pub version: Felt252,
-    pub account_contract_address: Felt252,
+    pub version: Felt,
+    pub account_contract_address: Felt,
     pub max_fee: u128,
-    pub signature: Vec<Felt252>,
-    pub transaction_hash: Felt252,
-    pub chain_id: Felt252,
-    pub nonce: Felt252,
-}

Fields§

§version: Felt252§account_contract_address: Felt252§max_fee: u128§signature: Vec<Felt252>§transaction_hash: Felt252§chain_id: Felt252§nonce: Felt252

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere + pub signature: Vec<Felt>, + pub transaction_hash: Felt, + pub chain_id: Felt, + pub nonce: Felt, +}

Fields§

§version: Felt§account_contract_address: Felt§max_fee: u128§signature: Vec<Felt>§transaction_hash: Felt§chain_id: Felt§nonce: Felt

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> Twhere diff --git a/cairo_native/starknet/trait.StarkNetSyscallHandler.html b/cairo_native/starknet/trait.StarkNetSyscallHandler.html index 7949faf12..ca87a5560 100644 --- a/cairo_native/starknet/trait.StarkNetSyscallHandler.html +++ b/cairo_native/starknet/trait.StarkNetSyscallHandler.html @@ -1,64 +1,64 @@ -StarkNetSyscallHandler in cairo_native::starknet - Rust
pub trait StarkNetSyscallHandler {
+StarkNetSyscallHandler in cairo_native::starknet - Rust
pub trait StarkNetSyscallHandler {
 
Show 34 methods // Required methods fn get_block_hash( &mut self, block_number: u64, remaining_gas: &mut u128 - ) -> SyscallResult<Felt252>; + ) -> SyscallResult<Felt>; fn get_execution_info( &mut self, remaining_gas: &mut u128 ) -> SyscallResult<ExecutionInfo>; fn deploy( &mut self, - class_hash: Felt252, - contract_address_salt: Felt252, - calldata: &[Felt252], + class_hash: Felt, + contract_address_salt: Felt, + calldata: &[Felt], deploy_from_zero: bool, remaining_gas: &mut u128 - ) -> SyscallResult<(Felt252, Vec<Felt252>)>; + ) -> SyscallResult<(Felt, Vec<Felt>)>; fn replace_class( &mut self, - class_hash: Felt252, + class_hash: Felt, remaining_gas: &mut u128 ) -> SyscallResult<()>; fn library_call( &mut self, - class_hash: Felt252, - function_selector: Felt252, - calldata: &[Felt252], + class_hash: Felt, + function_selector: Felt, + calldata: &[Felt], remaining_gas: &mut u128 - ) -> SyscallResult<Vec<Felt252>>; + ) -> SyscallResult<Vec<Felt>>; fn call_contract( &mut self, - address: Felt252, - entry_point_selector: Felt252, - calldata: &[Felt252], + address: Felt, + entry_point_selector: Felt, + calldata: &[Felt], remaining_gas: &mut u128 - ) -> SyscallResult<Vec<Felt252>>; + ) -> SyscallResult<Vec<Felt>>; fn storage_read( &mut self, address_domain: u32, - address: Felt252, + address: Felt, remaining_gas: &mut u128 - ) -> SyscallResult<Felt252>; + ) -> SyscallResult<Felt>; fn storage_write( &mut self, address_domain: u32, - address: Felt252, - value: Felt252, + address: Felt, + value: Felt, remaining_gas: &mut u128 ) -> SyscallResult<()>; fn emit_event( &mut self, - keys: &[Felt252], - data: &[Felt252], + keys: &[Felt], + data: &[Felt], remaining_gas: &mut u128 ) -> SyscallResult<()>; fn send_message_to_l1( &mut self, - to_address: Felt252, - payload: &[Felt252], + to_address: Felt, + payload: &[Felt], remaining_gas: &mut u128 ) -> SyscallResult<()>; fn keccak( @@ -125,119 +125,119 @@ remaining_gas: &mut u128 ) -> SyscallResult<Option<Secp256k1Point>>; fn pop_log(&mut self); - fn set_account_contract_address(&mut self, contract_address: Felt252); + fn set_account_contract_address(&mut self, contract_address: Felt); fn set_block_number(&mut self, block_number: u64); fn set_block_timestamp(&mut self, block_timestamp: u64); - fn set_caller_address(&mut self, address: Felt252); - fn set_chain_id(&mut self, chain_id: Felt252); - fn set_contract_address(&mut self, address: Felt252); + fn set_caller_address(&mut self, address: Felt); + fn set_chain_id(&mut self, chain_id: Felt); + fn set_contract_address(&mut self, address: Felt); fn set_max_fee(&mut self, max_fee: u128); - fn set_nonce(&mut self, nonce: Felt252); - fn set_sequencer_address(&mut self, address: Felt252); - fn set_signature(&mut self, signature: &[Felt252]); - fn set_transaction_hash(&mut self, transaction_hash: Felt252); - fn set_version(&mut self, version: Felt252); + fn set_nonce(&mut self, nonce: Felt); + fn set_sequencer_address(&mut self, address: Felt); + fn set_signature(&mut self, signature: &[Felt]); + fn set_transaction_hash(&mut self, transaction_hash: Felt); + fn set_version(&mut self, version: Felt);
}

Required Methods§

source

fn get_block_hash( &mut self, block_number: u64, remaining_gas: &mut u128 -) -> SyscallResult<Felt252>

source

fn get_execution_info( +) -> SyscallResult<Felt>

source

fn get_execution_info( &mut self, remaining_gas: &mut u128 ) -> SyscallResult<ExecutionInfo>

source

fn deploy( &mut self, - class_hash: Felt252, - contract_address_salt: Felt252, - calldata: &[Felt252], + class_hash: Felt, + contract_address_salt: Felt, + calldata: &[Felt], deploy_from_zero: bool, remaining_gas: &mut u128 -) -> SyscallResult<(Felt252, Vec<Felt252>)>

source

fn replace_class( +) -> SyscallResult<(Felt, Vec<Felt>)>

source

fn replace_class( &mut self, - class_hash: Felt252, + class_hash: Felt, remaining_gas: &mut u128 -) -> SyscallResult<()>

source

fn library_call( +) -> SyscallResult<()>

source

fn library_call( &mut self, - class_hash: Felt252, - function_selector: Felt252, - calldata: &[Felt252], + class_hash: Felt, + function_selector: Felt, + calldata: &[Felt], remaining_gas: &mut u128 -) -> SyscallResult<Vec<Felt252>>

source

fn call_contract( +) -> SyscallResult<Vec<Felt>>

source

fn call_contract( &mut self, - address: Felt252, - entry_point_selector: Felt252, - calldata: &[Felt252], + address: Felt, + entry_point_selector: Felt, + calldata: &[Felt], remaining_gas: &mut u128 -) -> SyscallResult<Vec<Felt252>>

source

fn storage_read( +) -> SyscallResult<Vec<Felt>>

source

fn storage_read( &mut self, address_domain: u32, - address: Felt252, + address: Felt, remaining_gas: &mut u128 -) -> SyscallResult<Felt252>

source

fn storage_write( +) -> SyscallResult<Felt>

source

fn storage_write( &mut self, address_domain: u32, - address: Felt252, - value: Felt252, + address: Felt, + value: Felt, remaining_gas: &mut u128 -) -> SyscallResult<()>

source

fn emit_event( +) -> SyscallResult<()>

source

fn emit_event( &mut self, - keys: &[Felt252], - data: &[Felt252], + keys: &[Felt], + data: &[Felt], remaining_gas: &mut u128 -) -> SyscallResult<()>

source

fn send_message_to_l1( +) -> SyscallResult<()>

source

fn send_message_to_l1( &mut self, - to_address: Felt252, - payload: &[Felt252], + to_address: Felt, + payload: &[Felt], remaining_gas: &mut u128 -) -> SyscallResult<()>

source

fn keccak( +) -> SyscallResult<()>

source

fn keccak( &mut self, input: &[u64], remaining_gas: &mut u128 -) -> SyscallResult<U256>

source

fn secp256k1_add( +) -> SyscallResult<U256>

source

fn secp256k1_add( &mut self, p0: Secp256k1Point, p1: Secp256k1Point, remaining_gas: &mut u128 -) -> SyscallResult<Option<Secp256k1Point>>

source

fn secp256k1_get_point_from_x( +) -> SyscallResult<Option<Secp256k1Point>>

source

fn secp256k1_get_point_from_x( &self, x: U256, y_parity: bool, remaining_gas: &mut u128 -) -> SyscallResult<Option<Secp256k1Point>>

source

fn secp256k1_get_xy( +) -> SyscallResult<Option<Secp256k1Point>>

source

fn secp256k1_get_xy( &self, p: Secp256k1Point, remaining_gas: &mut u128 -) -> SyscallResult<(U256, U256)>

source

fn secp256k1_mul( +) -> SyscallResult<(U256, U256)>

source

fn secp256k1_mul( &self, p: Secp256k1Point, m: U256, remaining_gas: &mut u128 -) -> SyscallResult<Option<Secp256k1Point>>

source

fn secp256k1_new( +) -> SyscallResult<Option<Secp256k1Point>>

source

fn secp256k1_new( &self, x: U256, y: U256, remaining_gas: &mut u128 -) -> SyscallResult<Option<Secp256k1Point>>

source

fn secp256r1_add( +) -> SyscallResult<Option<Secp256k1Point>>

source

fn secp256r1_add( &self, p0: Secp256k1Point, p1: Secp256k1Point, remaining_gas: &mut u128 -) -> SyscallResult<Option<Secp256k1Point>>

source

fn secp256r1_get_point_from_x( +) -> SyscallResult<Option<Secp256k1Point>>

source

fn secp256r1_get_point_from_x( &self, x: U256, y_parity: bool, remaining_gas: &mut u128 -) -> SyscallResult<Option<Secp256k1Point>>

source

fn secp256r1_get_xy( +) -> SyscallResult<Option<Secp256k1Point>>

source

fn secp256r1_get_xy( &self, p: Secp256k1Point, remaining_gas: &mut u128 -) -> SyscallResult<(U256, U256)>

source

fn secp256r1_mul( +) -> SyscallResult<(U256, U256)>

source

fn secp256r1_mul( &self, p: Secp256k1Point, m: U256, remaining_gas: &mut u128 -) -> SyscallResult<Option<Secp256k1Point>>

source

fn secp256r1_new( +) -> SyscallResult<Option<Secp256k1Point>>

source

fn secp256r1_new( &mut self, x: U256, y: U256, remaining_gas: &mut u128 -) -> SyscallResult<Option<Secp256k1Point>>

source

fn pop_log(&mut self)

source

fn set_account_contract_address(&mut self, contract_address: Felt252)

source

fn set_block_number(&mut self, block_number: u64)

source

fn set_block_timestamp(&mut self, block_timestamp: u64)

source

fn set_caller_address(&mut self, address: Felt252)

source

fn set_chain_id(&mut self, chain_id: Felt252)

source

fn set_contract_address(&mut self, address: Felt252)

source

fn set_max_fee(&mut self, max_fee: u128)

source

fn set_nonce(&mut self, nonce: Felt252)

source

fn set_sequencer_address(&mut self, address: Felt252)

source

fn set_signature(&mut self, signature: &[Felt252])

source

fn set_transaction_hash(&mut self, transaction_hash: Felt252)

source

fn set_version(&mut self, version: Felt252)

Implementors§

\ No newline at end of file +) -> SyscallResult<Option<Secp256k1Point>>

source

fn pop_log(&mut self)

source

fn set_account_contract_address(&mut self, contract_address: Felt)

source

fn set_block_number(&mut self, block_number: u64)

source

fn set_block_timestamp(&mut self, block_timestamp: u64)

source

fn set_caller_address(&mut self, address: Felt)

source

fn set_chain_id(&mut self, chain_id: Felt)

source

fn set_contract_address(&mut self, address: Felt)

source

fn set_max_fee(&mut self, max_fee: u128)

source

fn set_nonce(&mut self, nonce: Felt)

source

fn set_sequencer_address(&mut self, address: Felt)

source

fn set_signature(&mut self, signature: &[Felt])

source

fn set_transaction_hash(&mut self, transaction_hash: Felt)

source

fn set_version(&mut self, version: Felt)

Implementors§

\ No newline at end of file diff --git a/cairo_native/starknet/type.SyscallResult.html b/cairo_native/starknet/type.SyscallResult.html index bf13a3142..9f106fc33 100644 --- a/cairo_native/starknet/type.SyscallResult.html +++ b/cairo_native/starknet/type.SyscallResult.html @@ -1 +1 @@ -SyscallResult in cairo_native::starknet - Rust

Type Definition cairo_native::starknet::SyscallResult

source ·
pub type SyscallResult<T> = Result<T, Vec<Felt252>>;
\ No newline at end of file +SyscallResult in cairo_native::starknet - Rust

Type Definition cairo_native::starknet::SyscallResult

source ·
pub type SyscallResult<T> = Result<T, Vec<Felt>>;
\ No newline at end of file diff --git a/cairo_native/types/enum/index.html b/cairo_native/types/enum/index.html index 61c25ce3f..e85fad057 100644 --- a/cairo_native/types/enum/index.html +++ b/cairo_native/types/enum/index.html @@ -131,7 +131,7 @@

Layout

U16: u16, U32: u32, U64: u64, - Felt: felt252, + Felt: Felt, } diff --git a/cairo_native/types/felt252/fn.build.html b/cairo_native/types/felt252/fn.build.html index 52a365ff3..ee092588f 100644 --- a/cairo_native/types/felt252/fn.build.html +++ b/cairo_native/types/felt252/fn.build.html @@ -1,4 +1,4 @@ -build in cairo_native::types::felt252 - Rust

Function cairo_native::types::felt252::build

source ·
pub fn build<'ctx, TType, TLibfunc>(
+build in cairo_native::types::felt252 - Rust

Function cairo_native::types::felt252::build

source ·
pub fn build<'ctx, TType, TLibfunc>(
     context: &'ctx Context,
     _module: &Module<'ctx>,
     _registry: &ProgramRegistry<TType, TLibfunc>,
diff --git a/cairo_native/types/felt252/fn.register_prime_modulo_meta.html b/cairo_native/types/felt252/fn.register_prime_modulo_meta.html
index 10b5f2f95..b0afbae2f 100644
--- a/cairo_native/types/felt252/fn.register_prime_modulo_meta.html
+++ b/cairo_native/types/felt252/fn.register_prime_modulo_meta.html
@@ -1,3 +1,3 @@
-register_prime_modulo_meta in cairo_native::types::felt252 - Rust
pub fn register_prime_modulo_meta(
+register_prime_modulo_meta in cairo_native::types::felt252 - Rust
pub fn register_prime_modulo_meta(
     metadata: &mut MetadataStorage
 ) -> &mut PrimeModuloMeta<Felt252>
\ No newline at end of file diff --git a/cairo_native/types/felt252/index.html b/cairo_native/types/felt252/index.html index 1121dff91..acc136671 100644 --- a/cairo_native/types/felt252/index.html +++ b/cairo_native/types/felt252/index.html @@ -1,5 +1,5 @@ -cairo_native::types::felt252 - Rust

Module cairo_native::types::felt252

source ·
Expand description

felt252 type

+cairo_native::types::felt252 - Rust

Module cairo_native::types::felt252

source ·
Expand description

felt252 type

A felt252 is a 252-bit number within a finite field modulo a prime number.

-

Structs

Functions

\ No newline at end of file +

Structs

Functions

\ No newline at end of file diff --git a/cairo_native/types/felt252/sidebar-items.js b/cairo_native/types/felt252/sidebar-items.js index 983b6a8bc..9ddb19c3d 100644 --- a/cairo_native/types/felt252/sidebar-items.js +++ b/cairo_native/types/felt252/sidebar-items.js @@ -1 +1 @@ -window.SIDEBAR_ITEMS = {"fn":["build","register_prime_modulo_meta"],"struct":["Felt252","PRIME"]}; \ No newline at end of file +window.SIDEBAR_ITEMS = {"fn":["build","register_prime_modulo_meta"],"struct":["Felt252","HALF_PRIME","PRIME"]}; \ No newline at end of file diff --git a/cairo_native/types/felt252/struct.Felt252.html b/cairo_native/types/felt252/struct.Felt252.html index b54aa2510..14df9ebe1 100644 --- a/cairo_native/types/felt252/struct.Felt252.html +++ b/cairo_native/types/felt252/struct.Felt252.html @@ -1,5 +1,5 @@ -Felt252 in cairo_native::types::felt252 - Rust
pub struct Felt252;
Expand description

Marker type for the PrimeModuloMeta metadata.

-

Trait Implementations§

source§

impl Debug for Felt252

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere +Felt252 in cairo_native::types::felt252 - Rust
pub struct Felt252;
Expand description

Marker type for the PrimeModuloMeta metadata.

+

Trait Implementations§

source§

impl Debug for Felt252

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> Twhere diff --git a/cairo_native/types/felt252/struct.HALF_PRIME.html b/cairo_native/types/felt252/struct.HALF_PRIME.html new file mode 100644 index 000000000..532da6346 --- /dev/null +++ b/cairo_native/types/felt252/struct.HALF_PRIME.html @@ -0,0 +1,242 @@ +HALF_PRIME in cairo_native::types::felt252 - Rust
pub struct HALF_PRIME { /* private fields */ }

Methods from Deref<Target = BigInt>§

source

pub fn to_bytes_be(&self) -> (Sign, Vec<u8, Global>)

Returns the sign and the byte representation of the BigInt in big-endian byte order.

+
Examples
+
use num_bigint::{ToBigInt, Sign};
+
+let i = -1125.to_bigint().unwrap();
+assert_eq!(i.to_bytes_be(), (Sign::Minus, vec![4, 101]));
+
source

pub fn to_bytes_le(&self) -> (Sign, Vec<u8, Global>)

Returns the sign and the byte representation of the BigInt in little-endian byte order.

+
Examples
+
use num_bigint::{ToBigInt, Sign};
+
+let i = -1125.to_bigint().unwrap();
+assert_eq!(i.to_bytes_le(), (Sign::Minus, vec![101, 4]));
+
source

pub fn to_u32_digits(&self) -> (Sign, Vec<u32, Global>)

Returns the sign and the u32 digits representation of the BigInt ordered least +significant digit first.

+
Examples
+
use num_bigint::{BigInt, Sign};
+
+assert_eq!(BigInt::from(-1125).to_u32_digits(), (Sign::Minus, vec![1125]));
+assert_eq!(BigInt::from(4294967295u32).to_u32_digits(), (Sign::Plus, vec![4294967295]));
+assert_eq!(BigInt::from(4294967296u64).to_u32_digits(), (Sign::Plus, vec![0, 1]));
+assert_eq!(BigInt::from(-112500000000i64).to_u32_digits(), (Sign::Minus, vec![830850304, 26]));
+assert_eq!(BigInt::from(112500000000i64).to_u32_digits(), (Sign::Plus, vec![830850304, 26]));
+
source

pub fn to_u64_digits(&self) -> (Sign, Vec<u64, Global>)

Returns the sign and the u64 digits representation of the BigInt ordered least +significant digit first.

+
Examples
+
use num_bigint::{BigInt, Sign};
+
+assert_eq!(BigInt::from(-1125).to_u64_digits(), (Sign::Minus, vec![1125]));
+assert_eq!(BigInt::from(4294967295u32).to_u64_digits(), (Sign::Plus, vec![4294967295]));
+assert_eq!(BigInt::from(4294967296u64).to_u64_digits(), (Sign::Plus, vec![4294967296]));
+assert_eq!(BigInt::from(-112500000000i64).to_u64_digits(), (Sign::Minus, vec![112500000000]));
+assert_eq!(BigInt::from(112500000000i64).to_u64_digits(), (Sign::Plus, vec![112500000000]));
+assert_eq!(BigInt::from(1u128 << 64).to_u64_digits(), (Sign::Plus, vec![0, 1]));
+
source

pub fn iter_u32_digits(&self) -> U32Digits<'_>

Returns an iterator of u32 digits representation of the BigInt ordered least +significant digit first.

+
Examples
+
use num_bigint::BigInt;
+
+assert_eq!(BigInt::from(-1125).iter_u32_digits().collect::<Vec<u32>>(), vec![1125]);
+assert_eq!(BigInt::from(4294967295u32).iter_u32_digits().collect::<Vec<u32>>(), vec![4294967295]);
+assert_eq!(BigInt::from(4294967296u64).iter_u32_digits().collect::<Vec<u32>>(), vec![0, 1]);
+assert_eq!(BigInt::from(-112500000000i64).iter_u32_digits().collect::<Vec<u32>>(), vec![830850304, 26]);
+assert_eq!(BigInt::from(112500000000i64).iter_u32_digits().collect::<Vec<u32>>(), vec![830850304, 26]);
+
source

pub fn iter_u64_digits(&self) -> U64Digits<'_>

Returns an iterator of u64 digits representation of the BigInt ordered least +significant digit first.

+
Examples
+
use num_bigint::BigInt;
+
+assert_eq!(BigInt::from(-1125).iter_u64_digits().collect::<Vec<u64>>(), vec![1125u64]);
+assert_eq!(BigInt::from(4294967295u32).iter_u64_digits().collect::<Vec<u64>>(), vec![4294967295u64]);
+assert_eq!(BigInt::from(4294967296u64).iter_u64_digits().collect::<Vec<u64>>(), vec![4294967296u64]);
+assert_eq!(BigInt::from(-112500000000i64).iter_u64_digits().collect::<Vec<u64>>(), vec![112500000000u64]);
+assert_eq!(BigInt::from(112500000000i64).iter_u64_digits().collect::<Vec<u64>>(), vec![112500000000u64]);
+assert_eq!(BigInt::from(1u128 << 64).iter_u64_digits().collect::<Vec<u64>>(), vec![0, 1]);
+
source

pub fn to_signed_bytes_be(&self) -> Vec<u8, Global>

Returns the two’s-complement byte representation of the BigInt in big-endian byte order.

+
Examples
+
use num_bigint::ToBigInt;
+
+let i = -1125.to_bigint().unwrap();
+assert_eq!(i.to_signed_bytes_be(), vec![251, 155]);
+
source

pub fn to_signed_bytes_le(&self) -> Vec<u8, Global>

Returns the two’s-complement byte representation of the BigInt in little-endian byte order.

+
Examples
+
use num_bigint::ToBigInt;
+
+let i = -1125.to_bigint().unwrap();
+assert_eq!(i.to_signed_bytes_le(), vec![155, 251]);
+
source

pub fn to_str_radix(&self, radix: u32) -> String

Returns the integer formatted as a string in the given radix. +radix must be in the range 2...36.

+
Examples
+
use num_bigint::BigInt;
+
+let i = BigInt::parse_bytes(b"ff", 16).unwrap();
+assert_eq!(i.to_str_radix(16), "ff");
+
source

pub fn to_radix_be(&self, radix: u32) -> (Sign, Vec<u8, Global>)

Returns the integer in the requested base in big-endian digit order. +The output is not given in a human readable alphabet but as a zero +based u8 number. +radix must be in the range 2...256.

+
Examples
+
use num_bigint::{BigInt, Sign};
+
+assert_eq!(BigInt::from(-0xFFFFi64).to_radix_be(159),
+           (Sign::Minus, vec![2, 94, 27]));
+// 0xFFFF = 65535 = 2*(159^2) + 94*159 + 27
+
source

pub fn to_radix_le(&self, radix: u32) -> (Sign, Vec<u8, Global>)

Returns the integer in the requested base in little-endian digit order. +The output is not given in a human readable alphabet but as a zero +based u8 number. +radix must be in the range 2...256.

+
Examples
+
use num_bigint::{BigInt, Sign};
+
+assert_eq!(BigInt::from(-0xFFFFi64).to_radix_le(159),
+           (Sign::Minus, vec![27, 94, 2]));
+// 0xFFFF = 65535 = 27 + 94*159 + 2*(159^2)
+
source

pub fn sign(&self) -> Sign

Returns the sign of the BigInt as a Sign.

+
Examples
+
use num_bigint::{BigInt, Sign};
+use num_traits::Zero;
+
+assert_eq!(BigInt::from(1234).sign(), Sign::Plus);
+assert_eq!(BigInt::from(-4321).sign(), Sign::Minus);
+assert_eq!(BigInt::zero().sign(), Sign::NoSign);
+
source

pub fn magnitude(&self) -> &BigUint

Returns the magnitude of the BigInt as a BigUint.

+
Examples
+
use num_bigint::{BigInt, BigUint};
+use num_traits::Zero;
+
+assert_eq!(BigInt::from(1234).magnitude(), &BigUint::from(1234u32));
+assert_eq!(BigInt::from(-4321).magnitude(), &BigUint::from(4321u32));
+assert!(BigInt::zero().magnitude().is_zero());
+
source

pub fn bits(&self) -> u64

Determines the fewest bits necessary to express the BigInt, +not including the sign.

+
source

pub fn to_biguint(&self) -> Option<BigUint>

Converts this BigInt into a BigUint, if it’s not negative.

+
source

pub fn checked_add(&self, v: &BigInt) -> Option<BigInt>

source

pub fn checked_sub(&self, v: &BigInt) -> Option<BigInt>

source

pub fn checked_mul(&self, v: &BigInt) -> Option<BigInt>

source

pub fn checked_div(&self, v: &BigInt) -> Option<BigInt>

source

pub fn pow(&self, exponent: u32) -> BigInt

Returns self ^ exponent.

+
source

pub fn modpow(&self, exponent: &BigInt, modulus: &BigInt) -> BigInt

Returns (self ^ exponent) mod modulus

+

Note that this rounds like mod_floor, not like the % operator, +which makes a difference when given a negative self or modulus. +The result will be in the interval [0, modulus) for modulus > 0, +or in the interval (modulus, 0] for modulus < 0

+

Panics if the exponent is negative or the modulus is zero.

+
source

pub fn sqrt(&self) -> BigInt

Returns the truncated principal square root of self – +see num_integer::Roots::sqrt().

+
source

pub fn cbrt(&self) -> BigInt

Returns the truncated principal cube root of self – +see num_integer::Roots::cbrt().

+
source

pub fn nth_root(&self, n: u32) -> BigInt

Returns the truncated principal nth root of self – +See num_integer::Roots::nth_root().

+
source

pub fn trailing_zeros(&self) -> Option<u64>

Returns the number of least-significant bits that are zero, +or None if the entire number is zero.

+
source

pub fn bit(&self, bit: u64) -> bool

Returns whether the bit in position bit is set, +using the two’s complement for negative numbers

+

Trait Implementations§

source§

impl Deref for HALF_PRIME

§

type Target = BigInt

The resulting type after dereferencing.
source§

fn deref(&self) -> &BigInt

Dereferences the value.
source§

impl LazyStatic for HALF_PRIME

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere + T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere + T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> Twhere + Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>where + Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>where + Self: Display,

Causes self to use its Display implementation when +Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>where + Self: LowerExp,

Causes self to use its LowerExp implementation when +Debug-formatted.
§

fn fmt_lower_hex(self) -> FmtLowerHex<Self>where + Self: LowerHex,

Causes self to use its LowerHex implementation when +Debug-formatted.
§

fn fmt_octal(self) -> FmtOctal<Self>where + Self: Octal,

Causes self to use its Octal implementation when Debug-formatted.
§

fn fmt_pointer(self) -> FmtPointer<Self>where + Self: Pointer,

Causes self to use its Pointer implementation when +Debug-formatted.
§

fn fmt_upper_exp(self) -> FmtUpperExp<Self>where + Self: UpperExp,

Causes self to use its UpperExp implementation when +Debug-formatted.
§

fn fmt_upper_hex(self) -> FmtUpperHex<Self>where + Self: UpperHex,

Causes self to use its UpperHex implementation when +Debug-formatted.
§

fn fmt_list(self) -> FmtList<Self>where + &'a Self: for<'a> IntoIterator,

Formats each item in a sequence. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

+
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an +Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere + U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

+

That is, this conversion is whatever the implementation of +From<T> for U chooses to do.

+
§

impl<T> Pipe for Twhere + T: ?Sized,

§

fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere + Self: Sized,

Pipes by value. This is generally the method you want to use. Read more
§

fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere + R: 'a,

Borrows self and passes that borrow into the pipe function. Read more
§

fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere + R: 'a,

Mutably borrows self and passes that borrow into the pipe function. Read more
§

fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere + Self: Borrow<B>, + B: 'a + ?Sized, + R: 'a,

Borrows self, then passes self.borrow() into the pipe function. Read more
§

fn pipe_borrow_mut<'a, B, R>( + &'a mut self, + func: impl FnOnce(&'a mut B) -> R +) -> Rwhere + Self: BorrowMut<B>, + B: 'a + ?Sized, + R: 'a,

Mutably borrows self, then passes self.borrow_mut() into the pipe +function. Read more
§

fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere + Self: AsRef<U>, + U: 'a + ?Sized, + R: 'a,

Borrows self, then passes self.as_ref() into the pipe function.
§

fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere + Self: AsMut<U>, + U: 'a + ?Sized, + R: 'a,

Mutably borrows self, then passes self.as_mut() into the pipe +function.
§

fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> Rwhere + Self: Deref<Target = T>, + T: 'a + ?Sized, + R: 'a,

Borrows self, then passes self.deref() into the pipe function.
§

fn pipe_deref_mut<'a, T, R>( + &'a mut self, + func: impl FnOnce(&'a mut T) -> R +) -> Rwhere + Self: DerefMut<Target = T> + Deref, + T: 'a + ?Sized, + R: 'a,

Mutably borrows self, then passes self.deref_mut() into the pipe +function.
source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
§

impl<T0, T1, E, TRewriter> SemanticRewriter<(T0, T1), E> for TRewriterwhere + TRewriter: SemanticRewriter<T0, E> + SemanticRewriter<T1, E>,

§

fn rewrite(&mut self, value: (T0, T1)) -> Result<(T0, T1), E>

§

impl<T, E, TRewriter> SemanticRewriter<Box<T, Global>, E> for TRewriterwhere + T: Clone, + TRewriter: SemanticRewriter<T, E>,

§

fn rewrite(&mut self, value: Box<T, Global>) -> Result<Box<T, Global>, E>

§

impl<K, V, E, TRewriter> SemanticRewriter<HashMap<K, V, RandomState>, E> for TRewriterwhere + K: Eq + Hash, + TRewriter: SemanticRewriter<K, E> + SemanticRewriter<V, E>,

§

fn rewrite( + &mut self, + value: HashMap<K, V, RandomState> +) -> Result<HashMap<K, V, RandomState>, E>

§

impl<T, E, TRewriter> SemanticRewriter<Option<T>, E> for TRewriterwhere + TRewriter: SemanticRewriter<T, E>,

§

fn rewrite(&mut self, value: Option<T>) -> Result<Option<T>, E>

§

impl<T, E, TRewriter, E2> SemanticRewriter<Result<T, E2>, E> for TRewriterwhere + TRewriter: SemanticRewriter<T, E>,

§

fn rewrite(&mut self, value: Result<T, E2>) -> Result<Result<T, E2>, E>

§

impl<T, E, TRewriter> SemanticRewriter<Vec<T, Global>, E> for TRewriterwhere + TRewriter: SemanticRewriter<T, E>,

§

fn rewrite(&mut self, value: Vec<T, Global>) -> Result<Vec<T, Global>, E>

§

impl<T, E, TRewriter> SemanticRewriter<VecDeque<T, Global>, E> for TRewriterwhere + TRewriter: SemanticRewriter<T, E>,

§

fn rewrite( + &mut self, + value: VecDeque<T, Global> +) -> Result<VecDeque<T, Global>, E>

§

impl<T> Tap for T

§

fn tap(self, func: impl FnOnce(&Self)) -> Self

Immutable access to a value. Read more
§

fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

Mutable access to a value. Read more
§

fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere + Self: Borrow<B>, + B: ?Sized,

Immutable access to the Borrow<B> of a value. Read more
§

fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere + Self: BorrowMut<B>, + B: ?Sized,

Mutable access to the BorrowMut<B> of a value. Read more
§

fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere + Self: AsRef<R>, + R: ?Sized,

Immutable access to the AsRef<R> view of a value. Read more
§

fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere + Self: AsMut<R>, + R: ?Sized,

Mutable access to the AsMut<R> view of a value. Read more
§

fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere + Self: Deref<Target = T>, + T: ?Sized,

Immutable access to the Deref::Target of a value. Read more
§

fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

Mutable access to the Deref::Target of a value. Read more
§

fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

Calls .tap() only in debug builds, and is erased in release builds.
§

fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

Calls .tap_mut() only in debug builds, and is erased in release +builds.
§

fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere + Self: Borrow<B>, + B: ?Sized,

Calls .tap_borrow() only in debug builds, and is erased in release +builds.
§

fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere + Self: BorrowMut<B>, + B: ?Sized,

Calls .tap_borrow_mut() only in debug builds, and is erased in release +builds.
§

fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere + Self: AsRef<R>, + R: ?Sized,

Calls .tap_ref() only in debug builds, and is erased in release +builds.
§

fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere + Self: AsMut<R>, + R: ?Sized,

Calls .tap_ref_mut() only in debug builds, and is erased in release +builds.
§

fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Selfwhere + Self: Deref<Target = T>, + T: ?Sized,

Calls .tap_deref() only in debug builds, and is erased in release +builds.
§

fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere + Self: DerefMut<Target = T> + Deref, + T: ?Sized,

Calls .tap_deref_mut() only in debug builds, and is erased in release +builds.
§

impl<T> TryConv for T

§

fn try_conv<T>(self) -> Result<T, Self::Error>where + Self: TryInto<T>,

Attempts to convert self into T using TryInto<T>. Read more
source§

impl<T, U> TryFrom<U> for Twhere + U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere + U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> Upcast<T> for Twhere + T: ?Sized,

§

fn upcast(&self) -> &T

§

impl<T> UpcastMut<T> for Twhere + T: ?Sized,

§

fn upcast_mut(&mut self) -> &mut T

§

impl<V, T> VZip<V> for Twhere + V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where + S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
\ No newline at end of file diff --git a/cairo_native/types/felt252/struct.PRIME.html b/cairo_native/types/felt252/struct.PRIME.html index 61f05f052..b1645c47d 100644 --- a/cairo_native/types/felt252/struct.PRIME.html +++ b/cairo_native/types/felt252/struct.PRIME.html @@ -1,4 +1,4 @@ -PRIME in cairo_native::types::felt252 - Rust
pub struct PRIME { /* private fields */ }
Expand description

The felt252 prime modulo.

+PRIME in cairo_native::types::felt252 - Rust
pub struct PRIME { /* private fields */ }
Expand description

The felt252 prime modulo.

Methods from Deref<Target = BigUint>§

source

pub fn to_bytes_be(&self) -> Vec<u8, Global>

Returns the byte representation of the BigUint in big-endian byte order.

Examples
use num_bigint::BigUint;
@@ -91,7 +91,7 @@ 
Examples
source

pub fn trailing_ones(&self) -> u64

Returns the number of least-significant bits that are ones.

source

pub fn count_ones(&self) -> u64

Returns the number of one bits.

source

pub fn bit(&self, bit: u64) -> bool

Returns whether the bit in the given position is set

-

Trait Implementations§

source§

impl Deref for PRIME

§

type Target = BigUint

The resulting type after dereferencing.
source§

fn deref(&self) -> &BigUint

Dereferences the value.
source§

impl LazyStatic for PRIME

Auto Trait Implementations§

§

impl RefUnwindSafe for PRIME

§

impl Send for PRIME

§

impl Sync for PRIME

§

impl Unpin for PRIME

§

impl UnwindSafe for PRIME

Blanket Implementations§

source§

impl<T> Any for Twhere +

Trait Implementations§

source§

impl Deref for PRIME

§

type Target = BigUint

The resulting type after dereferencing.
source§

fn deref(&self) -> &BigUint

Dereferences the value.
source§

impl LazyStatic for PRIME

Auto Trait Implementations§

§

impl RefUnwindSafe for PRIME

§

impl Send for PRIME

§

impl Sync for PRIME

§

impl Unpin for PRIME

§

impl UnwindSafe for PRIME

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> Twhere diff --git a/cairo_native/types/felt252_dict/index.html b/cairo_native/types/felt252_dict/index.html index ba4a3d4c6..041448290 100644 --- a/cairo_native/types/felt252_dict/index.html +++ b/cairo_native/types/felt252_dict/index.html @@ -1,4 +1,4 @@ -cairo_native::types::felt252_dict - Rust
Expand description

felt252 dictionary type

+cairo_native::types::felt252_dict - Rust
Expand description

Felt dictionary type

A key value storage for values whose type implement Copy. The key is always a felt.

This type is represented as a pointer to a heap allocated Rust hashmap, interacted through the runtime functions to insert and get elements.

diff --git a/cairo_native/types/felt252_dict_entry/index.html b/cairo_native/types/felt252_dict_entry/index.html index 1a409a2a5..c112f6c5a 100644 --- a/cairo_native/types/felt252_dict_entry/index.html +++ b/cairo_native/types/felt252_dict_entry/index.html @@ -1,4 +1,4 @@ -cairo_native::types::felt252_dict_entry - Rust
Expand description

felt252 dictionary entry type

+cairo_native::types::felt252_dict_entry - Rust
Expand description

Felt dictionary entry type

The entry type returning when getting a value from a dictionary.

It is represented as the following struct:

diff --git a/cairo_native/types/index.html b/cairo_native/types/index.html index cbe7061f4..22faa3371 100644 --- a/cairo_native/types/index.html +++ b/cairo_native/types/index.html @@ -1,3 +1,3 @@ -cairo_native::types - Rust

Module cairo_native::types

source ·
Expand description

Compiler type infrastructure

+cairo_native::types - Rust

Module cairo_native::types

source ·
Expand description

Compiler type infrastructure

Contains type generation stuff (aka. conversion from Sierra to MLIR types).

-

Modules

Structs

Traits

  • Generation of MLIR types from their Sierra counterparts.
\ No newline at end of file +

Modules

Structs

Traits

  • Generation of MLIR types from their Sierra counterparts.
\ No newline at end of file diff --git a/cairo_native/types/squashed_felt252_dict/index.html b/cairo_native/types/squashed_felt252_dict/index.html index 3b636c18d..70e9d54fd 100644 --- a/cairo_native/types/squashed_felt252_dict/index.html +++ b/cairo_native/types/squashed_felt252_dict/index.html @@ -1,3 +1,3 @@ -cairo_native::types::squashed_felt252_dict - Rust
Expand description

Squashed felt252 dictionary type

+cairo_native::types::squashed_felt252_dict - Rust
Expand description

Functions

  • Build the MLIR type.
\ No newline at end of file diff --git a/cairo_native/types/struct.WithSelf.html b/cairo_native/types/struct.WithSelf.html index 6dddc859a..554f0ade6 100644 --- a/cairo_native/types/struct.WithSelf.html +++ b/cairo_native/types/struct.WithSelf.html @@ -1,8 +1,8 @@ -WithSelf in cairo_native::types - Rust
pub struct WithSelf<'a, T> { /* private fields */ }

Implementations§

source§

impl<'a, T> WithSelf<'a, T>

source

pub fn new(self_ty: &'a ConcreteTypeId, inner: &'a T) -> Self

source

pub fn self_ty(&self) -> &ConcreteTypeId

Trait Implementations§

source§

impl<'a, T> AsRef<T> for WithSelf<'a, T>

source§

fn as_ref(&self) -> &T

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<'a, T: Clone> Clone for WithSelf<'a, T>

source§

fn clone(&self) -> WithSelf<'a, T>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'a, T: Debug> Debug for WithSelf<'a, T>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'a, T> Deref for WithSelf<'a, T>

§

type Target = T

The resulting type after dereferencing.
source§

fn deref(&self) -> &T

Dereferences the value.
source§

impl<'a, T: Hash> Hash for WithSelf<'a, T>

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)where +WithSelf in cairo_native::types - Rust
pub struct WithSelf<'a, T> { /* private fields */ }

Implementations§

source§

impl<'a, T> WithSelf<'a, T>

source

pub fn new(self_ty: &'a ConcreteTypeId, inner: &'a T) -> Self

source

pub fn self_ty(&self) -> &ConcreteTypeId

Trait Implementations§

source§

impl<'a, T> AsRef<T> for WithSelf<'a, T>

source§

fn as_ref(&self) -> &T

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<'a, T: Clone> Clone for WithSelf<'a, T>

source§

fn clone(&self) -> WithSelf<'a, T>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'a, T: Debug> Debug for WithSelf<'a, T>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'a, T> Deref for WithSelf<'a, T>

§

type Target = T

The resulting type after dereferencing.
source§

fn deref(&self) -> &T

Dereferences the value.
source§

impl<'a, T: Hash> Hash for WithSelf<'a, T>

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)where H: Hasher, - Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl<'a, T: PartialEq> PartialEq<WithSelf<'a, T>> for WithSelf<'a, T>

source§

fn eq(&self, other: &WithSelf<'a, T>) -> bool

This method tests for self and other values to be equal, and is used + Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl<'a, T: PartialEq> PartialEq<WithSelf<'a, T>> for WithSelf<'a, T>

source§

fn eq(&self, other: &WithSelf<'a, T>) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
source§

impl<'a, T: Eq> Eq for WithSelf<'a, T>

source§

impl<'a, T> StructuralEq for WithSelf<'a, T>

source§

impl<'a, T> StructuralPartialEq for WithSelf<'a, T>

Auto Trait Implementations§

§

impl<'a, T> RefUnwindSafe for WithSelf<'a, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<'a, T: Eq> Eq for WithSelf<'a, T>

source§

impl<'a, T> StructuralEq for WithSelf<'a, T>

source§

impl<'a, T> StructuralPartialEq for WithSelf<'a, T>

Auto Trait Implementations§

§

impl<'a, T> RefUnwindSafe for WithSelf<'a, T>where T: RefUnwindSafe,

§

impl<'a, T> Send for WithSelf<'a, T>where T: Sync,

§

impl<'a, T> Sync for WithSelf<'a, T>where T: Sync,

§

impl<'a, T> Unpin for WithSelf<'a, T>

§

impl<'a, T> UnwindSafe for WithSelf<'a, T>where @@ -29,9 +29,7 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Qwhere - Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>where diff --git a/cairo_native/types/struct/index.html b/cairo_native/types/struct/index.html index 89ed09a0a..d00a4de34 100644 --- a/cairo_native/types/struct/index.html +++ b/cairo_native/types/struct/index.html @@ -7,7 +7,7 @@ U16: u16, U32: u32, U64: u64, - Felt: felt252, + Felt: Felt, }

IndexTypeDescription
diff --git a/cairo_native/types/trait.TypeBuilder.html b/cairo_native/types/trait.TypeBuilder.html index 1b537dd07..91fb16861 100644 --- a/cairo_native/types/trait.TypeBuilder.html +++ b/cairo_native/types/trait.TypeBuilder.html @@ -58,19 +58,19 @@ helper: &LibfuncHelper<'ctx, 'this>, metadata: &mut MetadataStorage, self_ty: &ConcreteTypeId -) -> Result<(), Self::Error>

Implementations on Foreign Types§

source§

impl<TType, TLibfunc> TypeBuilder<TType, TLibfunc> for CoreTypeConcretewhere +) -> Result<(), Self::Error>

Implementations on Foreign Types§

source§

impl<TType, TLibfunc> TypeBuilder<TType, TLibfunc> for CoreTypeConcretewhere TType: 'static + GenericType<Concrete = Self>, - TLibfunc: 'static + GenericLibfunc<Concrete = CoreConcreteLibfunc>,

§

type Error = Error

source§

fn build<'ctx>( + TLibfunc: 'static + GenericLibfunc<Concrete = CoreConcreteLibfunc>,

§

type Error = Error

source§

fn build<'ctx>( &self, context: &'ctx Context, module: &Module<'ctx>, registry: &ProgramRegistry<TType, TLibfunc>, metadata: &mut MetadataStorage, self_ty: &ConcreteTypeId -) -> Result<Type<'ctx>, Self::Error>

source§

fn layout( +) -> Result<Type<'ctx>, Self::Error>

source§

fn layout( &self, registry: &ProgramRegistry<TType, TLibfunc> -) -> Result<Layout, Self::Error>

source§

fn integer_width(&self) -> Option<usize>

source§

fn variants(&self) -> Option<&[ConcreteTypeId]>

source§

fn build_drop<'ctx, 'this>( +) -> Result<Layout, Self::Error>

source§

fn integer_width(&self) -> Option<usize>

source§

fn variants(&self) -> Option<&[ConcreteTypeId]>

source§

fn build_drop<'ctx, 'this>( &self, context: &'ctx Context, registry: &ProgramRegistry<TType, TLibfunc>, diff --git a/cairo_native/utils/fn.u32_vec_to_felt.html b/cairo_native/utils/fn.u32_vec_to_felt.html index ded4ded2c..74291a40b 100644 --- a/cairo_native/utils/fn.u32_vec_to_felt.html +++ b/cairo_native/utils/fn.u32_vec_to_felt.html @@ -1,2 +1,2 @@ -u32_vec_to_felt in cairo_native::utils - Rust
pub fn u32_vec_to_felt(u32_limbs: &[u32]) -> Felt252
Expand description

Converts a u32 slice into a Felt252

+u32_vec_to_felt in cairo_native::utils - Rust
pub fn u32_vec_to_felt(u32_limbs: &[u32]) -> Felt
Expand description

Converts a u32 slice into a Felt

\ No newline at end of file diff --git a/cairo_native/utils/index.html b/cairo_native/utils/index.html index f1d6919e5..e6fc30f2f 100644 --- a/cairo_native/utils/index.html +++ b/cairo_native/utils/index.html @@ -1 +1 @@ -cairo_native::utils - Rust

Module cairo_native::utils

source ·
Expand description

Structs

Traits

Functions

\ No newline at end of file +cairo_native::utils - Rust

Module cairo_native::utils

source ·
Expand description

Structs

Traits

Functions

\ No newline at end of file diff --git a/cairo_native/utils/struct.LayoutError.html b/cairo_native/utils/struct.LayoutError.html index 2301867b9..15405b7db 100644 --- a/cairo_native/utils/struct.LayoutError.html +++ b/cairo_native/utils/struct.LayoutError.html @@ -1,4 +1,4 @@ -LayoutError in cairo_native::utils - Rust
pub struct LayoutError;

Trait Implementations§

source§

impl Clone for LayoutError

source§

fn clone(&self) -> LayoutError

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for LayoutError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for LayoutError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for LayoutError

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<LayoutError> for ErrorImpl

source§

fn from(source: LayoutError) -> Self

Converts to this type from the input type.
source§

impl From<LayoutError> for ErrorImpl

source§

fn from(source: LayoutError) -> Self

Converts to this type from the input type.
source§

impl PartialEq<LayoutError> for LayoutError

source§

fn eq(&self, other: &LayoutError) -> bool

This method tests for self and other values to be equal, and is used +LayoutError in cairo_native::utils - Rust
pub struct LayoutError;

Trait Implementations§

source§

impl Clone for LayoutError

source§

fn clone(&self) -> LayoutError

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for LayoutError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for LayoutError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for LayoutError

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<LayoutError> for ErrorImpl

source§

fn from(source: LayoutError) -> Self

Converts to this type from the input type.
source§

impl From<LayoutError> for ErrorImpl

source§

fn from(source: LayoutError) -> Self

Converts to this type from the input type.
source§

impl PartialEq<LayoutError> for LayoutError

source§

fn eq(&self, other: &LayoutError) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Eq for LayoutError

source§

impl StructuralEq for LayoutError

source§

impl StructuralPartialEq for LayoutError

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere @@ -11,9 +11,7 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Qwhere - Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>where diff --git a/cairo_native/values/enum.JITValue.html b/cairo_native/values/enum.JITValue.html index 2a3f92d48..1df2edada 100644 --- a/cairo_native/values/enum.JITValue.html +++ b/cairo_native/values/enum.JITValue.html @@ -1,5 +1,5 @@ -JITValue in cairo_native::values - Rust
pub enum JITValue {
-    Felt252(Felt252),
+JITValue in cairo_native::values - Rust
pub enum JITValue {
+
Show 15 variants Felt252(Felt), Array(Vec<Self>), Struct { fields: Vec<Self>, @@ -11,7 +11,7 @@ debug_name: Option<String>, }, Felt252Dict { - value: HashMap<Felt252, Self>, + value: HashMap<Felt, Self>, debug_name: Option<String>, }, Uint8(u8), @@ -19,14 +19,17 @@ Uint32(u32), Uint64(u64), Uint128(u128), - EcPoint(Felt252, Felt252), - EcState(Felt252, Felt252, Felt252, Felt252), -}
Expand description

A JITValue is a value that can be passed to the JIT engine as an argument or received as a result.

+ Sint8(i8), + Sint16(i16), + Sint32(i32), + EcPoint(Felt, Felt), + EcState(Felt, Felt, Felt, Felt), +
}
Expand description

A JITValue is a value that can be passed to the JIT engine as an argument or received as a result.

They map to the cairo/sierra types.

The debug_name field on some variants is Some when receiving a JITValue as a result.

-

Variants§

§

Felt252(Felt252)

§

Array(Vec<Self>)

all elements need to be same type

-
§

Struct

Fields

§fields: Vec<Self>
§debug_name: Option<String>
§

Enum

Fields

§tag: usize
§value: Box<Self>
§debug_name: Option<String>
§

Felt252Dict

Fields

§value: HashMap<Felt252, Self>
§debug_name: Option<String>
§

Uint8(u8)

§

Uint16(u16)

§

Uint32(u32)

§

Uint64(u64)

§

Uint128(u128)

§

EcPoint(Felt252, Felt252)

§

EcState(Felt252, Felt252, Felt252, Felt252)

Implementations§

source§

impl JITValue

source

pub fn felt_str(value: &str) -> Self

String to felt

-

Trait Implementations§

source§

impl Clone for JITValue

source§

fn clone(&self) -> JITValue

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for JITValue

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<T: Into<JITValue> + Clone> From<&[T]> for JITValue

source§

fn from(value: &[T]) -> Self

Converts to this type from the input type.
source§

impl<T: Into<JITValue>, const N: usize> From<[T; N]> for JITValue

source§

fn from(value: [T; N]) -> Self

Converts to this type from the input type.
source§

impl From<Felt252> for JITValue

source§

fn from(value: Felt252) -> Self

Converts to this type from the input type.
source§

impl<T: Into<JITValue>> From<Vec<T, Global>> for JITValue

source§

fn from(value: Vec<T>) -> Self

Converts to this type from the input type.
source§

impl From<u128> for JITValue

source§

fn from(value: u128) -> Self

Converts to this type from the input type.
source§

impl From<u16> for JITValue

source§

fn from(value: u16) -> Self

Converts to this type from the input type.
source§

impl From<u32> for JITValue

source§

fn from(value: u32) -> Self

Converts to this type from the input type.
source§

impl From<u64> for JITValue

source§

fn from(value: u64) -> Self

Converts to this type from the input type.
source§

impl From<u8> for JITValue

source§

fn from(value: u8) -> Self

Converts to this type from the input type.
source§

impl PartialEq<JITValue> for JITValue

source§

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used +

Variants§

§

Felt252(Felt)

§

Array(Vec<Self>)

all elements need to be same type

+
§

Struct

Fields

§fields: Vec<Self>
§debug_name: Option<String>
§

Enum

Fields

§tag: usize
§value: Box<Self>
§debug_name: Option<String>
§

Felt252Dict

Fields

§value: HashMap<Felt, Self>
§debug_name: Option<String>
§

Uint8(u8)

§

Uint16(u16)

§

Uint32(u32)

§

Uint64(u64)

§

Uint128(u128)

§

Sint8(i8)

§

Sint16(i16)

§

Sint32(i32)

§

EcPoint(Felt, Felt)

§

EcState(Felt, Felt, Felt, Felt)

Implementations§

source§

impl JITValue

source

pub fn felt_str(value: &str) -> Self

String to felt

+

Trait Implementations§

source§

impl Clone for JITValue

source§

fn clone(&self) -> JITValue

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for JITValue

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<T: Into<JITValue> + Clone> From<&[T]> for JITValue

source§

fn from(value: &[T]) -> Self

Converts to this type from the input type.
source§

impl<T: Into<JITValue>, const N: usize> From<[T; N]> for JITValue

source§

fn from(value: [T; N]) -> Self

Converts to this type from the input type.
source§

impl From<Felt> for JITValue

source§

fn from(value: Felt) -> Self

Converts to this type from the input type.
source§

impl<T: Into<JITValue>> From<Vec<T, Global>> for JITValue

source§

fn from(value: Vec<T>) -> Self

Converts to this type from the input type.
source§

impl From<i16> for JITValue

source§

fn from(value: i16) -> Self

Converts to this type from the input type.
source§

impl From<i32> for JITValue

source§

fn from(value: i32) -> Self

Converts to this type from the input type.
source§

impl From<i8> for JITValue

source§

fn from(value: i8) -> Self

Converts to this type from the input type.
source§

impl From<u128> for JITValue

source§

fn from(value: u128) -> Self

Converts to this type from the input type.
source§

impl From<u16> for JITValue

source§

fn from(value: u16) -> Self

Converts to this type from the input type.
source§

impl From<u32> for JITValue

source§

fn from(value: u32) -> Self

Converts to this type from the input type.
source§

impl From<u64> for JITValue

source§

fn from(value: u64) -> Self

Converts to this type from the input type.
source§

impl From<u8> for JITValue

source§

fn from(value: u8) -> Self

Converts to this type from the input type.
source§

impl PartialEq<JITValue> for JITValue

source§

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Eq for JITValue

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere @@ -39,9 +42,7 @@ Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Qwhere - Q: Eq + ?Sized, - K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>where + K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>where @@ -56,7 +57,7 @@ Debug-formatted.

§

fn fmt_upper_hex(self) -> FmtUpperHex<Self>where Self: UpperHex,

Causes self to use its UpperHex implementation when Debug-formatted.
§

fn fmt_list(self) -> FmtList<Self>where - &'a Self: for<'a> IntoIterator,

Formats each item in a sequence. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

+ &'a Self: for<'a> IntoIterator,

Formats each item in a sequence. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere diff --git a/cairo_native/values/index.html b/cairo_native/values/index.html index b8f2e1e15..414f58477 100644 --- a/cairo_native/values/index.html +++ b/cairo_native/values/index.html @@ -1,4 +1,4 @@ -cairo_native::values - Rust

Module cairo_native::values

source ·
Expand description

JIT params and return values de/serialization

+cairo_native::values - Rust

Module cairo_native::values

source ·
Expand description

JIT params and return values de/serialization

A Rusty interface to provide parameters to JIT calls.

Enums

  • A JITValue is a value that can be passed to the JIT engine as an argument or received as a result.

Traits

\ No newline at end of file diff --git a/cairo_native/values/trait.ValueBuilder.html b/cairo_native/values/trait.ValueBuilder.html index 3d15af867..8bddb4c54 100644 --- a/cairo_native/values/trait.ValueBuilder.html +++ b/cairo_native/values/trait.ValueBuilder.html @@ -1,10 +1,10 @@ -ValueBuilder in cairo_native::values - Rust
pub trait ValueBuilder {
+ValueBuilder in cairo_native::values - Rust
pub trait ValueBuilder {
     // Required method
     fn is_complex(&self) -> bool;
 }
Expand description

The ValueBuilder trait is implemented any de/serializable value, which is the TType generic.

-

Required Methods§

source

fn is_complex(&self) -> bool

Return whether the type is considered complex or simple.

+

Required Methods§

source

fn is_complex(&self) -> bool

Return whether the type is considered complex or simple.

Complex types are always passed by pointer (both as params and return values) and require a stack allocation. Examples of complex values include structs and enums, but not felts since LLVM considers them integers.

-

Implementations on Foreign Types§

source§

impl ValueBuilder for CoreTypeConcrete

Implementors§

\ No newline at end of file +

Implementations on Foreign Types§

source§

impl ValueBuilder for CoreTypeConcrete

Implementors§

\ No newline at end of file diff --git a/cairo_native_run/enum.StdioOrPath.html b/cairo_native_run/enum.StdioOrPath.html index 3bf7c1104..7b04e08f5 100644 --- a/cairo_native_run/enum.StdioOrPath.html +++ b/cairo_native_run/enum.StdioOrPath.html @@ -1,7 +1,7 @@ -StdioOrPath in cairo_native_run - Rust
pub(crate) enum StdioOrPath {
+StdioOrPath in cairo_native_run - Rust
pub(crate) enum StdioOrPath {
     Stdio,
     Path(PathBuf),
-}

Variants§

§

Stdio

§

Path(PathBuf)

Trait Implementations§

source§

impl Clone for StdioOrPath

source§

fn clone(&self) -> StdioOrPath

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for StdioOrPath

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere +}

Variants§

§

Stdio

§

Path(PathBuf)

Trait Implementations§

source§

impl Clone for StdioOrPath

source§

fn clone(&self) -> StdioOrPath

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for StdioOrPath

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> Twhere diff --git a/cairo_native_run/fn.load_program.html b/cairo_native_run/fn.load_program.html index cca0b129e..bcfafab58 100644 --- a/cairo_native_run/fn.load_program.html +++ b/cairo_native_run/fn.load_program.html @@ -1 +1 @@ -load_program in cairo_native_run - Rust
pub(crate) fn load_program(path: &Path) -> Result<Program, Box<dyn Error>>
\ No newline at end of file +load_program in cairo_native_run - Rust
pub(crate) fn load_program(path: &Path) -> Result<Program, Box<dyn Error>>
\ No newline at end of file diff --git a/cairo_native_run/fn.main.html b/cairo_native_run/fn.main.html index 7e7c2be11..410435732 100644 --- a/cairo_native_run/fn.main.html +++ b/cairo_native_run/fn.main.html @@ -1 +1 @@ -main in cairo_native_run - Rust

Function cairo_native_run::main

source ·
pub(crate) fn main() -> Result<(), Box<dyn Error>>
\ No newline at end of file +main in cairo_native_run - Rust

Function cairo_native_run::main

source ·
pub(crate) fn main() -> Result<(), Box<dyn Error>>
\ No newline at end of file diff --git a/cairo_native_run/fn.parse_entry_point.html b/cairo_native_run/fn.parse_entry_point.html index 932e539d0..073d32c9c 100644 --- a/cairo_native_run/fn.parse_entry_point.html +++ b/cairo_native_run/fn.parse_entry_point.html @@ -1 +1 @@ -parse_entry_point in cairo_native_run - Rust
pub(crate) fn parse_entry_point(input: &str) -> Result<FunctionId, Infallible>
\ No newline at end of file +parse_entry_point in cairo_native_run - Rust
pub(crate) fn parse_entry_point(input: &str) -> Result<FunctionId, Infallible>
\ No newline at end of file diff --git a/cairo_native_run/fn.parse_input.html b/cairo_native_run/fn.parse_input.html index 7789e7380..e7993ea83 100644 --- a/cairo_native_run/fn.parse_input.html +++ b/cairo_native_run/fn.parse_input.html @@ -1 +1 @@ -parse_input in cairo_native_run - Rust
pub(crate) fn parse_input(input: &str) -> Result<PathBuf, String>
\ No newline at end of file +parse_input in cairo_native_run - Rust
pub(crate) fn parse_input(input: &str) -> Result<PathBuf, String>
\ No newline at end of file diff --git a/cairo_native_run/fn.parse_io.html b/cairo_native_run/fn.parse_io.html index 9fceb845a..3f266afdc 100644 --- a/cairo_native_run/fn.parse_io.html +++ b/cairo_native_run/fn.parse_io.html @@ -1 +1 @@ -parse_io in cairo_native_run - Rust

Function cairo_native_run::parse_io

source ·
pub(crate) fn parse_io(input: &str) -> Result<StdioOrPath, String>
\ No newline at end of file +parse_io in cairo_native_run - Rust

Function cairo_native_run::parse_io

source ·
pub(crate) fn parse_io(input: &str) -> Result<StdioOrPath, String>
\ No newline at end of file diff --git a/cairo_native_run/index.html b/cairo_native_run/index.html index 7df109901..e845985fd 100644 --- a/cairo_native_run/index.html +++ b/cairo_native_run/index.html @@ -1 +1 @@ -cairo_native_run - Rust
\ No newline at end of file +cairo_native_run - Rust
\ No newline at end of file diff --git a/cairo_native_run/struct.CmdLine.html b/cairo_native_run/struct.CmdLine.html index 9d7410a6d..2728228a9 100644 --- a/cairo_native_run/struct.CmdLine.html +++ b/cairo_native_run/struct.CmdLine.html @@ -1,18 +1,18 @@ -CmdLine in cairo_native_run - Rust
pub(crate) struct CmdLine {
+CmdLine in cairo_native_run - Rust
pub(crate) struct CmdLine {
     pub(crate) input: PathBuf,
     pub(crate) entry_point: FunctionId,
     pub(crate) inputs: Option<StdioOrPath>,
     pub(crate) outputs: Option<StdioOrPath>,
     pub(crate) print_outputs: bool,
-}

Fields§

§input: PathBuf§entry_point: FunctionId§inputs: Option<StdioOrPath>§outputs: Option<StdioOrPath>§print_outputs: bool

Trait Implementations§

source§

impl Args for CmdLine

source§

fn group_id() -> Option<Id>

Report the [ArgGroup::id][crate::ArgGroup::id] for this set of arguments
source§

fn augment_args<'b>(__clap_app: Command) -> Command

Append to [Command] so it can instantiate Self. Read more
source§

fn augment_args_for_update<'b>(__clap_app: Command) -> Command

Append to [Command] so it can update self. Read more
source§

impl Clone for CmdLine

source§

fn clone(&self) -> CmdLine

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl CommandFactory for CmdLine

source§

fn command<'b>() -> Command

Build a [Command] that can instantiate Self. Read more
source§

fn command_for_update<'b>() -> Command

Build a [Command] that can update self. Read more
source§

impl Debug for CmdLine

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl FromArgMatches for CmdLine

source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn from_arg_matches_mut( +}

Fields§

§input: PathBuf§entry_point: FunctionId§inputs: Option<StdioOrPath>§outputs: Option<StdioOrPath>§print_outputs: bool

Trait Implementations§

source§

impl Args for CmdLine

source§

fn group_id() -> Option<Id>

Report the [ArgGroup::id][crate::ArgGroup::id] for this set of arguments
source§

fn augment_args<'b>(__clap_app: Command) -> Command

Append to [Command] so it can instantiate Self. Read more
source§

fn augment_args_for_update<'b>(__clap_app: Command) -> Command

Append to [Command] so it can update self. Read more
source§

impl Clone for CmdLine

source§

fn clone(&self) -> CmdLine

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl CommandFactory for CmdLine

source§

fn command<'b>() -> Command

Build a [Command] that can instantiate Self. Read more
source§

fn command_for_update<'b>() -> Command

Build a [Command] that can update self. Read more
source§

impl Debug for CmdLine

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl FromArgMatches for CmdLine

source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches -) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn update_from_arg_matches( +) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
source§

fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches -) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

fn update_from_arg_matches_mut( +) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches -) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

impl Parser for CmdLine

§

fn parse() -> Self

Parse from std::env::args_os(), exit on error
§

fn try_parse() -> Result<Self, Error<RichFormatter>>

Parse from std::env::args_os(), return Err on error.
§

fn parse_from<I, T>(itr: I) -> Selfwhere +) -> Result<(), Error>

Assign values from ArgMatches to self.
source§

impl Parser for CmdLine

§

fn parse() -> Self

Parse from std::env::args_os(), exit on error
§

fn try_parse() -> Result<Self, Error<RichFormatter>>

Parse from std::env::args_os(), return Err on error.
§

fn parse_from<I, T>(itr: I) -> Selfwhere I: IntoIterator<Item = T>, T: Into<OsString> + Clone,

Parse from iterator, exit on error
§

fn try_parse_from<I, T>(itr: I) -> Result<Self, Error<RichFormatter>>where I: IntoIterator<Item = T>, diff --git a/cairo_native_runtime/fn.cairo_native__alloc_dict.html b/cairo_native_runtime/fn.cairo_native__alloc_dict.html index eddaffceb..0bec64a37 100644 --- a/cairo_native_runtime/fn.cairo_native__alloc_dict.html +++ b/cairo_native_runtime/fn.cairo_native__alloc_dict.html @@ -1,4 +1,4 @@ -cairo_native__alloc_dict in cairo_native_runtime - Rust
#[no_mangle]
+cairo_native__alloc_dict in cairo_native_runtime - Rust
#[no_mangle]
 pub unsafe extern "C" fn cairo_native__alloc_dict() -> *mut c_void
Expand description

Allocates a new dictionary. Internally a rust hashmap: HashMap<[u8; 32], NonNull<()>

Safety

This function is intended to be called from MLIR, deals with pointers, and is therefore diff --git a/cairo_native_runtime/fn.cairo_native__dict_free.html b/cairo_native_runtime/fn.cairo_native__dict_free.html index 4b7ed310a..d92644999 100644 --- a/cairo_native_runtime/fn.cairo_native__dict_free.html +++ b/cairo_native_runtime/fn.cairo_native__dict_free.html @@ -1,4 +1,4 @@ -cairo_native__dict_free in cairo_native_runtime - Rust

#[no_mangle]
+cairo_native__dict_free in cairo_native_runtime - Rust
#[no_mangle]
 pub unsafe extern "C" fn cairo_native__dict_free(map: *mut c_void)
Expand description

Frees the dictionary.

Safety

This function is intended to be called from MLIR, deals with pointers, and is therefore diff --git a/cairo_native_runtime/fn.cairo_native__dict_get.html b/cairo_native_runtime/fn.cairo_native__dict_get.html index 61efe0610..e38fc9d83 100644 --- a/cairo_native_runtime/fn.cairo_native__dict_get.html +++ b/cairo_native_runtime/fn.cairo_native__dict_get.html @@ -1,4 +1,4 @@ -cairo_native__dict_get in cairo_native_runtime - Rust

#[no_mangle]
+cairo_native__dict_get in cairo_native_runtime - Rust
#[no_mangle]
 pub unsafe extern "C" fn cairo_native__dict_get(
     map: *mut c_void,
     key: &[u8; 32]
diff --git a/cairo_native_runtime/fn.cairo_native__dict_insert.html b/cairo_native_runtime/fn.cairo_native__dict_insert.html
index f575e0e69..582905eda 100644
--- a/cairo_native_runtime/fn.cairo_native__dict_insert.html
+++ b/cairo_native_runtime/fn.cairo_native__dict_insert.html
@@ -1,4 +1,4 @@
-cairo_native__dict_insert in cairo_native_runtime - Rust
#[no_mangle]
+cairo_native__dict_insert in cairo_native_runtime - Rust
#[no_mangle]
 pub unsafe extern "C" fn cairo_native__dict_insert(
     map: *mut c_void,
     key: &[u8; 32],
diff --git a/cairo_native_runtime/fn.cairo_native__libfunc__debug__print.html b/cairo_native_runtime/fn.cairo_native__libfunc__debug__print.html
index 98e81c5ea..0998a1fcf 100644
--- a/cairo_native_runtime/fn.cairo_native__libfunc__debug__print.html
+++ b/cairo_native_runtime/fn.cairo_native__libfunc__debug__print.html
@@ -1,4 +1,4 @@
-cairo_native__libfunc__debug__print in cairo_native_runtime - Rust
#[no_mangle]
+cairo_native__libfunc__debug__print in cairo_native_runtime - Rust
#[no_mangle]
 pub unsafe extern "C" fn cairo_native__libfunc__debug__print(
     target_fd: i32,
     data: *const [u8; 32],
diff --git a/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_point_from_x_nz.html b/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_point_from_x_nz.html
index 2a92082c4..9e9f025ee 100644
--- a/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_point_from_x_nz.html
+++ b/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_point_from_x_nz.html
@@ -1,4 +1,4 @@
-cairo_native__libfunc__ec__ec_point_from_x_nz in cairo_native_runtime - Rust
#[no_mangle]
+cairo_native__libfunc__ec__ec_point_from_x_nz in cairo_native_runtime - Rust
#[no_mangle]
 pub unsafe extern "C" fn cairo_native__libfunc__ec__ec_point_from_x_nz(
     point_ptr: NonNull<[[u8; 32]; 2]>
 ) -> bool
Expand description

Compute ec_point_from_x_nz(x) and store it.

diff --git a/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_point_try_new_nz.html b/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_point_try_new_nz.html index c959b12d3..50be2870f 100644 --- a/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_point_try_new_nz.html +++ b/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_point_try_new_nz.html @@ -1,4 +1,4 @@ -cairo_native__libfunc__ec__ec_point_try_new_nz in cairo_native_runtime - Rust
#[no_mangle]
+cairo_native__libfunc__ec__ec_point_try_new_nz in cairo_native_runtime - Rust
#[no_mangle]
 pub unsafe extern "C" fn cairo_native__libfunc__ec__ec_point_try_new_nz(
     point_ptr: NonNull<[[u8; 32]; 2]>
 ) -> bool
Expand description

Compute ec_point_try_new_nz(x).

diff --git a/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_state_add.html b/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_state_add.html index 7705a3428..0ebe3b80e 100644 --- a/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_state_add.html +++ b/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_state_add.html @@ -1,4 +1,4 @@ -cairo_native__libfunc__ec__ec_state_add in cairo_native_runtime - Rust
#[no_mangle]
+cairo_native__libfunc__ec__ec_state_add in cairo_native_runtime - Rust
#[no_mangle]
 pub unsafe extern "C" fn cairo_native__libfunc__ec__ec_state_add(
     state_ptr: NonNull<[[u8; 32]; 4]>,
     point_ptr: NonNull<[[u8; 32]; 2]>
diff --git a/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_state_add_mul.html b/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_state_add_mul.html
index 9d0f78764..36a743942 100644
--- a/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_state_add_mul.html
+++ b/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_state_add_mul.html
@@ -1,4 +1,4 @@
-cairo_native__libfunc__ec__ec_state_add_mul in cairo_native_runtime - Rust
#[no_mangle]
+cairo_native__libfunc__ec__ec_state_add_mul in cairo_native_runtime - Rust
#[no_mangle]
 pub unsafe extern "C" fn cairo_native__libfunc__ec__ec_state_add_mul(
     state_ptr: NonNull<[[u8; 32]; 4]>,
     scalar_ptr: NonNull<[u8; 32]>,
diff --git a/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_state_try_finalize_nz.html b/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_state_try_finalize_nz.html
index 2d9844943..0dd34f667 100644
--- a/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_state_try_finalize_nz.html
+++ b/cairo_native_runtime/fn.cairo_native__libfunc__ec__ec_state_try_finalize_nz.html
@@ -1,4 +1,4 @@
-cairo_native__libfunc__ec__ec_state_try_finalize_nz in cairo_native_runtime - Rust
#[no_mangle]
+cairo_native__libfunc__ec__ec_state_try_finalize_nz in cairo_native_runtime - Rust
#[no_mangle]
 pub unsafe extern "C" fn cairo_native__libfunc__ec__ec_state_try_finalize_nz(
     point_ptr: NonNull<[[u8; 32]; 2]>,
     state_ptr: NonNull<[[u8; 32]; 4]>
diff --git a/cairo_native_runtime/fn.cairo_native__libfunc__hades_permutation.html b/cairo_native_runtime/fn.cairo_native__libfunc__hades_permutation.html
index 433f34653..8baa1f6d6 100644
--- a/cairo_native_runtime/fn.cairo_native__libfunc__hades_permutation.html
+++ b/cairo_native_runtime/fn.cairo_native__libfunc__hades_permutation.html
@@ -1,4 +1,4 @@
-cairo_native__libfunc__hades_permutation in cairo_native_runtime - Rust
#[no_mangle]
+cairo_native__libfunc__hades_permutation in cairo_native_runtime - Rust
#[no_mangle]
 pub unsafe extern "C" fn cairo_native__libfunc__hades_permutation(
     op0: *mut u8,
     op1: *mut u8,
diff --git a/cairo_native_runtime/fn.cairo_native__libfunc__pedersen.html b/cairo_native_runtime/fn.cairo_native__libfunc__pedersen.html
index c0077b723..d8c23ce67 100644
--- a/cairo_native_runtime/fn.cairo_native__libfunc__pedersen.html
+++ b/cairo_native_runtime/fn.cairo_native__libfunc__pedersen.html
@@ -1,4 +1,4 @@
-cairo_native__libfunc__pedersen in cairo_native_runtime - Rust
#[no_mangle]
+cairo_native__libfunc__pedersen in cairo_native_runtime - Rust
#[no_mangle]
 pub unsafe extern "C" fn cairo_native__libfunc__pedersen(
     dst: *mut u8,
     lhs: *const u8,
diff --git a/cairo_native_runtime/index.html b/cairo_native_runtime/index.html
index c59161a4c..9c451d546 100644
--- a/cairo_native_runtime/index.html
+++ b/cairo_native_runtime/index.html
@@ -1 +1 @@
-cairo_native_runtime - Rust

Functions

\ No newline at end of file +cairo_native_runtime - Rust

Functions

\ No newline at end of file diff --git a/help.html b/help.html index 3aa214f0e..55a54edd2 100644 --- a/help.html +++ b/help.html @@ -1 +1 @@ -Rustdoc help

Rustdoc help

Back
\ No newline at end of file +Rustdoc help

Rustdoc help

Back
\ No newline at end of file diff --git a/implementors/clap_builder/derive/trait.Args.js b/implementors/clap_builder/derive/trait.Args.js index ce25c88fc..bd6a5f8dd 100644 --- a/implementors/clap_builder/derive/trait.Args.js +++ b/implementors/clap_builder/derive/trait.Args.js @@ -1,5 +1,5 @@ (function() {var implementors = { -"cairo_native_compile":[["impl Args for CmdLine"],["impl Args for Args"]], +"cairo_native_compile":[["impl Args for Args"],["impl Args for CmdLine"]], "cairo_native_dump":[["impl Args for CmdLine"]], "cairo_native_run":[["impl Args for CmdLine"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/clap_builder/derive/trait.CommandFactory.js b/implementors/clap_builder/derive/trait.CommandFactory.js index 1a5b9bb72..ecb8c693f 100644 --- a/implementors/clap_builder/derive/trait.CommandFactory.js +++ b/implementors/clap_builder/derive/trait.CommandFactory.js @@ -1,5 +1,5 @@ (function() {var implementors = { -"cairo_native_compile":[["impl CommandFactory for Args"],["impl CommandFactory for CmdLine"]], +"cairo_native_compile":[["impl CommandFactory for CmdLine"],["impl CommandFactory for Args"]], "cairo_native_dump":[["impl CommandFactory for CmdLine"]], "cairo_native_run":[["impl CommandFactory for CmdLine"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/clap_builder/derive/trait.FromArgMatches.js b/implementors/clap_builder/derive/trait.FromArgMatches.js index 39daa6271..ba693b45e 100644 --- a/implementors/clap_builder/derive/trait.FromArgMatches.js +++ b/implementors/clap_builder/derive/trait.FromArgMatches.js @@ -1,5 +1,5 @@ (function() {var implementors = { -"cairo_native_compile":[["impl FromArgMatches for CmdLine"],["impl FromArgMatches for Args"]], +"cairo_native_compile":[["impl FromArgMatches for Args"],["impl FromArgMatches for CmdLine"]], "cairo_native_dump":[["impl FromArgMatches for CmdLine"]], "cairo_native_run":[["impl FromArgMatches for CmdLine"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/clap_builder/derive/trait.Parser.js b/implementors/clap_builder/derive/trait.Parser.js index d5497f4bc..cf622399a 100644 --- a/implementors/clap_builder/derive/trait.Parser.js +++ b/implementors/clap_builder/derive/trait.Parser.js @@ -1,5 +1,5 @@ (function() {var implementors = { -"cairo_native_compile":[["impl Parser for CmdLine"],["impl Parser for Args"]], +"cairo_native_compile":[["impl Parser for Args"],["impl Parser for CmdLine"]], "cairo_native_dump":[["impl Parser for CmdLine"]], "cairo_native_run":[["impl Parser for CmdLine"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/clone/trait.Clone.js b/implementors/core/clone/trait.Clone.js index 4de05ac92..870ef2821 100644 --- a/implementors/core/clone/trait.Clone.js +++ b/implementors/core/clone/trait.Clone.js @@ -1,6 +1,6 @@ (function() {var implementors = { -"cairo_native":[["impl Clone for DebugInfo"],["impl<'ctx, 'a> Clone for BranchTarget<'ctx, 'a>"],["impl Clone for SyscallHandlerMeta"],["impl Clone for ExecutionResult"],["impl<'c> Clone for DebugLocations<'c>"],["impl<'a, T: Clone> Clone for WithSelf<'a, T>"],["impl Clone for LayoutError"],["impl Clone for LLVMCompileError"],["impl Clone for JITValue"],["impl Clone for GasCost"],["impl Clone for U256"]], +"cairo_native":[["impl Clone for U256"],["impl<'a, T: Clone> Clone for WithSelf<'a, T>"],["impl<'ctx, 'a> Clone for BranchTarget<'ctx, 'a>"],["impl Clone for GasCost"],["impl Clone for LayoutError"],["impl Clone for JITValue"],["impl<'c> Clone for DebugLocations<'c>"],["impl Clone for LLVMCompileError"],["impl Clone for ExecutionResult"],["impl Clone for DebugInfo"],["impl Clone for SyscallHandlerMeta"]], "cairo_native_compile":[["impl Clone for CmdLine"],["impl Clone for CompilerOutput"]], -"cairo_native_dump":[["impl Clone for CmdLine"],["impl Clone for CompilerOutput"]], -"cairo_native_run":[["impl Clone for StdioOrPath"],["impl Clone for CmdLine"]] +"cairo_native_dump":[["impl Clone for CompilerOutput"],["impl Clone for CmdLine"]], +"cairo_native_run":[["impl Clone for CmdLine"],["impl Clone for StdioOrPath"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/cmp/trait.Eq.js b/implementors/core/cmp/trait.Eq.js index a50563953..ce6d397b0 100644 --- a/implementors/core/cmp/trait.Eq.js +++ b/implementors/core/cmp/trait.Eq.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"cairo_native":[["impl Eq for JITValue"],["impl Eq for SyscallHandlerMeta"],["impl Eq for NativeContext"],["impl Eq for LayoutError"],["impl<'a, T: Eq> Eq for WithSelf<'a, T>"]] +"cairo_native":[["impl Eq for JITValue"],["impl Eq for NativeContext"],["impl<'a, T: Eq> Eq for WithSelf<'a, T>"],["impl Eq for LayoutError"],["impl Eq for SyscallHandlerMeta"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/cmp/trait.PartialEq.js b/implementors/core/cmp/trait.PartialEq.js index ac1816a3f..0d57e70af 100644 --- a/implementors/core/cmp/trait.PartialEq.js +++ b/implementors/core/cmp/trait.PartialEq.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"cairo_native":[["impl<'a, T: PartialEq> PartialEq<WithSelf<'a, T>> for WithSelf<'a, T>"],["impl PartialEq<LayoutError> for LayoutError"],["impl PartialEq<SyscallHandlerMeta> for SyscallHandlerMeta"],["impl PartialEq<NativeContext> for NativeContext"],["impl PartialEq<JITValue> for JITValue"]] +"cairo_native":[["impl PartialEq<JITValue> for JITValue"],["impl PartialEq<LayoutError> for LayoutError"],["impl PartialEq<NativeContext> for NativeContext"],["impl PartialEq<SyscallHandlerMeta> for SyscallHandlerMeta"],["impl<'a, T: PartialEq> PartialEq<WithSelf<'a, T>> for WithSelf<'a, T>"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/convert/trait.From.js b/implementors/core/convert/trait.From.js index 837f3581a..ebf4d714b 100644 --- a/implementors/core/convert/trait.From.js +++ b/implementors/core/convert/trait.From.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"cairo_native":[["impl<E> From<E> for Errorwhere\n ErrorImpl: From<E>,"],["impl<TType, TLibfunc> From<EditStateError> for ErrorImpl<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,"],["impl From<LayoutError> for ErrorImpl"],["impl From<Box<ProgramRegistryError, Global>> for ErrorImpl"],["impl<T: Into<JITValue>, const N: usize> From<[T; N]> for JITValue"],["impl<E> From<E> for Errorwhere\n ErrorImpl: From<E>,"],["impl From<u64> for JITValue"],["impl<TType, TLibfunc, E> From<E> for Box<Error<TType, TLibfunc>>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,\n ErrorImpl<TType, TLibfunc>: From<E>,"],["impl<TType, TLibfunc, E> From<E> for Error<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,\n ErrorImpl<TType, TLibfunc>: From<E>,"],["impl From<Error> for ErrorImpl"],["impl From<Box<ProgramRegistryError, Global>> for ErrorImpl"],["impl From<LayoutError> for ErrorImpl"],["impl From<u16> for JITValue"],["impl<TType, TLibfunc> From<Box<ProgramRegistryError, Global>> for ErrorImpl<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,"],["impl From<Felt252> for JITValue"],["impl From<TryFromIntError> for ErrorImpl"],["impl<T: Into<JITValue> + Clone> From<&[T]> for JITValue"],["impl From<u32> for JITValue"],["impl From<TryFromIntError> for ErrorImpl"],["impl From<Error> for ErrorImpl"],["impl<TType, TLibfunc> From<Error> for ErrorImpl<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,"],["impl From<Box<ProgramRegistryError, Global>> for ErrorImpl"],["impl<T: Into<JITValue>> From<Vec<T, Global>> for JITValue"],["impl From<Error> for ErrorImpl"],["impl From<Error> for ErrorImpl"],["impl From<LayoutError> for ErrorImpl"],["impl<E> From<E> for Errorwhere\n ErrorImpl: From<E>,"],["impl From<LayoutError> for ErrorImpl"],["impl<E> From<E> for Box<Error>where\n ErrorImpl: From<E>,"],["impl From<Error> for ErrorImpl"],["impl From<u128> for JITValue"],["impl From<u8> for JITValue"],["impl From<LayoutError> for ErrorImpl"]] +"cairo_native":[["impl<T: Into<JITValue>, const N: usize> From<[T; N]> for JITValue"],["impl From<LayoutError> for ErrorImpl"],["impl From<i8> for JITValue"],["impl From<LayoutError> for ErrorImpl"],["impl From<u8> for JITValue"],["impl From<u32> for JITValue"],["impl<E> From<E> for Box<Error>where\n ErrorImpl: From<E>,"],["impl From<u16> for JITValue"],["impl<TType, TLibfunc> From<Error> for ErrorImpl<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,"],["impl<T: Into<JITValue>> From<Vec<T, Global>> for JITValue"],["impl From<Error> for ErrorImpl"],["impl From<u128> for JITValue"],["impl From<Error> for ErrorImpl"],["impl From<u64> for JITValue"],["impl<E> From<E> for Errorwhere\n ErrorImpl: From<E>,"],["impl From<LayoutError> for ErrorImpl"],["impl From<Felt> for JITValue"],["impl From<Box<ProgramRegistryError, Global>> for ErrorImpl"],["impl From<Error> for ErrorImpl"],["impl From<TryFromIntError> for ErrorImpl"],["impl<E> From<E> for Errorwhere\n ErrorImpl: From<E>,"],["impl From<i16> for JITValue"],["impl From<Box<ProgramRegistryError, Global>> for ErrorImpl"],["impl<TType, TLibfunc, E> From<E> for Error<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,\n ErrorImpl<TType, TLibfunc>: From<E>,"],["impl<E> From<E> for Errorwhere\n ErrorImpl: From<E>,"],["impl From<LayoutError> for ErrorImpl"],["impl From<TryFromIntError> for ErrorImpl"],["impl<TType, TLibfunc> From<Box<ProgramRegistryError, Global>> for ErrorImpl<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,"],["impl From<Error> for ErrorImpl"],["impl From<Box<ProgramRegistryError, Global>> for ErrorImpl"],["impl From<Error> for ErrorImpl"],["impl<TType, TLibfunc> From<EditStateError> for ErrorImpl<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,"],["impl<T: Into<JITValue> + Clone> From<&[T]> for JITValue"],["impl<TType, TLibfunc, E> From<E> for Box<Error<TType, TLibfunc>>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,\n ErrorImpl<TType, TLibfunc>: From<E>,"],["impl From<i32> for JITValue"],["impl From<LayoutError> for ErrorImpl"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/default/trait.Default.js b/implementors/core/default/trait.Default.js index e73073ec3..f96c50051 100644 --- a/implementors/core/default/trait.Default.js +++ b/implementors/core/default/trait.Default.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"cairo_native":[["impl Default for MetadataComputationConfig"],["impl Default for ContractExecutionResult"],["impl<TType, TLibfunc> Default for SnapshotClonesMeta<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,"],["impl Default for EnumSnapshotVariantsMeta"],["impl Default for MetadataStorage"],["impl Default for NativeContext"],["impl Default for RuntimeBindingsMeta"],["impl Default for DebugUtils"]] +"cairo_native":[["impl Default for EnumSnapshotVariantsMeta"],["impl Default for MetadataStorage"],["impl Default for DebugUtils"],["impl<TType, TLibfunc> Default for SnapshotClonesMeta<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,"],["impl Default for NativeContext"],["impl Default for ContractExecutionResult"],["impl Default for RuntimeBindingsMeta"],["impl Default for MetadataComputationConfig"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/error/trait.Error.js b/implementors/core/error/trait.Error.js index f6d9847cb..5816d7a86 100644 --- a/implementors/core/error/trait.Error.js +++ b/implementors/core/error/trait.Error.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"cairo_native":[["impl<TType, TLibfunc> Error for ErrorImpl<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,\n Self: Debug + Display,"],["impl Error for ErrorImpl"],["impl<TType, TLibfunc> Error for Error<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,\n ErrorImpl<TType, TLibfunc>: Error + 'static,\n Self: Debug + Display,"],["impl Error for Error"],["impl Error for Error"],["impl Error for LayoutError"],["impl Error for LLVMCompileError"],["impl Error for Error"],["impl Error for ErrorImpl"],["impl Error for ErrorImpl"]] +"cairo_native":[["impl<TType, TLibfunc> Error for ErrorImpl<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,\n Self: Debug + Display,"],["impl Error for Error"],["impl Error for ErrorImpl"],["impl Error for Error"],["impl Error for LLVMCompileError"],["impl Error for LayoutError"],["impl Error for Error"],["impl Error for ErrorImpl"],["impl Error for ErrorImpl"],["impl<TType, TLibfunc> Error for Error<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,\n ErrorImpl<TType, TLibfunc>: Error + 'static,\n Self: Debug + Display,"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/fmt/trait.Debug.js b/implementors/core/fmt/trait.Debug.js index d97fc35ea..b9add6f44 100644 --- a/implementors/core/fmt/trait.Debug.js +++ b/implementors/core/fmt/trait.Debug.js @@ -1,6 +1,6 @@ (function() {var implementors = { -"cairo_native":[["impl<TType, TLibfunc> Debug for ErrorImpl<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,"],["impl Debug for JITValue"],["impl Debug for DebugUtils"],["impl<TType, TLibfunc> Debug for Error<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,"],["impl Debug for LayoutError"],["impl Debug for ErrorImpl"],["impl Debug for LLVMCompileError"],["impl Debug for Error"],["impl Debug for U256"],["impl Debug for TailRecursionMeta"],["impl Debug for Error"],["impl Debug for ContractExecutionResult"],["impl Debug for SyscallHandlerMeta"],["impl Debug for Felt252"],["impl Debug for NativeModule<'_>"],["impl Debug for Error"],["impl Debug for MetadataStorage"],["impl Debug for DebugInfo"],["impl Debug for GasCost"],["impl<'a, K: PartialEq + Eq + Hash> Debug for ProgramCache<'a, K>"],["impl Debug for ErrorImpl"],["impl Debug for NativeContext"],["impl<'a, T: Debug> Debug for WithSelf<'a, T>"],["impl Debug for ReallocBindingsMeta"],["impl<T: Debug> Debug for PrimeModuloMeta<T>"],["impl Debug for ErrorImpl"],["impl<'c> Debug for DebugLocations<'c>"],["impl Debug for ExecutionResult"],["impl Debug for RuntimeBindingsMeta"]], -"cairo_native_compile":[["impl Debug for Args"],["impl Debug for CompilerOutput"],["impl Debug for CmdLine"]], +"cairo_native":[["impl Debug for ExecutionResult"],["impl Debug for ErrorImpl"],["impl Debug for NativeContext"],["impl Debug for Error"],["impl<TType, TLibfunc> Debug for ErrorImpl<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,"],["impl Debug for Felt252"],["impl Debug for ReallocBindingsMeta"],["impl Debug for Error"],["impl Debug for LayoutError"],["impl Debug for DebugUtils"],["impl Debug for DebugInfo"],["impl Debug for SyscallHandlerMeta"],["impl Debug for U256"],["impl Debug for GasCost"],["impl Debug for TailRecursionMeta"],["impl Debug for Error"],["impl<TType, TLibfunc> Debug for Error<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,"],["impl<'a, T: Debug> Debug for WithSelf<'a, T>"],["impl Debug for LLVMCompileError"],["impl Debug for ContractExecutionResult"],["impl Debug for MetadataStorage"],["impl Debug for ErrorImpl"],["impl Debug for NativeModule<'_>"],["impl Debug for JITValue"],["impl<T: Debug> Debug for PrimeModuloMeta<T>"],["impl Debug for ErrorImpl"],["impl<'a, K: PartialEq + Eq + Hash> Debug for ProgramCache<'a, K>"],["impl Debug for RuntimeBindingsMeta"],["impl<'c> Debug for DebugLocations<'c>"]], +"cairo_native_compile":[["impl Debug for Args"],["impl Debug for CmdLine"],["impl Debug for CompilerOutput"]], "cairo_native_dump":[["impl Debug for CmdLine"],["impl Debug for CompilerOutput"]], "cairo_native_run":[["impl Debug for CmdLine"],["impl Debug for StdioOrPath"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/fmt/trait.Display.js b/implementors/core/fmt/trait.Display.js index d5b7d9557..3a3d1ea05 100644 --- a/implementors/core/fmt/trait.Display.js +++ b/implementors/core/fmt/trait.Display.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"cairo_native":[["impl Display for Error"],["impl Display for LLVMCompileError"],["impl Display for LayoutError"],["impl Display for Error"],["impl Display for ErrorImpl"],["impl<TType, TLibfunc> Display for ErrorImpl<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Display,\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Display,"],["impl Display for ErrorImpl"],["impl Display for ErrorImpl"],["impl<TType, TLibfunc> Display for Error<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,"],["impl Display for Error"]] +"cairo_native":[["impl<TType, TLibfunc> Display for ErrorImpl<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Display,\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Display,"],["impl Display for LLVMCompileError"],["impl Display for LayoutError"],["impl<TType, TLibfunc> Display for Error<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,"],["impl Display for Error"],["impl Display for ErrorImpl"],["impl Display for Error"],["impl Display for Error"],["impl Display for ErrorImpl"],["impl Display for ErrorImpl"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/marker/trait.Freeze.js b/implementors/core/marker/trait.Freeze.js index 5dc860873..22e4c6605 100644 --- a/implementors/core/marker/trait.Freeze.js +++ b/implementors/core/marker/trait.Freeze.js @@ -1,5 +1,5 @@ (function() {var implementors = { -"cairo_native":[["impl<'a, K> Freeze for ProgramCache<'a, K>",1,["cairo_native::cache::ProgramCache"]],["impl Freeze for NativeContext",1,["cairo_native::context::NativeContext"]],["impl Freeze for DebugInfo",1,["cairo_native::debug_info::DebugInfo"]],["impl<'c> Freeze for DebugLocations<'c>",1,["cairo_native::debug_info::DebugLocations"]],["impl<TType, TLibfunc> Freeze for Error<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Freeze,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Freeze,",1,["cairo_native::error::compile::Error"]],["impl<TType, TLibfunc> Freeze for ErrorImpl<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Freeze,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Freeze,",1,["cairo_native::error::compile::ErrorImpl"]],["impl Freeze for Error",1,["cairo_native::error::jit_engine::Error"]],["impl Freeze for ErrorImpl",1,["cairo_native::error::jit_engine::ErrorImpl"]],["impl Freeze for Error",1,["cairo_native::error::libfuncs::Error"]],["impl Freeze for ErrorImpl",1,["cairo_native::error::libfuncs::ErrorImpl"]],["impl Freeze for Error",1,["cairo_native::error::types::Error"]],["impl Freeze for ErrorImpl",1,["cairo_native::error::types::ErrorImpl"]],["impl Freeze for ContractExecutionResult",1,["cairo_native::execution_result::ContractExecutionResult"]],["impl<'m> Freeze for NativeExecutor<'m>",1,["cairo_native::executor::NativeExecutor"]],["impl Freeze for LLVMCompileError",1,["cairo_native::ffi::LLVMCompileError"]],["impl Freeze for ExecutionResult",1,["cairo_native::jit_runner::ExecutionResult"]],["impl<'ctx, 'this> !Freeze for LibfuncHelper<'ctx, 'this>",1,["cairo_native::libfuncs::LibfuncHelper"]],["impl<'ctx, 'a> Freeze for BranchTarget<'ctx, 'a>",1,["cairo_native::libfuncs::BranchTarget"]],["impl Freeze for DebugUtils",1,["cairo_native::metadata::debug_utils::DebugUtils"]],["impl Freeze for EnumSnapshotVariantsMeta",1,["cairo_native::metadata::enum_snapshot_variants::EnumSnapshotVariantsMeta"]],["impl Freeze for GasMetadata",1,["cairo_native::metadata::gas::GasMetadata"]],["impl Freeze for GasCost",1,["cairo_native::metadata::gas::GasCost"]],["impl Freeze for MetadataComputationConfig",1,["cairo_native::metadata::gas::MetadataComputationConfig"]],["impl<T> Freeze for PrimeModuloMeta<T>",1,["cairo_native::metadata::prime_modulo::PrimeModuloMeta"]],["impl Freeze for ReallocBindingsMeta",1,["cairo_native::metadata::realloc_bindings::ReallocBindingsMeta"]],["impl Freeze for RuntimeBindingsMeta",1,["cairo_native::metadata::runtime_bindings::RuntimeBindingsMeta"]],["impl<TType, TLibfunc> Freeze for SnapshotClonesMeta<TType, TLibfunc>",1,["cairo_native::metadata::snapshot_clones::SnapshotClonesMeta"]],["impl Freeze for SyscallHandlerMeta",1,["cairo_native::metadata::syscall_handler::SyscallHandlerMeta"]],["impl Freeze for TailRecursionMeta",1,["cairo_native::metadata::tail_recursion::TailRecursionMeta"]],["impl Freeze for MetadataStorage",1,["cairo_native::metadata::MetadataStorage"]],["impl<'m> Freeze for NativeModule<'m>",1,["cairo_native::module::NativeModule"]],["impl Freeze for U256",1,["cairo_native::starknet::U256"]],["impl Freeze for ExecutionInfo",1,["cairo_native::starknet::ExecutionInfo"]],["impl Freeze for BlockInfo",1,["cairo_native::starknet::BlockInfo"]],["impl Freeze for TxInfo",1,["cairo_native::starknet::TxInfo"]],["impl Freeze for Secp256k1Point",1,["cairo_native::starknet::Secp256k1Point"]],["impl Freeze for Secp256r1Point",1,["cairo_native::starknet::Secp256r1Point"]],["impl Freeze for PRIME",1,["cairo_native::types::felt252::PRIME"]],["impl Freeze for Felt252",1,["cairo_native::types::felt252::Felt252"]],["impl<'a, T> Freeze for WithSelf<'a, T>",1,["cairo_native::types::WithSelf"]],["impl Freeze for LayoutError",1,["cairo_native::utils::LayoutError"]],["impl Freeze for JITValue",1,["cairo_native::values::JITValue"]]], +"cairo_native":[["impl<'a, K> Freeze for ProgramCache<'a, K>",1,["cairo_native::cache::ProgramCache"]],["impl Freeze for NativeContext",1,["cairo_native::context::NativeContext"]],["impl Freeze for DebugInfo",1,["cairo_native::debug_info::DebugInfo"]],["impl<'c> Freeze for DebugLocations<'c>",1,["cairo_native::debug_info::DebugLocations"]],["impl<TType, TLibfunc> Freeze for Error<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Freeze,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Freeze,",1,["cairo_native::error::compile::Error"]],["impl<TType, TLibfunc> Freeze for ErrorImpl<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Freeze,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Freeze,",1,["cairo_native::error::compile::ErrorImpl"]],["impl Freeze for Error",1,["cairo_native::error::jit_engine::Error"]],["impl Freeze for ErrorImpl",1,["cairo_native::error::jit_engine::ErrorImpl"]],["impl Freeze for Error",1,["cairo_native::error::libfuncs::Error"]],["impl Freeze for ErrorImpl",1,["cairo_native::error::libfuncs::ErrorImpl"]],["impl Freeze for Error",1,["cairo_native::error::types::Error"]],["impl Freeze for ErrorImpl",1,["cairo_native::error::types::ErrorImpl"]],["impl Freeze for ContractExecutionResult",1,["cairo_native::execution_result::ContractExecutionResult"]],["impl<'m> Freeze for NativeExecutor<'m>",1,["cairo_native::executor::NativeExecutor"]],["impl Freeze for LLVMCompileError",1,["cairo_native::ffi::LLVMCompileError"]],["impl Freeze for ExecutionResult",1,["cairo_native::jit_runner::ExecutionResult"]],["impl<'ctx, 'this> !Freeze for LibfuncHelper<'ctx, 'this>",1,["cairo_native::libfuncs::LibfuncHelper"]],["impl<'ctx, 'a> Freeze for BranchTarget<'ctx, 'a>",1,["cairo_native::libfuncs::BranchTarget"]],["impl Freeze for DebugUtils",1,["cairo_native::metadata::debug_utils::DebugUtils"]],["impl Freeze for EnumSnapshotVariantsMeta",1,["cairo_native::metadata::enum_snapshot_variants::EnumSnapshotVariantsMeta"]],["impl Freeze for GasMetadata",1,["cairo_native::metadata::gas::GasMetadata"]],["impl Freeze for GasCost",1,["cairo_native::metadata::gas::GasCost"]],["impl Freeze for MetadataComputationConfig",1,["cairo_native::metadata::gas::MetadataComputationConfig"]],["impl<T> Freeze for PrimeModuloMeta<T>",1,["cairo_native::metadata::prime_modulo::PrimeModuloMeta"]],["impl Freeze for ReallocBindingsMeta",1,["cairo_native::metadata::realloc_bindings::ReallocBindingsMeta"]],["impl Freeze for RuntimeBindingsMeta",1,["cairo_native::metadata::runtime_bindings::RuntimeBindingsMeta"]],["impl<TType, TLibfunc> Freeze for SnapshotClonesMeta<TType, TLibfunc>",1,["cairo_native::metadata::snapshot_clones::SnapshotClonesMeta"]],["impl Freeze for SyscallHandlerMeta",1,["cairo_native::metadata::syscall_handler::SyscallHandlerMeta"]],["impl Freeze for TailRecursionMeta",1,["cairo_native::metadata::tail_recursion::TailRecursionMeta"]],["impl Freeze for MetadataStorage",1,["cairo_native::metadata::MetadataStorage"]],["impl<'m> Freeze for NativeModule<'m>",1,["cairo_native::module::NativeModule"]],["impl Freeze for U256",1,["cairo_native::starknet::U256"]],["impl Freeze for ExecutionInfo",1,["cairo_native::starknet::ExecutionInfo"]],["impl Freeze for BlockInfo",1,["cairo_native::starknet::BlockInfo"]],["impl Freeze for TxInfo",1,["cairo_native::starknet::TxInfo"]],["impl Freeze for Secp256k1Point",1,["cairo_native::starknet::Secp256k1Point"]],["impl Freeze for Secp256r1Point",1,["cairo_native::starknet::Secp256r1Point"]],["impl Freeze for PRIME",1,["cairo_native::types::felt252::PRIME"]],["impl Freeze for HALF_PRIME",1,["cairo_native::types::felt252::HALF_PRIME"]],["impl Freeze for Felt252",1,["cairo_native::types::felt252::Felt252"]],["impl<'a, T> Freeze for WithSelf<'a, T>",1,["cairo_native::types::WithSelf"]],["impl Freeze for LayoutError",1,["cairo_native::utils::LayoutError"]],["impl Freeze for JITValue",1,["cairo_native::values::JITValue"]]], "cairo_native_compile":[["impl Freeze for Args",1,["cairo_native_compile::Args"]],["impl Freeze for CmdLine",1,["cairo_native_compile::CmdLine"]],["impl Freeze for CompilerOutput",1,["cairo_native_compile::CompilerOutput"]]], "cairo_native_dump":[["impl Freeze for CmdLine",1,["cairo_native_dump::CmdLine"]],["impl Freeze for CompilerOutput",1,["cairo_native_dump::CompilerOutput"]]], "cairo_native_run":[["impl Freeze for CmdLine",1,["cairo_native_run::CmdLine"]],["impl Freeze for StdioOrPath",1,["cairo_native_run::StdioOrPath"]]] diff --git a/implementors/core/marker/trait.Send.js b/implementors/core/marker/trait.Send.js index 4acc7c728..1bc727bab 100644 --- a/implementors/core/marker/trait.Send.js +++ b/implementors/core/marker/trait.Send.js @@ -1,5 +1,5 @@ (function() {var implementors = { -"cairo_native":[["impl<'a, K> !Send for ProgramCache<'a, K>",1,["cairo_native::cache::ProgramCache"]],["impl Send for DebugInfo",1,["cairo_native::debug_info::DebugInfo"]],["impl<'c> !Send for DebugLocations<'c>",1,["cairo_native::debug_info::DebugLocations"]],["impl<TType, TLibfunc> Send for Error<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Send,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Send,",1,["cairo_native::error::compile::Error"]],["impl<TType, TLibfunc> Send for ErrorImpl<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Send,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Send,",1,["cairo_native::error::compile::ErrorImpl"]],["impl Send for Error",1,["cairo_native::error::jit_engine::Error"]],["impl Send for ErrorImpl",1,["cairo_native::error::jit_engine::ErrorImpl"]],["impl Send for Error",1,["cairo_native::error::libfuncs::Error"]],["impl Send for ErrorImpl",1,["cairo_native::error::libfuncs::ErrorImpl"]],["impl Send for Error",1,["cairo_native::error::types::Error"]],["impl Send for ErrorImpl",1,["cairo_native::error::types::ErrorImpl"]],["impl Send for ContractExecutionResult",1,["cairo_native::execution_result::ContractExecutionResult"]],["impl<'m> !Send for NativeExecutor<'m>",1,["cairo_native::executor::NativeExecutor"]],["impl Send for LLVMCompileError",1,["cairo_native::ffi::LLVMCompileError"]],["impl Send for ExecutionResult",1,["cairo_native::jit_runner::ExecutionResult"]],["impl<'ctx, 'this> !Send for LibfuncHelper<'ctx, 'this>",1,["cairo_native::libfuncs::LibfuncHelper"]],["impl<'ctx, 'a> !Send for BranchTarget<'ctx, 'a>",1,["cairo_native::libfuncs::BranchTarget"]],["impl Send for DebugUtils",1,["cairo_native::metadata::debug_utils::DebugUtils"]],["impl Send for EnumSnapshotVariantsMeta",1,["cairo_native::metadata::enum_snapshot_variants::EnumSnapshotVariantsMeta"]],["impl Send for GasMetadata",1,["cairo_native::metadata::gas::GasMetadata"]],["impl Send for GasCost",1,["cairo_native::metadata::gas::GasCost"]],["impl Send for MetadataComputationConfig",1,["cairo_native::metadata::gas::MetadataComputationConfig"]],["impl<T> Send for PrimeModuloMeta<T>where\n T: Send,",1,["cairo_native::metadata::prime_modulo::PrimeModuloMeta"]],["impl Send for ReallocBindingsMeta",1,["cairo_native::metadata::realloc_bindings::ReallocBindingsMeta"]],["impl Send for RuntimeBindingsMeta",1,["cairo_native::metadata::runtime_bindings::RuntimeBindingsMeta"]],["impl<TType, TLibfunc> !Send for SnapshotClonesMeta<TType, TLibfunc>",1,["cairo_native::metadata::snapshot_clones::SnapshotClonesMeta"]],["impl !Send for SyscallHandlerMeta",1,["cairo_native::metadata::syscall_handler::SyscallHandlerMeta"]],["impl !Send for TailRecursionMeta",1,["cairo_native::metadata::tail_recursion::TailRecursionMeta"]],["impl !Send for MetadataStorage",1,["cairo_native::metadata::MetadataStorage"]],["impl<'m> !Send for NativeModule<'m>",1,["cairo_native::module::NativeModule"]],["impl Send for U256",1,["cairo_native::starknet::U256"]],["impl Send for ExecutionInfo",1,["cairo_native::starknet::ExecutionInfo"]],["impl Send for BlockInfo",1,["cairo_native::starknet::BlockInfo"]],["impl Send for TxInfo",1,["cairo_native::starknet::TxInfo"]],["impl Send for Secp256k1Point",1,["cairo_native::starknet::Secp256k1Point"]],["impl Send for Secp256r1Point",1,["cairo_native::starknet::Secp256r1Point"]],["impl Send for PRIME",1,["cairo_native::types::felt252::PRIME"]],["impl Send for Felt252",1,["cairo_native::types::felt252::Felt252"]],["impl<'a, T> Send for WithSelf<'a, T>where\n T: Sync,",1,["cairo_native::types::WithSelf"]],["impl Send for LayoutError",1,["cairo_native::utils::LayoutError"]],["impl Send for JITValue",1,["cairo_native::values::JITValue"]],["impl Send for NativeContext"]], +"cairo_native":[["impl<'a, K> !Send for ProgramCache<'a, K>",1,["cairo_native::cache::ProgramCache"]],["impl Send for DebugInfo",1,["cairo_native::debug_info::DebugInfo"]],["impl<'c> !Send for DebugLocations<'c>",1,["cairo_native::debug_info::DebugLocations"]],["impl<TType, TLibfunc> Send for Error<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Send,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Send,",1,["cairo_native::error::compile::Error"]],["impl<TType, TLibfunc> Send for ErrorImpl<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Send,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Send,",1,["cairo_native::error::compile::ErrorImpl"]],["impl Send for Error",1,["cairo_native::error::jit_engine::Error"]],["impl Send for ErrorImpl",1,["cairo_native::error::jit_engine::ErrorImpl"]],["impl Send for Error",1,["cairo_native::error::libfuncs::Error"]],["impl Send for ErrorImpl",1,["cairo_native::error::libfuncs::ErrorImpl"]],["impl Send for Error",1,["cairo_native::error::types::Error"]],["impl Send for ErrorImpl",1,["cairo_native::error::types::ErrorImpl"]],["impl Send for ContractExecutionResult",1,["cairo_native::execution_result::ContractExecutionResult"]],["impl<'m> !Send for NativeExecutor<'m>",1,["cairo_native::executor::NativeExecutor"]],["impl Send for LLVMCompileError",1,["cairo_native::ffi::LLVMCompileError"]],["impl Send for ExecutionResult",1,["cairo_native::jit_runner::ExecutionResult"]],["impl<'ctx, 'this> !Send for LibfuncHelper<'ctx, 'this>",1,["cairo_native::libfuncs::LibfuncHelper"]],["impl<'ctx, 'a> !Send for BranchTarget<'ctx, 'a>",1,["cairo_native::libfuncs::BranchTarget"]],["impl Send for DebugUtils",1,["cairo_native::metadata::debug_utils::DebugUtils"]],["impl Send for EnumSnapshotVariantsMeta",1,["cairo_native::metadata::enum_snapshot_variants::EnumSnapshotVariantsMeta"]],["impl Send for GasMetadata",1,["cairo_native::metadata::gas::GasMetadata"]],["impl Send for GasCost",1,["cairo_native::metadata::gas::GasCost"]],["impl Send for MetadataComputationConfig",1,["cairo_native::metadata::gas::MetadataComputationConfig"]],["impl<T> Send for PrimeModuloMeta<T>where\n T: Send,",1,["cairo_native::metadata::prime_modulo::PrimeModuloMeta"]],["impl Send for ReallocBindingsMeta",1,["cairo_native::metadata::realloc_bindings::ReallocBindingsMeta"]],["impl Send for RuntimeBindingsMeta",1,["cairo_native::metadata::runtime_bindings::RuntimeBindingsMeta"]],["impl<TType, TLibfunc> !Send for SnapshotClonesMeta<TType, TLibfunc>",1,["cairo_native::metadata::snapshot_clones::SnapshotClonesMeta"]],["impl !Send for SyscallHandlerMeta",1,["cairo_native::metadata::syscall_handler::SyscallHandlerMeta"]],["impl !Send for TailRecursionMeta",1,["cairo_native::metadata::tail_recursion::TailRecursionMeta"]],["impl !Send for MetadataStorage",1,["cairo_native::metadata::MetadataStorage"]],["impl<'m> !Send for NativeModule<'m>",1,["cairo_native::module::NativeModule"]],["impl Send for U256",1,["cairo_native::starknet::U256"]],["impl Send for ExecutionInfo",1,["cairo_native::starknet::ExecutionInfo"]],["impl Send for BlockInfo",1,["cairo_native::starknet::BlockInfo"]],["impl Send for TxInfo",1,["cairo_native::starknet::TxInfo"]],["impl Send for Secp256k1Point",1,["cairo_native::starknet::Secp256k1Point"]],["impl Send for Secp256r1Point",1,["cairo_native::starknet::Secp256r1Point"]],["impl Send for PRIME",1,["cairo_native::types::felt252::PRIME"]],["impl Send for HALF_PRIME",1,["cairo_native::types::felt252::HALF_PRIME"]],["impl Send for Felt252",1,["cairo_native::types::felt252::Felt252"]],["impl<'a, T> Send for WithSelf<'a, T>where\n T: Sync,",1,["cairo_native::types::WithSelf"]],["impl Send for LayoutError",1,["cairo_native::utils::LayoutError"]],["impl Send for JITValue",1,["cairo_native::values::JITValue"]],["impl Send for NativeContext"]], "cairo_native_compile":[["impl Send for Args",1,["cairo_native_compile::Args"]],["impl Send for CmdLine",1,["cairo_native_compile::CmdLine"]],["impl Send for CompilerOutput",1,["cairo_native_compile::CompilerOutput"]]], "cairo_native_dump":[["impl Send for CmdLine",1,["cairo_native_dump::CmdLine"]],["impl Send for CompilerOutput",1,["cairo_native_dump::CompilerOutput"]]], "cairo_native_run":[["impl Send for CmdLine",1,["cairo_native_run::CmdLine"]],["impl Send for StdioOrPath",1,["cairo_native_run::StdioOrPath"]]] diff --git a/implementors/core/marker/trait.StructuralEq.js b/implementors/core/marker/trait.StructuralEq.js index fedb67f3e..74914bf28 100644 --- a/implementors/core/marker/trait.StructuralEq.js +++ b/implementors/core/marker/trait.StructuralEq.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"cairo_native":[["impl StructuralEq for SyscallHandlerMeta"],["impl StructuralEq for NativeContext"],["impl<'a, T> StructuralEq for WithSelf<'a, T>"],["impl StructuralEq for LayoutError"]] +"cairo_native":[["impl StructuralEq for NativeContext"],["impl StructuralEq for SyscallHandlerMeta"],["impl<'a, T> StructuralEq for WithSelf<'a, T>"],["impl StructuralEq for LayoutError"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/marker/trait.StructuralPartialEq.js b/implementors/core/marker/trait.StructuralPartialEq.js index 1ec08c5ea..90028aad9 100644 --- a/implementors/core/marker/trait.StructuralPartialEq.js +++ b/implementors/core/marker/trait.StructuralPartialEq.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"cairo_native":[["impl StructuralPartialEq for SyscallHandlerMeta"],["impl StructuralPartialEq for NativeContext"],["impl StructuralPartialEq for LayoutError"],["impl<'a, T> StructuralPartialEq for WithSelf<'a, T>"]] +"cairo_native":[["impl<'a, T> StructuralPartialEq for WithSelf<'a, T>"],["impl StructuralPartialEq for SyscallHandlerMeta"],["impl StructuralPartialEq for NativeContext"],["impl StructuralPartialEq for LayoutError"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/marker/trait.Sync.js b/implementors/core/marker/trait.Sync.js index 8a10059c0..5cb6feb96 100644 --- a/implementors/core/marker/trait.Sync.js +++ b/implementors/core/marker/trait.Sync.js @@ -1,5 +1,5 @@ (function() {var implementors = { -"cairo_native":[["impl<'a, K> !Sync for ProgramCache<'a, K>",1,["cairo_native::cache::ProgramCache"]],["impl Sync for DebugInfo",1,["cairo_native::debug_info::DebugInfo"]],["impl<'c> !Sync for DebugLocations<'c>",1,["cairo_native::debug_info::DebugLocations"]],["impl<TType, TLibfunc> Sync for Error<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Sync,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Sync,",1,["cairo_native::error::compile::Error"]],["impl<TType, TLibfunc> Sync for ErrorImpl<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Sync,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Sync,",1,["cairo_native::error::compile::ErrorImpl"]],["impl Sync for Error",1,["cairo_native::error::jit_engine::Error"]],["impl Sync for ErrorImpl",1,["cairo_native::error::jit_engine::ErrorImpl"]],["impl Sync for Error",1,["cairo_native::error::libfuncs::Error"]],["impl Sync for ErrorImpl",1,["cairo_native::error::libfuncs::ErrorImpl"]],["impl Sync for Error",1,["cairo_native::error::types::Error"]],["impl Sync for ErrorImpl",1,["cairo_native::error::types::ErrorImpl"]],["impl Sync for ContractExecutionResult",1,["cairo_native::execution_result::ContractExecutionResult"]],["impl<'m> !Sync for NativeExecutor<'m>",1,["cairo_native::executor::NativeExecutor"]],["impl Sync for LLVMCompileError",1,["cairo_native::ffi::LLVMCompileError"]],["impl Sync for ExecutionResult",1,["cairo_native::jit_runner::ExecutionResult"]],["impl<'ctx, 'this> !Sync for LibfuncHelper<'ctx, 'this>",1,["cairo_native::libfuncs::LibfuncHelper"]],["impl<'ctx, 'a> !Sync for BranchTarget<'ctx, 'a>",1,["cairo_native::libfuncs::BranchTarget"]],["impl Sync for DebugUtils",1,["cairo_native::metadata::debug_utils::DebugUtils"]],["impl Sync for EnumSnapshotVariantsMeta",1,["cairo_native::metadata::enum_snapshot_variants::EnumSnapshotVariantsMeta"]],["impl Sync for GasMetadata",1,["cairo_native::metadata::gas::GasMetadata"]],["impl Sync for GasCost",1,["cairo_native::metadata::gas::GasCost"]],["impl Sync for MetadataComputationConfig",1,["cairo_native::metadata::gas::MetadataComputationConfig"]],["impl<T> Sync for PrimeModuloMeta<T>where\n T: Sync,",1,["cairo_native::metadata::prime_modulo::PrimeModuloMeta"]],["impl Sync for ReallocBindingsMeta",1,["cairo_native::metadata::realloc_bindings::ReallocBindingsMeta"]],["impl Sync for RuntimeBindingsMeta",1,["cairo_native::metadata::runtime_bindings::RuntimeBindingsMeta"]],["impl<TType, TLibfunc> !Sync for SnapshotClonesMeta<TType, TLibfunc>",1,["cairo_native::metadata::snapshot_clones::SnapshotClonesMeta"]],["impl !Sync for SyscallHandlerMeta",1,["cairo_native::metadata::syscall_handler::SyscallHandlerMeta"]],["impl !Sync for TailRecursionMeta",1,["cairo_native::metadata::tail_recursion::TailRecursionMeta"]],["impl !Sync for MetadataStorage",1,["cairo_native::metadata::MetadataStorage"]],["impl<'m> !Sync for NativeModule<'m>",1,["cairo_native::module::NativeModule"]],["impl Sync for U256",1,["cairo_native::starknet::U256"]],["impl Sync for ExecutionInfo",1,["cairo_native::starknet::ExecutionInfo"]],["impl Sync for BlockInfo",1,["cairo_native::starknet::BlockInfo"]],["impl Sync for TxInfo",1,["cairo_native::starknet::TxInfo"]],["impl Sync for Secp256k1Point",1,["cairo_native::starknet::Secp256k1Point"]],["impl Sync for Secp256r1Point",1,["cairo_native::starknet::Secp256r1Point"]],["impl Sync for PRIME",1,["cairo_native::types::felt252::PRIME"]],["impl Sync for Felt252",1,["cairo_native::types::felt252::Felt252"]],["impl<'a, T> Sync for WithSelf<'a, T>where\n T: Sync,",1,["cairo_native::types::WithSelf"]],["impl Sync for LayoutError",1,["cairo_native::utils::LayoutError"]],["impl Sync for JITValue",1,["cairo_native::values::JITValue"]],["impl Sync for NativeContext"]], +"cairo_native":[["impl<'a, K> !Sync for ProgramCache<'a, K>",1,["cairo_native::cache::ProgramCache"]],["impl Sync for DebugInfo",1,["cairo_native::debug_info::DebugInfo"]],["impl<'c> !Sync for DebugLocations<'c>",1,["cairo_native::debug_info::DebugLocations"]],["impl<TType, TLibfunc> Sync for Error<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Sync,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Sync,",1,["cairo_native::error::compile::Error"]],["impl<TType, TLibfunc> Sync for ErrorImpl<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Sync,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Sync,",1,["cairo_native::error::compile::ErrorImpl"]],["impl Sync for Error",1,["cairo_native::error::jit_engine::Error"]],["impl Sync for ErrorImpl",1,["cairo_native::error::jit_engine::ErrorImpl"]],["impl Sync for Error",1,["cairo_native::error::libfuncs::Error"]],["impl Sync for ErrorImpl",1,["cairo_native::error::libfuncs::ErrorImpl"]],["impl Sync for Error",1,["cairo_native::error::types::Error"]],["impl Sync for ErrorImpl",1,["cairo_native::error::types::ErrorImpl"]],["impl Sync for ContractExecutionResult",1,["cairo_native::execution_result::ContractExecutionResult"]],["impl<'m> !Sync for NativeExecutor<'m>",1,["cairo_native::executor::NativeExecutor"]],["impl Sync for LLVMCompileError",1,["cairo_native::ffi::LLVMCompileError"]],["impl Sync for ExecutionResult",1,["cairo_native::jit_runner::ExecutionResult"]],["impl<'ctx, 'this> !Sync for LibfuncHelper<'ctx, 'this>",1,["cairo_native::libfuncs::LibfuncHelper"]],["impl<'ctx, 'a> !Sync for BranchTarget<'ctx, 'a>",1,["cairo_native::libfuncs::BranchTarget"]],["impl Sync for DebugUtils",1,["cairo_native::metadata::debug_utils::DebugUtils"]],["impl Sync for EnumSnapshotVariantsMeta",1,["cairo_native::metadata::enum_snapshot_variants::EnumSnapshotVariantsMeta"]],["impl Sync for GasMetadata",1,["cairo_native::metadata::gas::GasMetadata"]],["impl Sync for GasCost",1,["cairo_native::metadata::gas::GasCost"]],["impl Sync for MetadataComputationConfig",1,["cairo_native::metadata::gas::MetadataComputationConfig"]],["impl<T> Sync for PrimeModuloMeta<T>where\n T: Sync,",1,["cairo_native::metadata::prime_modulo::PrimeModuloMeta"]],["impl Sync for ReallocBindingsMeta",1,["cairo_native::metadata::realloc_bindings::ReallocBindingsMeta"]],["impl Sync for RuntimeBindingsMeta",1,["cairo_native::metadata::runtime_bindings::RuntimeBindingsMeta"]],["impl<TType, TLibfunc> !Sync for SnapshotClonesMeta<TType, TLibfunc>",1,["cairo_native::metadata::snapshot_clones::SnapshotClonesMeta"]],["impl !Sync for SyscallHandlerMeta",1,["cairo_native::metadata::syscall_handler::SyscallHandlerMeta"]],["impl !Sync for TailRecursionMeta",1,["cairo_native::metadata::tail_recursion::TailRecursionMeta"]],["impl !Sync for MetadataStorage",1,["cairo_native::metadata::MetadataStorage"]],["impl<'m> !Sync for NativeModule<'m>",1,["cairo_native::module::NativeModule"]],["impl Sync for U256",1,["cairo_native::starknet::U256"]],["impl Sync for ExecutionInfo",1,["cairo_native::starknet::ExecutionInfo"]],["impl Sync for BlockInfo",1,["cairo_native::starknet::BlockInfo"]],["impl Sync for TxInfo",1,["cairo_native::starknet::TxInfo"]],["impl Sync for Secp256k1Point",1,["cairo_native::starknet::Secp256k1Point"]],["impl Sync for Secp256r1Point",1,["cairo_native::starknet::Secp256r1Point"]],["impl Sync for PRIME",1,["cairo_native::types::felt252::PRIME"]],["impl Sync for HALF_PRIME",1,["cairo_native::types::felt252::HALF_PRIME"]],["impl Sync for Felt252",1,["cairo_native::types::felt252::Felt252"]],["impl<'a, T> Sync for WithSelf<'a, T>where\n T: Sync,",1,["cairo_native::types::WithSelf"]],["impl Sync for LayoutError",1,["cairo_native::utils::LayoutError"]],["impl Sync for JITValue",1,["cairo_native::values::JITValue"]],["impl Sync for NativeContext"]], "cairo_native_compile":[["impl Sync for Args",1,["cairo_native_compile::Args"]],["impl Sync for CmdLine",1,["cairo_native_compile::CmdLine"]],["impl Sync for CompilerOutput",1,["cairo_native_compile::CompilerOutput"]]], "cairo_native_dump":[["impl Sync for CmdLine",1,["cairo_native_dump::CmdLine"]],["impl Sync for CompilerOutput",1,["cairo_native_dump::CompilerOutput"]]], "cairo_native_run":[["impl Sync for CmdLine",1,["cairo_native_run::CmdLine"]],["impl Sync for StdioOrPath",1,["cairo_native_run::StdioOrPath"]]] diff --git a/implementors/core/marker/trait.Unpin.js b/implementors/core/marker/trait.Unpin.js index e42a21813..cdac44cf8 100644 --- a/implementors/core/marker/trait.Unpin.js +++ b/implementors/core/marker/trait.Unpin.js @@ -1,5 +1,5 @@ (function() {var implementors = { -"cairo_native":[["impl<'a, K> Unpin for ProgramCache<'a, K>where\n K: Unpin,",1,["cairo_native::cache::ProgramCache"]],["impl Unpin for NativeContext",1,["cairo_native::context::NativeContext"]],["impl Unpin for DebugInfo",1,["cairo_native::debug_info::DebugInfo"]],["impl<'c> Unpin for DebugLocations<'c>",1,["cairo_native::debug_info::DebugLocations"]],["impl<TType, TLibfunc> Unpin for Error<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Unpin,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Unpin,",1,["cairo_native::error::compile::Error"]],["impl<TType, TLibfunc> Unpin for ErrorImpl<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Unpin,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Unpin,",1,["cairo_native::error::compile::ErrorImpl"]],["impl Unpin for Error",1,["cairo_native::error::jit_engine::Error"]],["impl Unpin for ErrorImpl",1,["cairo_native::error::jit_engine::ErrorImpl"]],["impl Unpin for Error",1,["cairo_native::error::libfuncs::Error"]],["impl Unpin for ErrorImpl",1,["cairo_native::error::libfuncs::ErrorImpl"]],["impl Unpin for Error",1,["cairo_native::error::types::Error"]],["impl Unpin for ErrorImpl",1,["cairo_native::error::types::ErrorImpl"]],["impl Unpin for ContractExecutionResult",1,["cairo_native::execution_result::ContractExecutionResult"]],["impl<'m> Unpin for NativeExecutor<'m>",1,["cairo_native::executor::NativeExecutor"]],["impl Unpin for LLVMCompileError",1,["cairo_native::ffi::LLVMCompileError"]],["impl Unpin for ExecutionResult",1,["cairo_native::jit_runner::ExecutionResult"]],["impl<'ctx, 'this> Unpin for LibfuncHelper<'ctx, 'this>",1,["cairo_native::libfuncs::LibfuncHelper"]],["impl<'ctx, 'a> Unpin for BranchTarget<'ctx, 'a>",1,["cairo_native::libfuncs::BranchTarget"]],["impl Unpin for DebugUtils",1,["cairo_native::metadata::debug_utils::DebugUtils"]],["impl Unpin for EnumSnapshotVariantsMeta",1,["cairo_native::metadata::enum_snapshot_variants::EnumSnapshotVariantsMeta"]],["impl Unpin for GasMetadata",1,["cairo_native::metadata::gas::GasMetadata"]],["impl Unpin for GasCost",1,["cairo_native::metadata::gas::GasCost"]],["impl Unpin for MetadataComputationConfig",1,["cairo_native::metadata::gas::MetadataComputationConfig"]],["impl<T> Unpin for PrimeModuloMeta<T>where\n T: Unpin,",1,["cairo_native::metadata::prime_modulo::PrimeModuloMeta"]],["impl Unpin for ReallocBindingsMeta",1,["cairo_native::metadata::realloc_bindings::ReallocBindingsMeta"]],["impl Unpin for RuntimeBindingsMeta",1,["cairo_native::metadata::runtime_bindings::RuntimeBindingsMeta"]],["impl<TType, TLibfunc> Unpin for SnapshotClonesMeta<TType, TLibfunc>",1,["cairo_native::metadata::snapshot_clones::SnapshotClonesMeta"]],["impl Unpin for SyscallHandlerMeta",1,["cairo_native::metadata::syscall_handler::SyscallHandlerMeta"]],["impl Unpin for TailRecursionMeta",1,["cairo_native::metadata::tail_recursion::TailRecursionMeta"]],["impl Unpin for MetadataStorage",1,["cairo_native::metadata::MetadataStorage"]],["impl<'m> Unpin for NativeModule<'m>",1,["cairo_native::module::NativeModule"]],["impl Unpin for U256",1,["cairo_native::starknet::U256"]],["impl Unpin for ExecutionInfo",1,["cairo_native::starknet::ExecutionInfo"]],["impl Unpin for BlockInfo",1,["cairo_native::starknet::BlockInfo"]],["impl Unpin for TxInfo",1,["cairo_native::starknet::TxInfo"]],["impl Unpin for Secp256k1Point",1,["cairo_native::starknet::Secp256k1Point"]],["impl Unpin for Secp256r1Point",1,["cairo_native::starknet::Secp256r1Point"]],["impl Unpin for PRIME",1,["cairo_native::types::felt252::PRIME"]],["impl Unpin for Felt252",1,["cairo_native::types::felt252::Felt252"]],["impl<'a, T> Unpin for WithSelf<'a, T>",1,["cairo_native::types::WithSelf"]],["impl Unpin for LayoutError",1,["cairo_native::utils::LayoutError"]],["impl Unpin for JITValue",1,["cairo_native::values::JITValue"]]], +"cairo_native":[["impl<'a, K> Unpin for ProgramCache<'a, K>where\n K: Unpin,",1,["cairo_native::cache::ProgramCache"]],["impl Unpin for NativeContext",1,["cairo_native::context::NativeContext"]],["impl Unpin for DebugInfo",1,["cairo_native::debug_info::DebugInfo"]],["impl<'c> Unpin for DebugLocations<'c>",1,["cairo_native::debug_info::DebugLocations"]],["impl<TType, TLibfunc> Unpin for Error<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Unpin,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Unpin,",1,["cairo_native::error::compile::Error"]],["impl<TType, TLibfunc> Unpin for ErrorImpl<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: Unpin,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: Unpin,",1,["cairo_native::error::compile::ErrorImpl"]],["impl Unpin for Error",1,["cairo_native::error::jit_engine::Error"]],["impl Unpin for ErrorImpl",1,["cairo_native::error::jit_engine::ErrorImpl"]],["impl Unpin for Error",1,["cairo_native::error::libfuncs::Error"]],["impl Unpin for ErrorImpl",1,["cairo_native::error::libfuncs::ErrorImpl"]],["impl Unpin for Error",1,["cairo_native::error::types::Error"]],["impl Unpin for ErrorImpl",1,["cairo_native::error::types::ErrorImpl"]],["impl Unpin for ContractExecutionResult",1,["cairo_native::execution_result::ContractExecutionResult"]],["impl<'m> Unpin for NativeExecutor<'m>",1,["cairo_native::executor::NativeExecutor"]],["impl Unpin for LLVMCompileError",1,["cairo_native::ffi::LLVMCompileError"]],["impl Unpin for ExecutionResult",1,["cairo_native::jit_runner::ExecutionResult"]],["impl<'ctx, 'this> Unpin for LibfuncHelper<'ctx, 'this>",1,["cairo_native::libfuncs::LibfuncHelper"]],["impl<'ctx, 'a> Unpin for BranchTarget<'ctx, 'a>",1,["cairo_native::libfuncs::BranchTarget"]],["impl Unpin for DebugUtils",1,["cairo_native::metadata::debug_utils::DebugUtils"]],["impl Unpin for EnumSnapshotVariantsMeta",1,["cairo_native::metadata::enum_snapshot_variants::EnumSnapshotVariantsMeta"]],["impl Unpin for GasMetadata",1,["cairo_native::metadata::gas::GasMetadata"]],["impl Unpin for GasCost",1,["cairo_native::metadata::gas::GasCost"]],["impl Unpin for MetadataComputationConfig",1,["cairo_native::metadata::gas::MetadataComputationConfig"]],["impl<T> Unpin for PrimeModuloMeta<T>where\n T: Unpin,",1,["cairo_native::metadata::prime_modulo::PrimeModuloMeta"]],["impl Unpin for ReallocBindingsMeta",1,["cairo_native::metadata::realloc_bindings::ReallocBindingsMeta"]],["impl Unpin for RuntimeBindingsMeta",1,["cairo_native::metadata::runtime_bindings::RuntimeBindingsMeta"]],["impl<TType, TLibfunc> Unpin for SnapshotClonesMeta<TType, TLibfunc>",1,["cairo_native::metadata::snapshot_clones::SnapshotClonesMeta"]],["impl Unpin for SyscallHandlerMeta",1,["cairo_native::metadata::syscall_handler::SyscallHandlerMeta"]],["impl Unpin for TailRecursionMeta",1,["cairo_native::metadata::tail_recursion::TailRecursionMeta"]],["impl Unpin for MetadataStorage",1,["cairo_native::metadata::MetadataStorage"]],["impl<'m> Unpin for NativeModule<'m>",1,["cairo_native::module::NativeModule"]],["impl Unpin for U256",1,["cairo_native::starknet::U256"]],["impl Unpin for ExecutionInfo",1,["cairo_native::starknet::ExecutionInfo"]],["impl Unpin for BlockInfo",1,["cairo_native::starknet::BlockInfo"]],["impl Unpin for TxInfo",1,["cairo_native::starknet::TxInfo"]],["impl Unpin for Secp256k1Point",1,["cairo_native::starknet::Secp256k1Point"]],["impl Unpin for Secp256r1Point",1,["cairo_native::starknet::Secp256r1Point"]],["impl Unpin for PRIME",1,["cairo_native::types::felt252::PRIME"]],["impl Unpin for HALF_PRIME",1,["cairo_native::types::felt252::HALF_PRIME"]],["impl Unpin for Felt252",1,["cairo_native::types::felt252::Felt252"]],["impl<'a, T> Unpin for WithSelf<'a, T>",1,["cairo_native::types::WithSelf"]],["impl Unpin for LayoutError",1,["cairo_native::utils::LayoutError"]],["impl Unpin for JITValue",1,["cairo_native::values::JITValue"]]], "cairo_native_compile":[["impl Unpin for Args",1,["cairo_native_compile::Args"]],["impl Unpin for CmdLine",1,["cairo_native_compile::CmdLine"]],["impl Unpin for CompilerOutput",1,["cairo_native_compile::CompilerOutput"]]], "cairo_native_dump":[["impl Unpin for CmdLine",1,["cairo_native_dump::CmdLine"]],["impl Unpin for CompilerOutput",1,["cairo_native_dump::CompilerOutput"]]], "cairo_native_run":[["impl Unpin for CmdLine",1,["cairo_native_run::CmdLine"]],["impl Unpin for StdioOrPath",1,["cairo_native_run::StdioOrPath"]]] diff --git a/implementors/core/ops/deref/trait.Deref.js b/implementors/core/ops/deref/trait.Deref.js index 8d064bdbd..47b43fb4b 100644 --- a/implementors/core/ops/deref/trait.Deref.js +++ b/implementors/core/ops/deref/trait.Deref.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"cairo_native":[["impl<'a, T> Deref for WithSelf<'a, T>"],["impl Deref for Error"],["impl<'ctx, 'this> Deref for LibfuncHelper<'ctx, 'this>"],["impl Deref for PRIME"],["impl<TType, TLibfunc> Deref for Error<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,"],["impl Deref for Error"],["impl Deref for Error"]] +"cairo_native":[["impl Deref for Error"],["impl Deref for PRIME"],["impl<'ctx, 'this> Deref for LibfuncHelper<'ctx, 'this>"],["impl<'a, T> Deref for WithSelf<'a, T>"],["impl Deref for Error"],["impl<TType, TLibfunc> Deref for Error<TType, TLibfunc>where\n TType: GenericType,\n TLibfunc: GenericLibfunc,\n <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc>,\n <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc>,"],["impl Deref for Error"],["impl Deref for HALF_PRIME"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js b/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js index daadc817a..b07b8d2c4 100644 --- a/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js +++ b/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js @@ -1,5 +1,5 @@ (function() {var implementors = { -"cairo_native":[["impl<'a, K> !RefUnwindSafe for ProgramCache<'a, K>",1,["cairo_native::cache::ProgramCache"]],["impl RefUnwindSafe for NativeContext",1,["cairo_native::context::NativeContext"]],["impl RefUnwindSafe for DebugInfo",1,["cairo_native::debug_info::DebugInfo"]],["impl<'c> RefUnwindSafe for DebugLocations<'c>",1,["cairo_native::debug_info::DebugLocations"]],["impl<TType, TLibfunc> RefUnwindSafe for Error<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: RefUnwindSafe,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: RefUnwindSafe,",1,["cairo_native::error::compile::Error"]],["impl<TType, TLibfunc> RefUnwindSafe for ErrorImpl<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: RefUnwindSafe,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: RefUnwindSafe,",1,["cairo_native::error::compile::ErrorImpl"]],["impl RefUnwindSafe for Error",1,["cairo_native::error::jit_engine::Error"]],["impl RefUnwindSafe for ErrorImpl",1,["cairo_native::error::jit_engine::ErrorImpl"]],["impl RefUnwindSafe for Error",1,["cairo_native::error::libfuncs::Error"]],["impl RefUnwindSafe for ErrorImpl",1,["cairo_native::error::libfuncs::ErrorImpl"]],["impl RefUnwindSafe for Error",1,["cairo_native::error::types::Error"]],["impl RefUnwindSafe for ErrorImpl",1,["cairo_native::error::types::ErrorImpl"]],["impl RefUnwindSafe for ContractExecutionResult",1,["cairo_native::execution_result::ContractExecutionResult"]],["impl<'m> !RefUnwindSafe for NativeExecutor<'m>",1,["cairo_native::executor::NativeExecutor"]],["impl RefUnwindSafe for LLVMCompileError",1,["cairo_native::ffi::LLVMCompileError"]],["impl RefUnwindSafe for ExecutionResult",1,["cairo_native::jit_runner::ExecutionResult"]],["impl<'ctx, 'this> !RefUnwindSafe for LibfuncHelper<'ctx, 'this>",1,["cairo_native::libfuncs::LibfuncHelper"]],["impl<'ctx, 'a> RefUnwindSafe for BranchTarget<'ctx, 'a>",1,["cairo_native::libfuncs::BranchTarget"]],["impl RefUnwindSafe for DebugUtils",1,["cairo_native::metadata::debug_utils::DebugUtils"]],["impl RefUnwindSafe for EnumSnapshotVariantsMeta",1,["cairo_native::metadata::enum_snapshot_variants::EnumSnapshotVariantsMeta"]],["impl RefUnwindSafe for GasMetadata",1,["cairo_native::metadata::gas::GasMetadata"]],["impl RefUnwindSafe for GasCost",1,["cairo_native::metadata::gas::GasCost"]],["impl RefUnwindSafe for MetadataComputationConfig",1,["cairo_native::metadata::gas::MetadataComputationConfig"]],["impl<T> RefUnwindSafe for PrimeModuloMeta<T>where\n T: RefUnwindSafe,",1,["cairo_native::metadata::prime_modulo::PrimeModuloMeta"]],["impl RefUnwindSafe for ReallocBindingsMeta",1,["cairo_native::metadata::realloc_bindings::ReallocBindingsMeta"]],["impl RefUnwindSafe for RuntimeBindingsMeta",1,["cairo_native::metadata::runtime_bindings::RuntimeBindingsMeta"]],["impl<TType, TLibfunc> !RefUnwindSafe for SnapshotClonesMeta<TType, TLibfunc>",1,["cairo_native::metadata::snapshot_clones::SnapshotClonesMeta"]],["impl RefUnwindSafe for SyscallHandlerMeta",1,["cairo_native::metadata::syscall_handler::SyscallHandlerMeta"]],["impl RefUnwindSafe for TailRecursionMeta",1,["cairo_native::metadata::tail_recursion::TailRecursionMeta"]],["impl !RefUnwindSafe for MetadataStorage",1,["cairo_native::metadata::MetadataStorage"]],["impl<'m> !RefUnwindSafe for NativeModule<'m>",1,["cairo_native::module::NativeModule"]],["impl RefUnwindSafe for U256",1,["cairo_native::starknet::U256"]],["impl RefUnwindSafe for ExecutionInfo",1,["cairo_native::starknet::ExecutionInfo"]],["impl RefUnwindSafe for BlockInfo",1,["cairo_native::starknet::BlockInfo"]],["impl RefUnwindSafe for TxInfo",1,["cairo_native::starknet::TxInfo"]],["impl RefUnwindSafe for Secp256k1Point",1,["cairo_native::starknet::Secp256k1Point"]],["impl RefUnwindSafe for Secp256r1Point",1,["cairo_native::starknet::Secp256r1Point"]],["impl RefUnwindSafe for PRIME",1,["cairo_native::types::felt252::PRIME"]],["impl RefUnwindSafe for Felt252",1,["cairo_native::types::felt252::Felt252"]],["impl<'a, T> RefUnwindSafe for WithSelf<'a, T>where\n T: RefUnwindSafe,",1,["cairo_native::types::WithSelf"]],["impl RefUnwindSafe for LayoutError",1,["cairo_native::utils::LayoutError"]],["impl RefUnwindSafe for JITValue",1,["cairo_native::values::JITValue"]]], +"cairo_native":[["impl<'a, K> !RefUnwindSafe for ProgramCache<'a, K>",1,["cairo_native::cache::ProgramCache"]],["impl RefUnwindSafe for NativeContext",1,["cairo_native::context::NativeContext"]],["impl RefUnwindSafe for DebugInfo",1,["cairo_native::debug_info::DebugInfo"]],["impl<'c> RefUnwindSafe for DebugLocations<'c>",1,["cairo_native::debug_info::DebugLocations"]],["impl<TType, TLibfunc> RefUnwindSafe for Error<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: RefUnwindSafe,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: RefUnwindSafe,",1,["cairo_native::error::compile::Error"]],["impl<TType, TLibfunc> RefUnwindSafe for ErrorImpl<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: RefUnwindSafe,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: RefUnwindSafe,",1,["cairo_native::error::compile::ErrorImpl"]],["impl RefUnwindSafe for Error",1,["cairo_native::error::jit_engine::Error"]],["impl RefUnwindSafe for ErrorImpl",1,["cairo_native::error::jit_engine::ErrorImpl"]],["impl RefUnwindSafe for Error",1,["cairo_native::error::libfuncs::Error"]],["impl RefUnwindSafe for ErrorImpl",1,["cairo_native::error::libfuncs::ErrorImpl"]],["impl RefUnwindSafe for Error",1,["cairo_native::error::types::Error"]],["impl RefUnwindSafe for ErrorImpl",1,["cairo_native::error::types::ErrorImpl"]],["impl RefUnwindSafe for ContractExecutionResult",1,["cairo_native::execution_result::ContractExecutionResult"]],["impl<'m> !RefUnwindSafe for NativeExecutor<'m>",1,["cairo_native::executor::NativeExecutor"]],["impl RefUnwindSafe for LLVMCompileError",1,["cairo_native::ffi::LLVMCompileError"]],["impl RefUnwindSafe for ExecutionResult",1,["cairo_native::jit_runner::ExecutionResult"]],["impl<'ctx, 'this> !RefUnwindSafe for LibfuncHelper<'ctx, 'this>",1,["cairo_native::libfuncs::LibfuncHelper"]],["impl<'ctx, 'a> RefUnwindSafe for BranchTarget<'ctx, 'a>",1,["cairo_native::libfuncs::BranchTarget"]],["impl RefUnwindSafe for DebugUtils",1,["cairo_native::metadata::debug_utils::DebugUtils"]],["impl RefUnwindSafe for EnumSnapshotVariantsMeta",1,["cairo_native::metadata::enum_snapshot_variants::EnumSnapshotVariantsMeta"]],["impl RefUnwindSafe for GasMetadata",1,["cairo_native::metadata::gas::GasMetadata"]],["impl RefUnwindSafe for GasCost",1,["cairo_native::metadata::gas::GasCost"]],["impl RefUnwindSafe for MetadataComputationConfig",1,["cairo_native::metadata::gas::MetadataComputationConfig"]],["impl<T> RefUnwindSafe for PrimeModuloMeta<T>where\n T: RefUnwindSafe,",1,["cairo_native::metadata::prime_modulo::PrimeModuloMeta"]],["impl RefUnwindSafe for ReallocBindingsMeta",1,["cairo_native::metadata::realloc_bindings::ReallocBindingsMeta"]],["impl RefUnwindSafe for RuntimeBindingsMeta",1,["cairo_native::metadata::runtime_bindings::RuntimeBindingsMeta"]],["impl<TType, TLibfunc> !RefUnwindSafe for SnapshotClonesMeta<TType, TLibfunc>",1,["cairo_native::metadata::snapshot_clones::SnapshotClonesMeta"]],["impl RefUnwindSafe for SyscallHandlerMeta",1,["cairo_native::metadata::syscall_handler::SyscallHandlerMeta"]],["impl RefUnwindSafe for TailRecursionMeta",1,["cairo_native::metadata::tail_recursion::TailRecursionMeta"]],["impl !RefUnwindSafe for MetadataStorage",1,["cairo_native::metadata::MetadataStorage"]],["impl<'m> !RefUnwindSafe for NativeModule<'m>",1,["cairo_native::module::NativeModule"]],["impl RefUnwindSafe for U256",1,["cairo_native::starknet::U256"]],["impl RefUnwindSafe for ExecutionInfo",1,["cairo_native::starknet::ExecutionInfo"]],["impl RefUnwindSafe for BlockInfo",1,["cairo_native::starknet::BlockInfo"]],["impl RefUnwindSafe for TxInfo",1,["cairo_native::starknet::TxInfo"]],["impl RefUnwindSafe for Secp256k1Point",1,["cairo_native::starknet::Secp256k1Point"]],["impl RefUnwindSafe for Secp256r1Point",1,["cairo_native::starknet::Secp256r1Point"]],["impl RefUnwindSafe for PRIME",1,["cairo_native::types::felt252::PRIME"]],["impl RefUnwindSafe for HALF_PRIME",1,["cairo_native::types::felt252::HALF_PRIME"]],["impl RefUnwindSafe for Felt252",1,["cairo_native::types::felt252::Felt252"]],["impl<'a, T> RefUnwindSafe for WithSelf<'a, T>where\n T: RefUnwindSafe,",1,["cairo_native::types::WithSelf"]],["impl RefUnwindSafe for LayoutError",1,["cairo_native::utils::LayoutError"]],["impl RefUnwindSafe for JITValue",1,["cairo_native::values::JITValue"]]], "cairo_native_compile":[["impl RefUnwindSafe for Args",1,["cairo_native_compile::Args"]],["impl RefUnwindSafe for CmdLine",1,["cairo_native_compile::CmdLine"]],["impl RefUnwindSafe for CompilerOutput",1,["cairo_native_compile::CompilerOutput"]]], "cairo_native_dump":[["impl RefUnwindSafe for CmdLine",1,["cairo_native_dump::CmdLine"]],["impl RefUnwindSafe for CompilerOutput",1,["cairo_native_dump::CompilerOutput"]]], "cairo_native_run":[["impl RefUnwindSafe for CmdLine",1,["cairo_native_run::CmdLine"]],["impl RefUnwindSafe for StdioOrPath",1,["cairo_native_run::StdioOrPath"]]] diff --git a/implementors/core/panic/unwind_safe/trait.UnwindSafe.js b/implementors/core/panic/unwind_safe/trait.UnwindSafe.js index 3934019d4..8b0156396 100644 --- a/implementors/core/panic/unwind_safe/trait.UnwindSafe.js +++ b/implementors/core/panic/unwind_safe/trait.UnwindSafe.js @@ -1,5 +1,5 @@ (function() {var implementors = { -"cairo_native":[["impl<'a, K> !UnwindSafe for ProgramCache<'a, K>",1,["cairo_native::cache::ProgramCache"]],["impl UnwindSafe for NativeContext",1,["cairo_native::context::NativeContext"]],["impl UnwindSafe for DebugInfo",1,["cairo_native::debug_info::DebugInfo"]],["impl<'c> UnwindSafe for DebugLocations<'c>",1,["cairo_native::debug_info::DebugLocations"]],["impl<TType, TLibfunc> UnwindSafe for Error<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: UnwindSafe,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: UnwindSafe,",1,["cairo_native::error::compile::Error"]],["impl<TType, TLibfunc> UnwindSafe for ErrorImpl<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: UnwindSafe,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: UnwindSafe,",1,["cairo_native::error::compile::ErrorImpl"]],["impl UnwindSafe for Error",1,["cairo_native::error::jit_engine::Error"]],["impl UnwindSafe for ErrorImpl",1,["cairo_native::error::jit_engine::ErrorImpl"]],["impl UnwindSafe for Error",1,["cairo_native::error::libfuncs::Error"]],["impl UnwindSafe for ErrorImpl",1,["cairo_native::error::libfuncs::ErrorImpl"]],["impl UnwindSafe for Error",1,["cairo_native::error::types::Error"]],["impl UnwindSafe for ErrorImpl",1,["cairo_native::error::types::ErrorImpl"]],["impl UnwindSafe for ContractExecutionResult",1,["cairo_native::execution_result::ContractExecutionResult"]],["impl<'m> !UnwindSafe for NativeExecutor<'m>",1,["cairo_native::executor::NativeExecutor"]],["impl UnwindSafe for LLVMCompileError",1,["cairo_native::ffi::LLVMCompileError"]],["impl UnwindSafe for ExecutionResult",1,["cairo_native::jit_runner::ExecutionResult"]],["impl<'ctx, 'this> !UnwindSafe for LibfuncHelper<'ctx, 'this>",1,["cairo_native::libfuncs::LibfuncHelper"]],["impl<'ctx, 'a> UnwindSafe for BranchTarget<'ctx, 'a>",1,["cairo_native::libfuncs::BranchTarget"]],["impl UnwindSafe for DebugUtils",1,["cairo_native::metadata::debug_utils::DebugUtils"]],["impl UnwindSafe for EnumSnapshotVariantsMeta",1,["cairo_native::metadata::enum_snapshot_variants::EnumSnapshotVariantsMeta"]],["impl UnwindSafe for GasMetadata",1,["cairo_native::metadata::gas::GasMetadata"]],["impl UnwindSafe for GasCost",1,["cairo_native::metadata::gas::GasCost"]],["impl UnwindSafe for MetadataComputationConfig",1,["cairo_native::metadata::gas::MetadataComputationConfig"]],["impl<T> UnwindSafe for PrimeModuloMeta<T>where\n T: UnwindSafe,",1,["cairo_native::metadata::prime_modulo::PrimeModuloMeta"]],["impl UnwindSafe for ReallocBindingsMeta",1,["cairo_native::metadata::realloc_bindings::ReallocBindingsMeta"]],["impl UnwindSafe for RuntimeBindingsMeta",1,["cairo_native::metadata::runtime_bindings::RuntimeBindingsMeta"]],["impl<TType, TLibfunc> !UnwindSafe for SnapshotClonesMeta<TType, TLibfunc>",1,["cairo_native::metadata::snapshot_clones::SnapshotClonesMeta"]],["impl UnwindSafe for SyscallHandlerMeta",1,["cairo_native::metadata::syscall_handler::SyscallHandlerMeta"]],["impl UnwindSafe for TailRecursionMeta",1,["cairo_native::metadata::tail_recursion::TailRecursionMeta"]],["impl !UnwindSafe for MetadataStorage",1,["cairo_native::metadata::MetadataStorage"]],["impl<'m> !UnwindSafe for NativeModule<'m>",1,["cairo_native::module::NativeModule"]],["impl UnwindSafe for U256",1,["cairo_native::starknet::U256"]],["impl UnwindSafe for ExecutionInfo",1,["cairo_native::starknet::ExecutionInfo"]],["impl UnwindSafe for BlockInfo",1,["cairo_native::starknet::BlockInfo"]],["impl UnwindSafe for TxInfo",1,["cairo_native::starknet::TxInfo"]],["impl UnwindSafe for Secp256k1Point",1,["cairo_native::starknet::Secp256k1Point"]],["impl UnwindSafe for Secp256r1Point",1,["cairo_native::starknet::Secp256r1Point"]],["impl UnwindSafe for PRIME",1,["cairo_native::types::felt252::PRIME"]],["impl UnwindSafe for Felt252",1,["cairo_native::types::felt252::Felt252"]],["impl<'a, T> UnwindSafe for WithSelf<'a, T>where\n T: RefUnwindSafe,",1,["cairo_native::types::WithSelf"]],["impl UnwindSafe for LayoutError",1,["cairo_native::utils::LayoutError"]],["impl UnwindSafe for JITValue",1,["cairo_native::values::JITValue"]]], +"cairo_native":[["impl<'a, K> !UnwindSafe for ProgramCache<'a, K>",1,["cairo_native::cache::ProgramCache"]],["impl UnwindSafe for NativeContext",1,["cairo_native::context::NativeContext"]],["impl UnwindSafe for DebugInfo",1,["cairo_native::debug_info::DebugInfo"]],["impl<'c> UnwindSafe for DebugLocations<'c>",1,["cairo_native::debug_info::DebugLocations"]],["impl<TType, TLibfunc> UnwindSafe for Error<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: UnwindSafe,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: UnwindSafe,",1,["cairo_native::error::compile::Error"]],["impl<TType, TLibfunc> UnwindSafe for ErrorImpl<TType, TLibfunc>where\n <<TLibfunc as GenericLibfunc>::Concrete as LibfuncBuilder<TType, TLibfunc>>::Error: UnwindSafe,\n <<TType as GenericType>::Concrete as TypeBuilder<TType, TLibfunc>>::Error: UnwindSafe,",1,["cairo_native::error::compile::ErrorImpl"]],["impl UnwindSafe for Error",1,["cairo_native::error::jit_engine::Error"]],["impl UnwindSafe for ErrorImpl",1,["cairo_native::error::jit_engine::ErrorImpl"]],["impl UnwindSafe for Error",1,["cairo_native::error::libfuncs::Error"]],["impl UnwindSafe for ErrorImpl",1,["cairo_native::error::libfuncs::ErrorImpl"]],["impl UnwindSafe for Error",1,["cairo_native::error::types::Error"]],["impl UnwindSafe for ErrorImpl",1,["cairo_native::error::types::ErrorImpl"]],["impl UnwindSafe for ContractExecutionResult",1,["cairo_native::execution_result::ContractExecutionResult"]],["impl<'m> !UnwindSafe for NativeExecutor<'m>",1,["cairo_native::executor::NativeExecutor"]],["impl UnwindSafe for LLVMCompileError",1,["cairo_native::ffi::LLVMCompileError"]],["impl UnwindSafe for ExecutionResult",1,["cairo_native::jit_runner::ExecutionResult"]],["impl<'ctx, 'this> !UnwindSafe for LibfuncHelper<'ctx, 'this>",1,["cairo_native::libfuncs::LibfuncHelper"]],["impl<'ctx, 'a> UnwindSafe for BranchTarget<'ctx, 'a>",1,["cairo_native::libfuncs::BranchTarget"]],["impl UnwindSafe for DebugUtils",1,["cairo_native::metadata::debug_utils::DebugUtils"]],["impl UnwindSafe for EnumSnapshotVariantsMeta",1,["cairo_native::metadata::enum_snapshot_variants::EnumSnapshotVariantsMeta"]],["impl UnwindSafe for GasMetadata",1,["cairo_native::metadata::gas::GasMetadata"]],["impl UnwindSafe for GasCost",1,["cairo_native::metadata::gas::GasCost"]],["impl UnwindSafe for MetadataComputationConfig",1,["cairo_native::metadata::gas::MetadataComputationConfig"]],["impl<T> UnwindSafe for PrimeModuloMeta<T>where\n T: UnwindSafe,",1,["cairo_native::metadata::prime_modulo::PrimeModuloMeta"]],["impl UnwindSafe for ReallocBindingsMeta",1,["cairo_native::metadata::realloc_bindings::ReallocBindingsMeta"]],["impl UnwindSafe for RuntimeBindingsMeta",1,["cairo_native::metadata::runtime_bindings::RuntimeBindingsMeta"]],["impl<TType, TLibfunc> !UnwindSafe for SnapshotClonesMeta<TType, TLibfunc>",1,["cairo_native::metadata::snapshot_clones::SnapshotClonesMeta"]],["impl UnwindSafe for SyscallHandlerMeta",1,["cairo_native::metadata::syscall_handler::SyscallHandlerMeta"]],["impl UnwindSafe for TailRecursionMeta",1,["cairo_native::metadata::tail_recursion::TailRecursionMeta"]],["impl !UnwindSafe for MetadataStorage",1,["cairo_native::metadata::MetadataStorage"]],["impl<'m> !UnwindSafe for NativeModule<'m>",1,["cairo_native::module::NativeModule"]],["impl UnwindSafe for U256",1,["cairo_native::starknet::U256"]],["impl UnwindSafe for ExecutionInfo",1,["cairo_native::starknet::ExecutionInfo"]],["impl UnwindSafe for BlockInfo",1,["cairo_native::starknet::BlockInfo"]],["impl UnwindSafe for TxInfo",1,["cairo_native::starknet::TxInfo"]],["impl UnwindSafe for Secp256k1Point",1,["cairo_native::starknet::Secp256k1Point"]],["impl UnwindSafe for Secp256r1Point",1,["cairo_native::starknet::Secp256r1Point"]],["impl UnwindSafe for PRIME",1,["cairo_native::types::felt252::PRIME"]],["impl UnwindSafe for HALF_PRIME",1,["cairo_native::types::felt252::HALF_PRIME"]],["impl UnwindSafe for Felt252",1,["cairo_native::types::felt252::Felt252"]],["impl<'a, T> UnwindSafe for WithSelf<'a, T>where\n T: RefUnwindSafe,",1,["cairo_native::types::WithSelf"]],["impl UnwindSafe for LayoutError",1,["cairo_native::utils::LayoutError"]],["impl UnwindSafe for JITValue",1,["cairo_native::values::JITValue"]]], "cairo_native_compile":[["impl UnwindSafe for Args",1,["cairo_native_compile::Args"]],["impl UnwindSafe for CmdLine",1,["cairo_native_compile::CmdLine"]],["impl UnwindSafe for CompilerOutput",1,["cairo_native_compile::CompilerOutput"]]], "cairo_native_dump":[["impl UnwindSafe for CmdLine",1,["cairo_native_dump::CmdLine"]],["impl UnwindSafe for CompilerOutput",1,["cairo_native_dump::CompilerOutput"]]], "cairo_native_run":[["impl UnwindSafe for CmdLine",1,["cairo_native_run::CmdLine"]],["impl UnwindSafe for StdioOrPath",1,["cairo_native_run::StdioOrPath"]]] diff --git a/implementors/lazy_static/trait.LazyStatic.js b/implementors/lazy_static/trait.LazyStatic.js index 978273cb9..0adb3af21 100644 --- a/implementors/lazy_static/trait.LazyStatic.js +++ b/implementors/lazy_static/trait.LazyStatic.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"cairo_native":[["impl LazyStatic for PRIME"]] +"cairo_native":[["impl LazyStatic for PRIME"],["impl LazyStatic for HALF_PRIME"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/search-index.js b/search-index.js index 22aa47ac7..636d6da63 100644 --- a/search-index.js +++ b/search-index.js @@ -1,8 +1,8 @@ var searchIndex = JSON.parse('{\ -"cairo_native":{"doc":"This crate is a compiler and JIT engine that transforms …","t":"DDLLLLLLALLLLFAAAFFAALLLLLLLAAAFFLMMLLLLLLLLLLLLLLALLLLLLLLLALLLLAALLDLLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLFLLLLLLLLLLLLLLLDDLLLLLLLLLLLLLLLLMMLLMMLLLLLLLLLLLLLLMMLLLLLLMMLLLLLLLLCCCCAAAAGNDENNNNLLLLLLLLLLLLLLLLLFFLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLMMMMDENNNNNNGNNLLLLLLLLLLLLLLLLLFFFFLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLMMMMDENNNNGNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLDENNNNNGNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLDLLLMMLLLLMMLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLLLLEQNIDNLALAAALLLLALAKALLLALAAAAAAALLAALLLKAAAALLLLLLLLLLLLLLAAALLLLLLLLAAAAAAAAALLLLLLFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDLLALALLALLLLLLAALLLLLLLLAAAALLLLLLDLLLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLDDDLMLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLGDLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLLLLLLLDDDDIGDDLMMMMLLLLLLLLLLLLKMMLLMKKMLLLLLLLKKLLLLLLKKMMKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKKKKKKKKKKKMKKKKKKKKKKKKMKKLMLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLMLLLLLLQIDLALLLLALLAKKALLLLAAALLALLLLLLAAALLALLKLKLAAAAALLLLLLLALAAAALLLLLAAAAAAALLKLFFFFFFFGFFFDDLLLLFLLLLLLFLLLLLLLLLLLLLLLLLLLLLLLLLLFFFFFFFFFFFFFFFFFFFFFFFFFDILLLKKFLLFFLLLLLLFFFFFFLLLFFLFFFFLFLLLLLLLFLLLLLFLLLNNNNNNENNNNNNILLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLMMMMMMM","n":["ExecutionResult","LLVMCompileError","__clone_box","__clone_box","borrow","borrow","borrow_mut","borrow_mut","cache","clone","clone","clone_into","clone_into","compile","context","debug_info","error","execute","execute_contract","execution_result","executor","fmt","fmt","fmt","from","from","into","into","libfuncs","metadata","module","module_to_object","object_to_shared_lib","provide","remaining_gas","return_values","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","starknet","to_owned","to_owned","to_string","try_from","try_from","try_into","try_into","type_id","type_id","types","upcast","upcast","upcast_mut","upcast_mut","utils","values","vzip","vzip","ProgramCache","borrow","borrow_mut","compile_and_insert","context","fmt","from","get","into","new","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","NativeContext","borrow","borrow_mut","compile","default","eq","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","from","initialize_mlir","into","new","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","DebugInfo","DebugLocations","__clone_box","__clone_box","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","extract","extract","fmt","fmt","from","from","funcs","funcs","into","into","libfunc_declarations","libfunc_declarations","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","statements","statements","to_owned","to_owned","try_from","try_from","try_into","try_into","type_declarations","type_declarations","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","CompileError","CoreLibfuncBuilderError","CoreTypeBuilderError","JitRunnerError","compile","jit_engine","libfuncs","types","CompileError","EditStateError","Error","ErrorImpl","LibfuncBuilderError","MlirError","ProgramRegistryError","TypeBuilderError","borrow","borrow","borrow_mut","borrow_mut","deref","fmt","fmt","fmt","fmt","from","from","from","from","from","from","into","into","make_libfunc_builder_error","make_type_builder_error","provide","provide","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","source","source","source","to_string","to_string","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","error","error","libfunc_id","type_id","Error","ErrorImpl","InsufficientGasError","LayoutError","MissingParameter","MissingSyscallHandler","MlirError","ProgramRegistryError","RunnerError","TypeBuilderError","UnexpectedValue","borrow","borrow","borrow_mut","borrow_mut","deref","fmt","fmt","fmt","fmt","from","from","from","from","from","from","into","into","make_insufficient_gas_error","make_missing_parameter","make_type_builder_error","make_unexpected_value_error","provide","provide","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","source","source","source","to_string","to_string","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","error","have","needed","type_id","Error","ErrorImpl","LayoutError","LayoutErrorPolyfill","MlirError","ProgramRegistryError","Result","TryFromIntError","borrow","borrow","borrow_mut","borrow_mut","deref","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","into","into","provide","provide","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","source","source","source","to_string","to_string","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","Error","ErrorImpl","LayoutError","LayoutErrorPolyfill","LibFuncError","MlirError","ProgramRegistryError","Result","TryFromIntError","borrow","borrow","borrow_mut","borrow_mut","deref","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","into","into","provide","provide","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","source","source","source","to_string","to_string","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","ContractExecutionResult","borrow","borrow_mut","default","error_msg","failure_flag","fmt","from","from_execution_result","into","remaining_gas","return_values","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","NativeExecutor","borrow","borrow_mut","execute","execute_contract","from","get_module","get_module_mut","get_program_registry","into","new","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","BranchTarget","Error","Jump","LibfuncBuilder","LibfuncHelper","Return","__clone_box","ap_tracking","append_block","array","bitwise","bool","borrow","borrow","borrow_mut","borrow_mut","box","br","branch_align","build","cast","clone","clone_into","cond_br","debug","deref","drop","dup","ec","enum","felt252","felt252_dict","felt252_dict_entry","from","from","function_call","gas","init_block","into","into","is_function_call","mem","nullable","pedersen","poseidon","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","snapshot_take","stark_net","struct","switch","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","uint128","uint16","uint256","uint32","uint512","uint64","uint8","unconditional_jump","unwrap_non_zero","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","build","build_disable","build_enable","build_revoke","build","build_append","build_get","build_len","build_new","build_pop_front","build_pop_front_consume","build_slice","build_snapshot_pop_back","build_snapshot_pop_front","build","build","build_bool_not","build_bool_to_felt252","build","build_into_box","build_unbox","build","build","build_downcast","build_upcast","build","build_print","build","build","build","build_is_zero","build_neg","build_point_from_x","build_state_add","build_state_add_mul","build_state_finalize","build_state_init","build_try_new","build_unwrap_point","build_zero","build","build_init","build_match","build_snapshot_match","build","build_binary_operation","build_const","build_is_zero","build","build_new","build_squash","build","build_finalize","build_get","build","build","build_builtin_withdraw_gas","build_get_builtin_costs","build_withdraw_gas","build","build_alloc_local","build_finalize_locals","build_rename","build_store_local","build_store_temp","build","build","build_pedersen","build","build_hades_permutation","build","build","build_call_contract","build_class_hash_const","build_class_hash_to_felt252","build_class_hash_try_from_felt252","build_contract_address_const","build_contract_address_to_felt252","build_contract_address_try_from_felt252","build_deploy","build_emit_event","build_get_block_hash","build_get_execution_info","build_keccak","build_library_call","build_replace_class","build_send_message_to_l1","build_storage_address_from_base","build_storage_address_from_base_and_offset","build_storage_address_to_felt252","build_storage_address_try_from_felt252","build_storage_base_address_const","build_storage_base_address_from_felt252","build_storage_read","build_storage_write","build","build_construct","build_deconstruct","build","build_byte_reverse","build_const","build_divmod","build_equal","build_from_felt252","build_guarantee_mul","build_guarantee_verify","build_is_zero","build_operation","build_square_root","build_to_felt252","build","build_const","build_divmod","build_equal","build_from_felt252","build_is_zero","build_operation","build_square_root","build_to_felt252","build_widemul","build","build_divmod","build_is_zero","build_square_root","build","build_const","build_divmod","build_equal","build_from_felt252","build_is_zero","build_operation","build_square_root","build_to_felt252","build_widemul","build","build_divmod_u256","build","build_const","build_divmod","build_equal","build_from_felt252","build_is_zero","build_operation","build_square_root","build_to_felt252","build_widemul","build","build_const","build_divmod","build_equal","build_from_felt252","build_is_zero","build_operation","build_square_root","build_to_felt252","build_widemul","build","build","MetadataStorage","borrow","borrow_mut","debug_utils","default","enum_snapshot_variants","fmt","from","gas","get","get_mut","get_or_insert_with","insert","into","new","prime_modulo","realloc_bindings","remove","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","runtime_bindings","snapshot_clones","syscall_handler","tail_recursion","try_from","try_into","type_id","upcast","upcast_mut","vzip","DebugUtils","borrow","borrow_mut","breakpoint_marker","default","fmt","from","into","print_i1","print_pointer","register_impls","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","EnumSnapshotVariantsMeta","borrow","borrow_mut","default","from","get_variants","into","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","set_mapping","try_from","try_into","type_id","upcast","upcast_mut","vzip","GasCost","GasMetadata","MetadataComputationConfig","__clone_box","ap_change_info","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","default","fmt","from","from","from","function_set_costs","gas_info","get_gas_cost_for_statement","get_initial_required_gas","into","into","into","new","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","upcast_mut","upcast_mut","upcast_mut","vzip","vzip","vzip","PrimeModuloMeta","borrow","borrow_mut","fmt","from","into","new","prime","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","ReallocBindingsMeta","borrow","borrow_mut","fmt","free","from","into","new","realloc","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","RuntimeBindingsMeta","borrow","borrow_mut","default","dict_alloc_free","dict_alloc_new","dict_get","dict_insert","fmt","from","into","libfunc_debug_print","libfunc_ec_point_from_x_nz","libfunc_ec_point_try_new_nz","libfunc_ec_state_add","libfunc_ec_state_add_mul","libfunc_ec_state_try_finalize_nz","libfunc_hades_permutation","libfunc_pedersen","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","CloneFn","SnapshotClonesMeta","borrow","borrow_mut","default","from","into","register","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","wrap_invoke","SyscallHandlerMeta","__clone_box","as_ptr","borrow","borrow_mut","clone","clone_into","drop","eq","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","from","into","new","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","to_owned","try_from","try_into","type_id","upcast","upcast_mut","vzip","TailRecursionMeta","borrow","borrow_mut","depth_counter","fmt","from","into","new","recursion_target","return_target","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","set_return_target","try_from","try_into","type_id","upcast","upcast_mut","vzip","NativeModule","borrow","borrow_mut","fmt","from","get_metadata","get_required_init_gas","insert_metadata","into","metadata","module","new","program_registry","remove_metadata","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","BlockInfo","ExecutionInfo","Secp256k1Point","Secp256r1Point","StarkNetSyscallHandler","SyscallResult","TxInfo","U256","__clone_box","account_contract_address","block_info","block_number","block_timestamp","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","call_contract","caller_address","chain_id","clone","clone_into","contract_address","deploy","emit_event","entry_point_selector","fmt","from","from","from","from","from","from","get_block_hash","get_execution_info","into","into","into","into","into","into","keccak","library_call","max_fee","nonce","pop_log","replace_class","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","secp256k1_add","secp256k1_get_point_from_x","secp256k1_get_xy","secp256k1_mul","secp256k1_new","secp256r1_add","secp256r1_get_point_from_x","secp256r1_get_xy","secp256r1_mul","secp256r1_new","send_message_to_l1","sequencer_address","set_account_contract_address","set_block_number","set_block_timestamp","set_caller_address","set_chain_id","set_contract_address","set_max_fee","set_nonce","set_sequencer_address","set_signature","set_transaction_hash","set_version","signature","storage_read","storage_write","to_owned","transaction_hash","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","tx_info","type_id","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","upcast","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","version","vzip","vzip","vzip","vzip","vzip","vzip","Error","TypeBuilder","WithSelf","__clone_box","array","as_bits","as_byte_slice","as_ref","as_slice_of","bitwise","borrow","borrow_mut","box","build","build_drop","builtin_costs","clone","clone_into","deref","dim","ec_op","ec_point","ec_state","encode_hex","encode_hex_upper","enum","eq","equivalent","equivalent","equivalent","equivalent","equivalent","felt252","felt252_dict","felt252_dict_entry","fmt","from","gas_builtin","get_hash","hash","integer_width","into","layout","new","non_zero","nullable","pedersen","poseidon","range_check","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","segment_arena","self_ty","snapshot","squashed_felt252_dict","stark_net","struct","to_owned","try_as_bits","try_from","try_into","type_id","uint128","uint128_mul_guarantee","uint16","uint32","uint64","uint8","uninitialized","upcast","upcast_mut","variants","vzip","build","build","build","build","build","build","build","TypeLayout","build","get_layout_for_variants","get_type_for_variants","Felt252","PRIME","borrow","borrow","borrow_mut","borrow_mut","build","deref","fmt","from","from","into","into","register_prime_modulo_meta","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","build","build","build","build","build","build","build","build","build","build","build","build","build_class_hash","build_contract_address","build_storage_address","build_storage_base_address","build_system","build","build","build","build","build","build","build","build","LayoutError","ProgramRegistryExt","__clone_box","borrow","borrow_mut","build_type","build_type_with_layout","cairo_to_sierra","clone","clone_into","create_engine","debug_with","eq","equivalent","equivalent","equivalent","equivalent","equivalent","felt252_bigint","felt252_short_str","felt252_str","find_entry_point","find_entry_point_by_idx","find_function_id","fmt","fmt","from","generate_function_name","get_integer_layout","into","layout_repeat","next_multiple_of_u32","next_multiple_of_usize","padding_needed_for","provide","register_runtime_symbols","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","run_pass_manager","to_owned","to_string","try_from","try_into","type_id","u32_vec_to_felt","upcast","upcast_mut","vzip","Array","EcPoint","EcState","Enum","Felt252","Felt252Dict","JITValue","Struct","Uint128","Uint16","Uint32","Uint64","Uint8","ValueBuilder","__clone_box","borrow","borrow_mut","clone","clone_into","eq","equivalent","equivalent","equivalent","equivalent","equivalent","felt_str","fmt","from","from","from","from","from","from","from","from","from","from","into","is_complex","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","to_owned","try_from","try_into","type_id","upcast","upcast_mut","vzip","debug_name","debug_name","debug_name","fields","tag","value","value"],"q":[[0,"cairo_native"],[69,"cairo_native::cache"],[92,"cairo_native::context"],[121,"cairo_native::debug_info"],[177,"cairo_native::error"],[185,"cairo_native::error::compile"],[245,"cairo_native::error::compile::ErrorImpl"],[249,"cairo_native::error::jit_engine"],[314,"cairo_native::error::jit_engine::ErrorImpl"],[318,"cairo_native::error::libfuncs"],[379,"cairo_native::error::types"],[441,"cairo_native::execution_result"],[466,"cairo_native::executor"],[490,"cairo_native::libfuncs"],[575,"cairo_native::libfuncs::ap_tracking"],[579,"cairo_native::libfuncs::array"],[589,"cairo_native::libfuncs::bitwise"],[590,"cairo_native::libfuncs::bool"],[593,"cairo_native::libfuncs::box"],[596,"cairo_native::libfuncs::branch_align"],[597,"cairo_native::libfuncs::cast"],[600,"cairo_native::libfuncs::debug"],[602,"cairo_native::libfuncs::drop"],[603,"cairo_native::libfuncs::dup"],[604,"cairo_native::libfuncs::ec"],[615,"cairo_native::libfuncs::enum"],[619,"cairo_native::libfuncs::felt252"],[623,"cairo_native::libfuncs::felt252_dict"],[626,"cairo_native::libfuncs::felt252_dict_entry"],[629,"cairo_native::libfuncs::function_call"],[630,"cairo_native::libfuncs::gas"],[634,"cairo_native::libfuncs::mem"],[640,"cairo_native::libfuncs::nullable"],[641,"cairo_native::libfuncs::pedersen"],[643,"cairo_native::libfuncs::poseidon"],[645,"cairo_native::libfuncs::snapshot_take"],[646,"cairo_native::libfuncs::stark_net"],[670,"cairo_native::libfuncs::struct"],[673,"cairo_native::libfuncs::uint128"],[685,"cairo_native::libfuncs::uint16"],[695,"cairo_native::libfuncs::uint256"],[699,"cairo_native::libfuncs::uint32"],[709,"cairo_native::libfuncs::uint512"],[711,"cairo_native::libfuncs::uint64"],[721,"cairo_native::libfuncs::uint8"],[731,"cairo_native::libfuncs::unconditional_jump"],[732,"cairo_native::libfuncs::unwrap_non_zero"],[733,"cairo_native::metadata"],[768,"cairo_native::metadata::debug_utils"],[792,"cairo_native::metadata::enum_snapshot_variants"],[813,"cairo_native::metadata::gas"],[879,"cairo_native::metadata::prime_modulo"],[900,"cairo_native::metadata::realloc_bindings"],[922,"cairo_native::metadata::runtime_bindings"],[954,"cairo_native::metadata::snapshot_clones"],[976,"cairo_native::metadata::syscall_handler"],[1008,"cairo_native::metadata::tail_recursion"],[1032,"cairo_native::module"],[1059,"cairo_native::starknet"],[1223,"cairo_native::types"],[1301,"cairo_native::types::array"],[1302,"cairo_native::types::bitwise"],[1303,"cairo_native::types::box"],[1304,"cairo_native::types::builtin_costs"],[1305,"cairo_native::types::ec_op"],[1306,"cairo_native::types::ec_point"],[1307,"cairo_native::types::ec_state"],[1308,"cairo_native::types::enum"],[1312,"cairo_native::types::felt252"],[1352,"cairo_native::types::felt252_dict"],[1353,"cairo_native::types::felt252_dict_entry"],[1354,"cairo_native::types::gas_builtin"],[1355,"cairo_native::types::non_zero"],[1356,"cairo_native::types::nullable"],[1357,"cairo_native::types::pedersen"],[1358,"cairo_native::types::poseidon"],[1359,"cairo_native::types::range_check"],[1360,"cairo_native::types::segment_arena"],[1361,"cairo_native::types::snapshot"],[1362,"cairo_native::types::squashed_felt252_dict"],[1363,"cairo_native::types::stark_net"],[1369,"cairo_native::types::struct"],[1370,"cairo_native::types::uint128"],[1371,"cairo_native::types::uint128_mul_guarantee"],[1372,"cairo_native::types::uint16"],[1373,"cairo_native::types::uint32"],[1374,"cairo_native::types::uint64"],[1375,"cairo_native::types::uint8"],[1376,"cairo_native::types::uninitialized"],[1377,"cairo_native::utils"],[1430,"cairo_native::values"],[1483,"cairo_native::values::JITValue"]],"d":["The result of the JIT execution.","","","","","","","","","","","","","Run the compiler on a program. The compiled program is …","","Extracts useful debugging information from cairo programs …","Various error types used thorough the crate.","Execute a function on an engine loaded with a Sierra …","Utility function to make it easier to execute contracts. …","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Compiler libfunc infrastructure","Code generation metadata","","Make sure to call","","","","","","","","","","","","","","","","","","","Starknet related code for cairo_native","","","","","","","","","","Compiler type infrastructure","","","","","Various utilities","JIT params and return values de/serialization","","","A Cache for programs with the same context.","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","","Context of IRs, dialects and passes for Cairo programs …","","","Compiles a sierra program into MLIR and then lowers to …","","","","","","","","","Returns the argument unchanged.","Initialize an MLIR context.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Starknet contract execution result.","","","","","","","Returns the argument unchanged.","Convert a [ExecuteResult] to a [NativeExecutionResult]","Calls U::from(self).","","","","","","","","","","","","","","","","A MLIR JIT execution engine in the context of Cairo Native.","","","Execute a program with the given params.","Execute a contract with the given calldata.","Returns the argument unchanged.","","","","Calls U::from(self).","","","","","","","","","","","","","","","A libfunc branching target.","Error type returned by this trait’s methods.","A block within the current libfunc.","Generation of MLIR operations from their Sierra …","Helper struct which contains logic generation for extra …","A statement’s branch target by its index.","","AP tracking libfuncs","Inserts a new block after all the current libfunc’s …","Array libfuncs","Bitwise libfuncs","Boolean libfuncs","","","","","Box libfuncs","Creates an unconditional branching operation out of the …","Branch alignment libfunc","Generate the MLIR operations.","Casting libfuncs","","","Creates a conditional binary branching operation, …","Debug libfuncs","","AP tracking libfuncs","State value duplication libfunc","Elliptic curve libfuncs","Enum-related libfuncs","felt252-related libfuncs","felt252 dictionary libfuncs","felt252 dictionary entry libfuncs","Returns the argument unchanged.","Returns the argument unchanged.","Function call libfuncs","Gas management libfuncs","Return the initialization block.","Calls U::from(self).","Calls U::from(self).","Return the target function if the statement is a function …","Memory-related libfuncs","Nullable libfuncs","Pedersen hashing libfuncs","Poseidon hashing libfuncs","","","","","","","","","","","","","","","Snapshot taking libfuncs","StarkNet libfuncs","Struct-related libfuncs","Creates a conditional multi-branching operation, …","","","","","","","","u128-related libfuncs","u16-related libfuncs","u256-related libfuncs","u32-related libfuncs","u512-related libfuncs","u64-related libfuncs","u8-related libfuncs","Unconditional jump libfunc","Non-zero unwrapping libfuncs","","","","","","","Select and call the correct libfunc builder function from …","Generate MLIR operations for the disable_ap_tracking …","Generate MLIR operations for the enable_ap_tracking. …","Generate MLIR operations for the revoke_ap_tracking. …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the array_append libfunc.","Generate MLIR operations for the array_get libfunc.","Generate MLIR operations for the array_append libfunc.","Generate MLIR operations for the array_new libfunc.","Generate MLIR operations for the array_pop_front libfunc.","Generate MLIR operations for the array_pop_front_consume …","Generate MLIR operations for the array_slice libfunc.","Generate MLIR operations for the array_snapshot_pop_back …","Generate MLIR operations for the array_snapshot_pop_front …","Generate MLIR operations for the bitwise libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the bool_not_impl libfunc.","Generate MLIR operations for the unbox libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the into_box libfunc.","Generate MLIR operations for the unbox libfunc.","Generate MLIR operations for the branch_align libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the downcast libfunc.","Generate MLIR operations for the upcast libfunc.","","","Generate MLIR operations for the drop libfunc.","Generate MLIR operations for the dup libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the ec_point_is_zero libfunc.","Generate MLIR operations for the ec_neg libfunc.","Generate MLIR operations for the ec_point_from_x_nz …","Generate MLIR operations for the ec_state_add libfunc.","Generate MLIR operations for the ec_state_add_mul libfunc.","Generate MLIR operations for the ec_state_try_finalize_nz …","Generate MLIR operations for the ec_state_init libfunc.","Generate MLIR operations for the ec_point_try_new_nz …","Generate MLIR operations for the ec_point_unwrap libfunc.","Generate MLIR operations for the ec_point_zero libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the enum_init libfunc.","Generate MLIR operations for the enum_match libfunc.","Generate MLIR operations for the enum_snapshot_match …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the following libfuncs:","Generate MLIR operations for the felt252_const libfunc.","Generate MLIR operations for the felt252_is_zero libfunc.","Select and call the correct libfunc builder function from …","","","Select and call the correct libfunc builder function from …","","","Generate MLIR operations for the function_call libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the withdraw_gas_all libfunc.","Generate MLIR operations for the get_builtin_costs libfunc.","Generate MLIR operations for the withdraw_gas libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the alloc_local libfunc.","Generate MLIR operations for the finalize_locals libfunc.","Generate MLIR operations for the rename libfunc.","Generate MLIR operations for the store_local libfunc.","Generate MLIR operations for the store_temp libfunc.","Select and call the correct libfunc builder function from …","Select and call the correct libfunc builder function from …","","Select and call the correct libfunc builder function from …","","Generate MLIR operations for the snapshot_take libfunc.","Select and call the correct libfunc builder function from …","","","","","","","","","","","","","","","","","","","","","","","","Select and call the correct libfunc builder function from …","Generate MLIR operations for the struct_construct libfunc.","Generate MLIR operations for the struct_deconstruct …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u128_byte_reverse libfunc.","Generate MLIR operations for the u128_const libfunc.","Generate MLIR operations for the u128_safe_divmod libfunc.","Generate MLIR operations for the u128_equal libfunc.","Generate MLIR operations for the u128_from_felt252 libfunc.","Generate MLIR operations for the u128_guarantee_mul …","Generate MLIR operations for the u128_guarantee_verify …","Generate MLIR operations for the u128_is_zero libfunc.","Generate MLIR operations for the u128_add and u128_sub …","Generate MLIR operations for the u128_sqrt libfunc.","Generate MLIR operations for the u128_to_felt252 libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u16_const libfunc.","Generate MLIR operations for the u16_safe_divmod libfunc.","Generate MLIR operations for the u16_eq libfunc.","Generate MLIR operations for the u16_from_felt252 libfunc.","Generate MLIR operations for the u16_is_zero libfunc.","Generate MLIR operations for the u16 operation libfunc.","Generate MLIR operations for the u16_sqrt libfunc.","Generate MLIR operations for the u16_to_felt252 libfunc.","Generate MLIR operations for the u16_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u256_safe_divmod libfunc.","Generate MLIR operations for the u256_is_zero libfunc.","Generate MLIR operations for the u256_sqrt libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u32_const libfunc.","Generate MLIR operations for the u32_safe_divmod libfunc.","Generate MLIR operations for the u32_eq libfunc.","Generate MLIR operations for the u32_from_felt252 libfunc.","Generate MLIR operations for the u32_is_zero libfunc.","Generate MLIR operations for the u32 operation libfunc.","Generate MLIR operations for the u32_sqrt libfunc.","Generate MLIR operations for the u32_to_felt252 libfunc.","Generate MLIR operations for the u32_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u512_safe_divmod_by_u256 …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u64_const libfunc.","Generate MLIR operations for the u64_safe_divmod libfunc.","Generate MLIR operations for the u64_eq libfunc.","Generate MLIR operations for the u64_from_felt252 libfunc.","Generate MLIR operations for the u64_is_zero libfunc.","Generate MLIR operations for the u64 operation libfunc.","Generate MLIR operations for the u64_sqrt libfunc.","Generate MLIR operations for the u64_to_felt252 libfunc.","Generate MLIR operations for the u64_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u8_const libfunc.","Generate MLIR operations for the u8_safe_divmod libfunc.","Generate MLIR operations for the u8_eq libfunc.","Generate MLIR operations for the u8_from_felt252 libfunc.","Generate MLIR operations for the u8_is_zero libfunc.","Generate MLIR operations for the u8 operation libfunc.","Generate MLIR operations for the u8_sqrt libfunc.","Generate MLIR operations for the u8_to_felt252 libfunc.","Generate MLIR operations for the u8_widemul libfunc.","Generate MLIR operations for the jump libfunc.","Generate MLIR operations for the unwrap_non_zero libfunc.","Metadata container.","","","Debug utilities","","","","Returns the argument unchanged.","","Retrieve a reference to some metadata.","Retrieve a mutable reference to some metadata.","","Insert some metadata and return a mutable reference.","Calls U::from(self).","Create an empty metadata container.","Finite field prime modulo","Memory allocation external bindings","Remove some metadata and return its last value.","","","","","","","","Runtime library bindings","","","Tail recursion information","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","","","Holds global gas info.","Configuration for metadata computation.","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Prime modulo number metadata.","","","","Returns the argument unchanged.","Calls U::from(self).","Create the metadata from the prime number.","Return the stored prime number.","","","","","","","","","","","","","","Memory allocation realloc metadata.","","","","Calls the free function.","Returns the argument unchanged.","Calls U::from(self).","Register the bindings to the realloc C function and return …","Calls the realloc function, returns a op with 1 result: an …","","","","","","","","","","","","","","Runtime library bindings metadata.","","","","Register if necessary, then invoke the dict_alloc_new() …","Register if necessary, then invoke the dict_alloc_new() …","Register if necessary, then invoke the dict_get() function.","Register if necessary, then invoke the dict_insert() …","","Returns the argument unchanged.","Calls U::from(self).","Register if necessary, then invoke the debug::print() …","Register if necessary, then invoke the ec_point_from_x_nz()…","Register if necessary, then invoke the …","Register if necessary, then invoke the ec_state_add() …","Register if necessary, then invoke the ec_state_add_mul() …","","Register if necessary, then invoke the poseidon() function.","Register if necessary, then invoke the pedersen() function.","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","The tail recursion metadata.","","","Return the current depth counter value.","","Returns the argument unchanged.","Calls U::from(self).","Create the tail recursion meta.","Return the recursion target block.","Return the return target block, if set.","","","","","","","","Set the return target block.","","","","","","","A MLIR module in the context of Cairo Native. It is …","","","","Returns the argument unchanged.","Retrieve a reference to some stored metadata.","Given some contract function’s id, returns an option of …","Insert some metadata for the program execution and return …","Calls U::from(self).","","","","","Removes metadata","","","","","","","","","","","","","","","","","","","","","Binary representation of a u256 (in MLIR).","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Error type returned by this trait’s methods.","Generation of MLIR types from their Sierra counterparts.","","","Array type","","","","","Bitwise type","","","Box type","Build the MLIR type.","","Builtin costs type","","","","","Elliptic curve operation type","Elliptic curve point type","Elliptic curve state type","","","Enum type","","","","","","","felt252 type","felt252 dictionary type","felt252 dictionary entry type","","Returns the argument unchanged.","Gas builtin type","","","If the type is an integer (felt not included) type, return …","Calls U::from(self).","Generate the layout of the MLIR type.","","Non-zero type","Nullable type","Pedersen type","Poseidon type","Builtin costs type","","","","","","","","Segment arena type","","Snapshot type","Squashed felt252 dictionary type","StarkNet types","Struct type","","","","","","Unsigned 128-bit integer type","Unsigned 128-bit multiplication guarantee type","Unsigned 16-bit integer type","Unsigned 32-bit integer type","Unsigned 64-bit integer type","Unsigned 8-bit integer type","Uninitialized type","","","If the type is a variant type, return all possible …","","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","An MLIR type with its memory layout.","Build the MLIR type.","Extract layout for the default enum representation, its …","Extract the type and layout for the default enum …","Marker type for the PrimeModuloMeta metadata.","The felt252 prime modulo.","","","","","Build the MLIR type.","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","","","","","","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","","","","","","","","Compile a cairo program found at the given path to sierra.","","","Creates the execution engine, with all symbols registered.","Return a type that calls a closure when formatted using …","","","","","","","Parse any type that can be a bigint to a felt that can be …","Parse a short string into a felt that can be used in the …","Parse a numeric string into felt, wrapping negatives …","Returns the given entry point if present.","Returns the given entry point if present.","Given a string representing a function name, searches in …","","","Returns the argument unchanged.","Generate a function name.","Return the layout for an integer of arbitrary width.","Calls U::from(self).","Copied from std.","","","Edit: Copied from the std lib.","","","","","","","","","","","","","","","","Converts a u32 slice into a Felt252","","","","all elements need to be same type","","","","","","A JITValue is a value that can be passed to the JIT engine …","","","","","","","The ValueBuilder trait is implemented any de/serializable …","","","","","","","","","","","","String to felt","","","","","","","","Returns the argument unchanged.","","","","Calls U::from(self).","Return whether the type is considered complex or simple.","","","","","","","","","","","","","","","","","","","","",""],"i":[0,0,2,3,2,3,2,3,0,2,3,2,3,0,0,0,0,0,0,0,0,2,2,3,2,3,2,3,0,0,0,0,0,2,3,3,2,2,2,2,2,2,2,3,3,3,3,3,3,3,0,2,3,2,2,3,2,3,2,3,0,2,3,2,3,0,0,2,3,0,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,0,47,47,47,47,47,47,47,47,47,47,47,47,0,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,0,0,51,11,51,11,51,11,51,11,51,11,51,11,51,11,51,11,51,11,51,11,51,11,51,51,51,51,51,51,51,11,11,11,11,11,11,11,51,11,51,11,51,11,51,11,51,11,51,11,51,11,51,11,51,11,0,0,0,0,0,0,0,0,0,54,0,0,54,54,54,54,13,54,13,54,13,13,13,54,54,13,13,54,54,54,54,13,54,0,0,13,54,13,13,13,13,13,13,13,54,54,54,54,54,54,54,13,54,13,13,54,13,54,13,54,13,54,13,54,13,54,13,54,176,177,177,176,0,0,62,62,62,62,62,62,0,62,62,23,62,23,62,23,23,23,62,62,23,23,62,62,62,62,23,62,0,0,0,0,23,62,23,23,23,23,23,23,23,62,62,62,62,62,62,62,23,62,23,23,62,23,62,23,62,23,62,23,62,23,62,23,62,178,179,179,178,0,0,65,65,65,65,0,65,64,65,64,65,64,64,64,65,65,64,64,65,65,65,65,65,65,65,64,65,64,65,64,64,64,64,64,64,64,65,65,65,65,65,65,65,64,65,64,64,65,64,65,64,65,64,65,64,65,64,65,64,65,0,0,69,69,69,69,69,0,69,67,69,67,69,67,67,67,69,69,67,67,69,69,69,69,69,69,69,67,69,67,69,67,67,67,67,67,67,67,69,69,69,69,69,69,69,67,69,67,67,69,67,69,67,69,67,69,67,69,67,69,67,69,0,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,0,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,0,180,77,0,0,77,77,0,71,0,0,0,71,77,71,77,0,71,0,180,0,77,77,71,0,71,0,0,0,0,0,0,0,71,77,0,0,71,71,77,180,0,0,0,0,71,71,71,71,71,71,71,77,77,77,77,77,77,77,0,0,0,71,77,71,77,71,77,71,77,0,0,0,0,0,0,0,0,0,71,77,71,77,71,77,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,10,0,10,10,0,10,10,10,10,10,10,0,0,10,10,10,10,10,10,10,10,0,0,0,0,10,10,10,10,10,10,0,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,0,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,0,0,0,123,125,125,123,124,125,123,124,123,123,124,123,125,123,124,124,125,125,125,125,123,124,125,125,125,125,125,125,125,125,123,123,123,123,123,123,123,124,124,124,124,124,124,124,123,125,123,124,125,123,124,125,123,124,125,123,124,125,123,124,125,123,124,0,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,0,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,0,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,0,0,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,0,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,0,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,0,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,0,0,0,0,0,0,0,0,144,181,146,182,182,146,182,181,147,183,144,146,182,181,147,183,144,139,146,181,144,144,146,139,139,146,144,146,182,181,147,183,144,139,139,146,182,181,147,183,144,139,139,181,181,139,139,146,146,146,146,146,146,146,182,182,182,182,182,182,182,181,181,181,181,181,181,181,147,147,147,147,147,147,147,183,183,183,183,183,183,183,144,144,144,144,144,144,144,139,139,139,139,139,139,139,139,139,139,139,182,139,139,139,139,139,139,139,139,139,139,139,139,181,139,139,144,181,146,182,181,147,183,144,146,182,181,147,183,144,146,146,182,181,147,183,144,146,182,181,147,183,144,146,182,181,147,183,144,181,146,182,181,147,183,144,184,0,0,151,0,151,151,151,151,0,151,151,0,184,184,0,151,151,151,151,0,0,0,151,151,0,151,151,151,151,151,151,0,0,0,151,151,0,151,151,184,151,184,151,0,0,0,0,0,151,151,151,151,151,151,151,0,151,0,0,0,0,151,151,151,151,151,0,0,0,0,0,0,0,151,151,184,151,0,0,0,0,0,0,0,0,0,0,0,0,0,166,167,166,167,0,166,167,166,167,166,167,0,166,166,166,166,166,166,166,167,167,167,167,167,167,167,166,167,166,167,166,167,166,167,166,167,166,167,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,66,66,66,185,185,0,66,66,0,0,66,66,66,66,66,66,0,0,0,0,0,0,66,66,66,0,0,66,0,0,0,0,66,0,66,66,66,66,66,66,66,0,66,66,66,66,66,0,66,66,66,19,19,19,19,19,19,0,19,19,19,19,19,19,0,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,186,19,19,19,19,19,19,19,19,19,19,19,19,19,19,187,188,189,187,188,188,189],"f":[0,0,[1],[1],[[]],[[]],[[]],[[]],0,[2,2],[3,3],[[]],[[]],[[4,5,6,[9,[7,8]],10,[12,[11]]],[[14,[[13,[7,8]]]]]],0,0,0,[[15,[9,[16,17]],18,[20,[19]],[12,[21]],[12,[21]],[12,[22]]],[[14,[3,23]]]],[[15,[9,[16,17]],18,[20,[19]],[12,[21]],21,22],[[14,[24,23]]]],0,0,[[2,25],26],[[2,25],26],[[3,25],26],[[]],[[]],[[]],[[]],0,0,0,[5,[[14,[[28,[27]],2]]]],[[[20,[27]],29],[[14,[30]]]],[31],0,0,[14,[[14,[14]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[],14],[12,[[14,[12]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[14,[[14,[14]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],0,[[]],[[]],[[],37],[[],14],[[],14],[[],14],[[],14],[[],38],[[],38],0,[[]],[[]],[[]],[[]],0,0,[[]],[[]],0,[[]],[[]],[[[43,[[0,[39,40,41,42]]]],[0,[39,40,41,42]],6],[[46,[[45,[44]]]]]],[[[43,[[0,[41,42,40]]]]],47],[[[43,[[0,[40,41,42]]]],25],26],[[]],[[[43,[[0,[39,40,41,42]]]],[0,[39,40,41,42]]],[[12,[[46,[[45,[44]]]]]]]],[[]],[47,[[43,[[0,[39,40,41,42]]]]]],[14,[[14,[14]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,[[]],[[]],[[47,6],[[14,[48,49]]]],[[],47],[[47,47],50],[[],50],[[],50],[[],50],[[],50],[[],50],[[47,25],26],[[]],[[],4],[[]],[[],47],[14,[[14,[14]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,0,[1],[1],[[]],[[]],[[]],[[]],[51,51],[11,11],[[]],[[]],[[52,6],[[14,[51,53]]]],[[4,52,51],11],[[51,25],26],[[11,25],26],[[]],[[]],0,0,[[]],[[]],0,0,[[[33,[32]]],[[14,[[33,[32]]]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[12,[[14,[12]]]],[14,[[14,[14]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[12,[[14,[12]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],0,0,[[]],[[]],[[],14],[[],14],[[],14],[[],14],0,0,[[],38],[[],38],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[[13,[7,8]]]],[[[13,[7,8]],25],26],[[[13,[7,8]],25],26],[[[54,[7,8]],25],26],[[[54,[7,8]],25],26],[[],[[13,[7,8]]]],[[]],[55,[[54,[7,8]]]],[[]],[56,[[54,[7,8]]]],[[[33,[57]]],[[54,[7,8]]]],[[]],[[]],[58,59],[60,59],[31],[31],[14,[[14,[14]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[12,[[14,[12]]]],[[],14],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[14,[[14,[14]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[13,[7,8]]],[[12,[61]]]],[[[54,[7,8]]],[[12,[61]]]],0,[[],37],[[],37],[[],14],[[],14],[[],14],[[],14],[[],38],[[],38],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[23],[[23,25],26],[[23,25],26],[[62,25],26],[[62,25],26],[[]],[[],23],[55,62],[63,62],[[[33,[57]]],62],[[]],[[]],[[]],[[21,21],23],[60,23],[60,59],[37,23],[31],[31],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[],14],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[14,[[14,[14]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[23,[[12,[61]]]],[62,[[12,[61]]]],0,[[],37],[[],37],[[],14],[[],14],[[],14],[[],14],[[],38],[[],38],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[64],[[64,25],26],[[64,25],26],[[65,25],26],[[65,25],26],[[]],[[],64],[66,65],[[]],[67,65],[55,65],[[[33,[57]]],65],[63,65],[68,65],[[]],[[]],[31],[31],[14,[[14,[14]]]],[12,[[14,[12]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[[[33,[32]]],[[14,[[33,[32]]]]]],[14,[[14,[14]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[64,[[12,[61]]]],[65,[[12,[61]]]],0,[[],37],[[],37],[[],14],[[],14],[[],14],[[],14],[[],38],[[],38],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[67],[[67,25],26],[[67,25],26],[[69,25],26],[[69,25],26],[[]],[[],67],[63,69],[[[33,[57]]],69],[55,69],[[]],[64,69],[66,69],[68,69],[[]],[[]],[31],[31],[[],14],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[14,[[14,[14]]]],[12,[[14,[12]]]],[[],14],[14,[[14,[14]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[67,[[12,[61]]]],[69,[[12,[61]]]],0,[[],37],[[],37],[[],14],[[],14],[[],14],[[],14],[[],38],[[],38],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[],24],0,0,[[24,25],26],[[]],[3,[[14,[24,23]]]],[[]],0,0,[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,[[]],[[]],[[44,18,[20,[19]],[12,[21]]],[[14,[3,70]]]],[[44,18,[20,[19]],21],[[14,[24,70]]]],[[]],[44,48],[44,48],[44,[[9,[16,17]]]],[[]],[48,44],[14,[[14,[14]]]],[12,[[14,[12]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[[[33,[32]]],[[14,[[33,[32]]]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,0,0,0,0,0,[1],0,[[71,72],72],0,0,0,[[]],[[]],[[]],[[]],0,[[71,73,[20,[74]],75],76],0,[[4,9,72,75,71,10],14],0,[77,77],[[]],[[71,4,74,[78,[73]],[78,[[20,[74]]]],75],76],0,[71],0,0,0,0,0,0,0,[[]],[[]],0,0,[71,72],[[]],[[]],[[],[[12,[18]]]],0,0,0,0,[[[36,[35]]],[[14,[[36,[35]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[],14],[12,[[14,[12]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[14,[[14,[14]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],0,0,0,[[71,4,74,20,75],76],[[]],[[],14],[[],14],[[],14],[[],14],[[],38],[[],38],0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[4,[9,[7,8]],72,75,71,10,79],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,82],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,84],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,85],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,86],80],[[4,[9,[7,8]],72,75,71,10,87],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,88],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,89],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,90],80],[[4,[9,[7,8]],72,75,71,10,91],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,92],80],[[4,[9,[7,8]],72,75,71,10,93],80],[[4,[9,[7,8]],72,75,71,10,94],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,95],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,96],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,97],80],[[4,[9,[7,8]],72,75,71,10,98],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,99],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,83],80],[[4,[9,[7,8]],72,75,71,10,100],80],[[4,[9,[7,8]],72,75,71,10,101],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,102],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,103],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,104],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,104],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,104],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,105],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,106],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,[108,[107]]],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,109],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,110],80],[[4,[9,[7,8]],72,75,71,10,[108,[111]]],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,109],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,112],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,113],80],[[4,[9,[7,8]],72,75,71,10,[108,[114]]],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,109],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,115],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,116],80],[[4,[9,[7,8]],72,75,71,10,[108,[117]]],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,109],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,118],80],[[4,[9,[7,8]],72,75,71,10,[108,[119]]],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,109],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],0,[[]],[[]],0,[[],10],0,[[10,25],26],[[]],0,[10,[[12,[120]]]],[10,[[12,[120]]]],[[10,59],120],[[10,120],[[12,[120]]]],[[]],[[],10],0,0,[10,[[12,[120]]]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],0,0,0,0,[[],14],[[],14],[[],38],[[]],[[]],[[]],0,[[]],[[]],[[121,4,5,72,75],80],[[],121],[[121,25],26],[[]],[[]],[[121,4,5,72,74,75],80],[[121,4,5,72,74,75],80],[[121,15]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,[[]],[[]],[[],122],[[]],[[122,60],[[12,[[28,[60]]]]]],[[]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[122,60,[12,[[20,[60]]]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,0,0,[1],0,[[]],[[]],[[]],[[]],[[]],[[]],[123,123],[[]],[[],124],[[123,25],26],[[]],[[]],[[]],0,0,[[125,126,127],[[12,[21]]]],[[125,18],[[12,[21]]]],[[]],[[]],[[]],[[6,124],125],[[[28,[32]]],[[14,[[28,[32]]]]]],[14,[[14,[14]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[12,[[14,[12]]]],[[],14],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[14,[[14,[14]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[]],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],38],[[],38],[[],38],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[[129,[128]],25],26],[[]],[[]],[130,129],[129,130],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,[[]],[[]],[[131,25],26],[[4,74,75],76],[[]],[[]],[[4,5],131],[[4,74,74,75],76],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[14,[[14,[14]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,[[]],[[]],[[],132],[[132,4,5,74,72,75],[[80,[133]]]],[[132,4,5,72,75],[[80,[133]]]],[[132,4,5,72,74,74,75],[[80,[133]]]],[[132,4,5,72,74,74,74,75],[[80,[133]]]],[[132,25],26],[[]],[[]],[[132,4,5,72,74,74,74,75],[[80,[74]]]],[[132,4,5,72,74,75],[[80,[133]]]],[[132,4,5,72,74,75],[[80,[133]]]],[[132,4,5,72,74,74,75],[[80,[133]]]],[[132,4,5,72,74,74,74,75],[[80,[133]]]],[[132,4,5,72,74,74,75],[[80,[133]]]],[[132,4,5,72,74,74,74,75],[[80,[133]]]],[[132,4,5,72,74,74,74,75],[[80,[133]]]],[12,[[14,[12]]]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,0,[[]],[[]],[[],[[134,[7,8]]]],[[]],[[]],[[[134,[7,8]],60,[135,[7,8]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[14,[[14,[14]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],[[[134,[7,8]],60],[[12,[[137,[136]]]]]],0,[1],[22,138],[[]],[[]],[22,22],[[]],[22],[[22,22],50],[[],50],[[],50],[[],50],[[],50],[[],50],[[22,25],26],[[]],[[]],[139,22],[14,[[14,[14]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[12,[[14,[12]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[[]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,[[]],[[]],[140,74],[[140,25],26],[[]],[[]],[[74,72],140],[140,141],[140,[[12,[141]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[14,[[14,[14]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[140,72]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,[[]],[[]],[[48,25],26],[[]],[48,[[12,[120]]]],[[48,18],[[12,[21]]]],[[48,120],[[12,[120]]]],[[]],[48,10],[48,5],[[5,[9,[16,17]],10],48],[48,[[9,[16,17]]]],[48,[[12,[120]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[],14],[14,[[14,[14]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,0,0,0,0,0,0,0,[1],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[142,142,[20,[142]],21],[[143,[[28,[142]]]]]],0,0,[144,144],[[]],0,[[142,142,[20,[142]],50,21],143],[[[20,[142]],[20,[142]],21],143],0,[[144,25],26],[[]],[[]],[[]],[[]],[[]],[[]],[[145,21],[[143,[142]]]],[21,[[143,[146]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[[20,[145]],21],[[143,[144]]]],[[142,142,[20,[142]],21],[[143,[[28,[142]]]]]],0,0,[[]],[[142,21],143],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[14,[[14,[14]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[],14],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[14,[[14,[14]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[12,[[14,[12]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[14,[[14,[14]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[14,[[14,[14]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[14,[[14,[14]]]],[[147,147,21],[[143,[[12,[147]]]]]],[[144,50,21],[[143,[[12,[147]]]]]],[[147,21],143],[[147,144,21],[[143,[[12,[147]]]]]],[[144,144,21],[[143,[[12,[147]]]]]],[[147,147,21],[[143,[[12,[147]]]]]],[[144,50,21],[[143,[[12,[147]]]]]],[[147,21],143],[[147,144,21],[[143,[[12,[147]]]]]],[[144,144,21],[[143,[[12,[147]]]]]],[[142,[20,[142]],21],143],0,[142],[145],[145],[142],[142],[142],[21],[142],[142],[[[20,[142]]]],[142],[142],0,[[148,142,21],[[143,[142]]]],[[148,142,142,21],143],[[]],0,[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],0,[[],38],[[],38],[[],38],[[],38],[[],38],[[],38],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[1],0,[[],[[150,[149]]]],[[],[[20,[27]]]],[151],[[],[[14,[[20,[152]],153]]]],0,[[]],[[]],0,[[4,5,9,10,60],[[14,[154]]]],[[4,9,72,75,71,10,60],14],0,[[[151,[39]]],[[151,[39]]]],[[]],[151],[[],73],0,0,0,[[],[[156,[155]]]],[[],[[156,[155]]]],0,[[[151,[40]],[151,[40]]],50],[[],50],[[],50],[[],50],[[],50],[[],50],0,0,0,[[[151,[128]],25],26],[[]],0,[[[0,[42,157]],158],145],[[[151,[42]],159]],[[],[[12,[73]]]],[[]],[9,[[14,[160]]]],[60,151],0,0,0,0,0,[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[14,[[14,[14]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],0,[151,60],0,0,0,0,[[]],[[],[[14,[[150,[149]],161]]]],[[],14],[[],14],[[],38],0,0,0,0,0,0,0,[[]],[[]],[[],[[12,[[20,[60]]]]]],[[]],[[4,5,[9,[7,8]],10,[151,[162]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[162]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],0,[[4,5,[9,[7,8]],10,[151,[165]]],[[163,[154]]]],[[[9,[7,8]],[20,[60]]],163],[[4,5,[9,[7,8]],10,[20,[60]]],163],0,0,[[]],[[]],[[]],[[]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[166,130],[[167,25],26],[[]],[[]],[[]],[[]],[10,[[129,[167]]]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[14,[[14,[14]]]],[[],14],[[],14],[[],14],[[],14],[[],38],[[],38],[[]],[[]],[[]],[[]],[[]],[[]],[[4,5,[9,[7,8]],10,[151,[162]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[162]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[162]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[162]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[162]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[162]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[168]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[169]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[164]]],[[163,[154]]]],[[4,5,[9,[7,8]],10,[151,[162]]],[[163,[154]]]],0,0,[1],[[]],[[]],[[4,5,9,10,60],[[14,[154]]]],[[4,5,9,10,60],14],[29,[[137,[6]]]],[66,66],[[]],[[5,10],15],[136,128],[[66,66],50],[[],50],[[],50],[[],50],[[],50],[[],50],[[[171,[170]]],[[78,[148]]]],[172,[[78,[148]]]],[172,[[78,[148]]]],[[6,172],[[12,[[173,[126]]]]]],[[6,73],[[12,[[173,[126]]]]]],[[6,172],18],[[66,25],26],[[66,25],26],[[]],[18,[[174,[172]]]],[148,160],[[]],[[160,73],[[14,[66]]]],[[148,148],148],[[73,73],73],[[160,73],73],[31],[15],[[[33,[32]]],[[14,[[33,[32]]]]]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[[34,[32]]],[[14,[[34,[32]]]]]],[12,[[14,[12]]]],[[4,5],[[14,[55]]]],[[]],[[],37],[[],14],[[],14],[[],38],[[[20,[148]]],142],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1],[[]],[[]],[19,19],[[]],[[19,19],50],[[],50],[[],50],[[],50],[[],50],[[],50],[172,19],[[19,25],26],[[[20,[[0,[[171,[19]],39]]]]],19],[[[78,[[171,[19]]]]],19],[[[28,[[171,[19]]]]],19],[145,19],[175,19],[142,19],[[]],[148,19],[21,19],[27,19],[[]],[[],50],[[[34,[32]]],[[14,[[34,[32]]]]]],[12,[[14,[12]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[36,[35]]],[[14,[[36,[35]]]]]],[[],14],[14,[[14,[14]]]],[[]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,0,0,0,0,0,0],"c":[],"p":[[3,"Private"],[3,"LLVMCompileError"],[3,"ExecutionResult"],[3,"Context"],[3,"Module"],[3,"Program"],[8,"GenericType"],[8,"GenericLibfunc"],[3,"ProgramRegistry"],[3,"MetadataStorage"],[3,"DebugLocations"],[4,"Option"],[3,"Error"],[4,"Result"],[3,"ExecutionEngine"],[4,"CoreType"],[4,"CoreLibfunc"],[3,"FunctionId"],[4,"JITValue"],[15,"slice"],[15,"u128"],[3,"SyscallHandlerMeta"],[3,"Error"],[3,"ContractExecutionResult"],[3,"Formatter"],[6,"Result"],[15,"u8"],[3,"Vec"],[3,"Path"],[3,"Error"],[3,"Demand"],[3,"Global"],[3,"Box"],[3,"VecDeque"],[3,"RandomState"],[3,"HashMap"],[3,"String"],[3,"TypeId"],[8,"Clone"],[8,"PartialEq"],[8,"Eq"],[8,"Hash"],[3,"ProgramCache"],[3,"NativeExecutor"],[3,"RefCell"],[3,"Rc"],[3,"NativeContext"],[3,"NativeModule"],[6,"CompileError"],[15,"bool"],[3,"DebugInfo"],[3,"RootDatabase"],[3,"DiagnosticAdded"],[4,"ErrorImpl"],[4,"Error"],[4,"EditStateError"],[4,"ProgramRegistryError"],[3,"ConcreteLibfuncId"],[8,"FnOnce"],[3,"ConcreteTypeId"],[8,"Error"],[4,"ErrorImpl"],[3,"LayoutError"],[3,"Error"],[4,"ErrorImpl"],[3,"LayoutError"],[3,"Error"],[3,"TryFromIntError"],[4,"ErrorImpl"],[6,"RunnerError"],[3,"LibfuncHelper"],[3,"Block"],[15,"usize"],[3,"Value"],[3,"Location"],[3,"Operation"],[4,"BranchTarget"],[15,"array"],[4,"ApTrackingConcreteLibfunc"],[6,"Result"],[3,"SignatureOnlyConcreteLibfunc"],[4,"ArrayConcreteLibfunc"],[3,"SignatureAndTypeConcreteLibfunc"],[4,"BoolConcreteLibfunc"],[4,"BoxConcreteLibfunc"],[4,"CastConcreteLibfunc"],[3,"DowncastConcreteLibfunc"],[4,"DebugConcreteLibfunc"],[4,"EcConcreteLibfunc"],[4,"EnumConcreteLibfunc"],[3,"EnumInitConcreteLibfunc"],[4,"Felt252Concrete"],[4,"Felt252BinaryOperationConcrete"],[3,"Felt252ConstConcreteLibfunc"],[4,"Felt252DictConcreteLibfunc"],[4,"Felt252DictEntryConcreteLibfunc"],[3,"FunctionCallConcreteLibfunc"],[4,"GasConcreteLibfunc"],[4,"MemConcreteLibfunc"],[4,"NullableConcreteLibfunc"],[4,"PedersenConcreteLibfunc"],[4,"PoseidonConcreteLibfunc"],[4,"StarkNetConcreteLibfunc"],[3,"SignatureAndConstConcreteLibfunc"],[4,"StructConcreteLibfunc"],[4,"Uint128Concrete"],[3,"Uint128Traits"],[3,"IntConstConcreteLibfunc"],[3,"IntOperationConcreteLibfunc"],[6,"Uint16Concrete"],[3,"Uint16Traits"],[4,"Uint256Concrete"],[6,"Uint32Concrete"],[3,"Uint32Traits"],[4,"Uint512Concrete"],[6,"Uint64Concrete"],[3,"Uint64Traits"],[6,"Uint8Concrete"],[3,"Uint8Traits"],[8,"Any"],[3,"DebugUtils"],[3,"EnumSnapshotVariantsMeta"],[3,"GasCost"],[3,"MetadataComputationConfig"],[3,"GasMetadata"],[3,"StatementIdx"],[4,"CostTokenType"],[8,"Debug"],[3,"PrimeModuloMeta"],[3,"BigUint"],[3,"ReallocBindingsMeta"],[3,"RuntimeBindingsMeta"],[3,"OperationRef"],[3,"SnapshotClonesMeta"],[6,"CloneFn"],[8,"Fn"],[3,"Arc"],[3,"NonNull"],[8,"StarkNetSyscallHandler"],[3,"TailRecursionMeta"],[3,"BlockRef"],[3,"Felt252"],[6,"SyscallResult"],[3,"U256"],[15,"u64"],[3,"ExecutionInfo"],[3,"Secp256k1Point"],[15,"u32"],[8,"BitOrder"],[3,"BitSlice"],[3,"WithSelf"],[8,"FromByteSlice"],[4,"Error"],[3,"Type"],[15,"char"],[8,"FromIterator"],[8,"Sized"],[8,"BuildHasher"],[8,"Hasher"],[3,"Layout"],[4,"BitSpanError"],[3,"InfoAndTypeConcreteType"],[6,"Result"],[3,"InfoOnlyConcreteType"],[3,"EnumConcreteType"],[3,"PRIME"],[3,"Felt252"],[4,"StarkNetTypeConcrete"],[3,"StructConcreteType"],[3,"BigInt"],[8,"Into"],[15,"str"],[3,"GenFunction"],[4,"Cow"],[15,"u16"],[13,"TypeBuilderError"],[13,"LibfuncBuilderError"],[13,"TypeBuilderError"],[13,"InsufficientGasError"],[8,"LibfuncBuilder"],[3,"TxInfo"],[3,"BlockInfo"],[3,"Secp256r1Point"],[8,"TypeBuilder"],[8,"ProgramRegistryExt"],[8,"ValueBuilder"],[13,"Struct"],[13,"Enum"],[13,"Felt252Dict"]]},\ +"cairo_native":{"doc":"This crate is a compiler and JIT engine that transforms …","t":"DDLLLLLLALLLLFAAAFFAALLLLLLLAAAFFLMMLLLLLLLLLLLLLLALLLLLLLLLALLLLAALLDLLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLFLLLLLLLLLLLLLLLDDLLLLLLLLLLLLLLLLMMLLMMLLLLLLLLLLLLLLMMLLLLLLMMLLLLLLLLCCCCAAAAGNDENNNNLLLLLLLLLLLLLLLLLFFLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLMMMMDENNNNNNGNNLLLLLLLLLLLLLLLLLFFFFLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLMMMMDENNNNGNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLDENNNNNGNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLDLLLMMLLLLMMLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLLLLEQNIDNLALAAALLLLALAKALLLALAAAAAAALLAALLLKAAAALLLLLLLLLLLLLLAAAAALLLLLLLLAAAAAAAAALLLLLLFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDLLALALLALLLLLLAALLLLLLLLAAAALLLLLLDLLLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLDDDLMLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLGDLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLLLLLLLDDDDIGDDLMMMMLLLLLLLLLLLLKMMLLMKKMLLLLLLLKKLLLLLLKKMMKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKKKKKKKKKKKMKKKKKKKKKKKKMKKLMLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLMLLLLLLQIDLALLLLALLAKKALLLLAAALLALLLLLAAALLALLKLKLAAAAALLLLLLLALAAAALLLLLAAAAAAALLKLFFFFFFFGFFFDDDLLLLLLFLLLLLLLLLFLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFFFFFFFFFFFFFFFFFFFFFFFFDILLLKKFLLFFLLLLLFFFFFFLLLFFLFFFFLFLLLLLLLFLLLLLFLLLNNNNNNENNNNNNNNNILLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLMMMMMMM","n":["ExecutionResult","LLVMCompileError","__clone_box","__clone_box","borrow","borrow","borrow_mut","borrow_mut","cache","clone","clone","clone_into","clone_into","compile","context","debug_info","error","execute","execute_contract","execution_result","executor","fmt","fmt","fmt","from","from","into","into","libfuncs","metadata","module","module_to_object","object_to_shared_lib","provide","remaining_gas","return_values","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","starknet","to_owned","to_owned","to_string","try_from","try_from","try_into","try_into","type_id","type_id","types","upcast","upcast","upcast_mut","upcast_mut","utils","values","vzip","vzip","ProgramCache","borrow","borrow_mut","compile_and_insert","context","fmt","from","get","into","new","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","NativeContext","borrow","borrow_mut","compile","default","eq","equivalent","equivalent","equivalent","equivalent","fmt","from","initialize_mlir","into","new","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","DebugInfo","DebugLocations","__clone_box","__clone_box","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","extract","extract","fmt","fmt","from","from","funcs","funcs","into","into","libfunc_declarations","libfunc_declarations","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","statements","statements","to_owned","to_owned","try_from","try_from","try_into","try_into","type_declarations","type_declarations","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","CompileError","CoreLibfuncBuilderError","CoreTypeBuilderError","JitRunnerError","compile","jit_engine","libfuncs","types","CompileError","EditStateError","Error","ErrorImpl","LibfuncBuilderError","MlirError","ProgramRegistryError","TypeBuilderError","borrow","borrow","borrow_mut","borrow_mut","deref","fmt","fmt","fmt","fmt","from","from","from","from","from","from","into","into","make_libfunc_builder_error","make_type_builder_error","provide","provide","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","source","source","source","to_string","to_string","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","error","error","libfunc_id","type_id","Error","ErrorImpl","InsufficientGasError","LayoutError","MissingParameter","MissingSyscallHandler","MlirError","ProgramRegistryError","RunnerError","TypeBuilderError","UnexpectedValue","borrow","borrow","borrow_mut","borrow_mut","deref","fmt","fmt","fmt","fmt","from","from","from","from","from","from","into","into","make_insufficient_gas_error","make_missing_parameter","make_type_builder_error","make_unexpected_value_error","provide","provide","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","source","source","source","to_string","to_string","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","error","have","needed","type_id","Error","ErrorImpl","LayoutError","LayoutErrorPolyfill","MlirError","ProgramRegistryError","Result","TryFromIntError","borrow","borrow","borrow_mut","borrow_mut","deref","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","into","into","provide","provide","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","source","source","source","to_string","to_string","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","Error","ErrorImpl","LayoutError","LayoutErrorPolyfill","LibFuncError","MlirError","ProgramRegistryError","Result","TryFromIntError","borrow","borrow","borrow_mut","borrow_mut","deref","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","into","into","provide","provide","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","source","source","source","to_string","to_string","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","ContractExecutionResult","borrow","borrow_mut","default","error_msg","failure_flag","fmt","from","from_execution_result","into","remaining_gas","return_values","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","NativeExecutor","borrow","borrow_mut","execute","execute_contract","from","get_module","get_module_mut","get_program_registry","into","new","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","BranchTarget","Error","Jump","LibfuncBuilder","LibfuncHelper","Return","__clone_box","ap_tracking","append_block","array","bitwise","bool","borrow","borrow","borrow_mut","borrow_mut","box","br","branch_align","build","cast","clone","clone_into","cond_br","debug","deref","drop","dup","ec","enum","felt252","felt252_dict","felt252_dict_entry","from","from","function_call","gas","init_block","into","into","is_function_call","mem","nullable","pedersen","poseidon","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","sint16","sint8","snapshot_take","stark_net","struct","switch","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","uint128","uint16","uint256","uint32","uint512","uint64","uint8","unconditional_jump","unwrap_non_zero","upcast","upcast","upcast_mut","upcast_mut","vzip","vzip","build","build_disable","build_enable","build_revoke","build","build_append","build_get","build_len","build_new","build_pop_front","build_pop_front_consume","build_slice","build_snapshot_pop_back","build_snapshot_pop_front","build","build","build_bool_not","build_bool_to_felt252","build","build_into_box","build_unbox","build","build","build_downcast","build_upcast","build","build_print","build","build","build","build_is_zero","build_neg","build_point_from_x","build_state_add","build_state_add_mul","build_state_finalize","build_state_init","build_try_new","build_unwrap_point","build_zero","build","build_init","build_match","build_snapshot_match","build","build_binary_operation","build_const","build_is_zero","build","build_new","build_squash","build","build_finalize","build_get","build","build","build_builtin_withdraw_gas","build_get_builtin_costs","build_withdraw_gas","build","build_alloc_local","build_finalize_locals","build_rename","build_store_local","build_store_temp","build","build","build_pedersen","build","build_hades_permutation","build","build_const","build_diff","build_equal","build_from_felt252","build_is_zero","build_operation","build_to_felt252","build_widemul","build","build_const","build_diff","build_equal","build_from_felt252","build_is_zero","build_operation","build_to_felt252","build_widemul","build","build","build_call_contract","build_class_hash_const","build_class_hash_to_felt252","build_class_hash_try_from_felt252","build_contract_address_const","build_contract_address_to_felt252","build_contract_address_try_from_felt252","build_deploy","build_emit_event","build_get_block_hash","build_get_execution_info","build_keccak","build_library_call","build_replace_class","build_send_message_to_l1","build_storage_address_from_base","build_storage_address_from_base_and_offset","build_storage_address_to_felt252","build_storage_address_try_from_felt252","build_storage_base_address_const","build_storage_base_address_from_felt252","build_storage_read","build_storage_write","build","build_construct","build_deconstruct","build","build_byte_reverse","build_const","build_divmod","build_equal","build_from_felt252","build_guarantee_mul","build_guarantee_verify","build_is_zero","build_operation","build_square_root","build_to_felt252","build","build_const","build_divmod","build_equal","build_from_felt252","build_is_zero","build_operation","build_square_root","build_to_felt252","build_widemul","build","build_divmod","build_is_zero","build_square_root","build","build_const","build_divmod","build_equal","build_from_felt252","build_is_zero","build_operation","build_square_root","build_to_felt252","build_widemul","build","build_divmod_u256","build","build_const","build_divmod","build_equal","build_from_felt252","build_is_zero","build_operation","build_square_root","build_to_felt252","build_widemul","build","build_const","build_divmod","build_equal","build_from_felt252","build_is_zero","build_operation","build_square_root","build_to_felt252","build_widemul","build","build","MetadataStorage","borrow","borrow_mut","debug_utils","default","enum_snapshot_variants","fmt","from","gas","get","get_mut","get_or_insert_with","insert","into","new","prime_modulo","realloc_bindings","remove","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","runtime_bindings","snapshot_clones","syscall_handler","tail_recursion","try_from","try_into","type_id","upcast","upcast_mut","vzip","DebugUtils","borrow","borrow_mut","breakpoint_marker","default","fmt","from","into","print_i1","print_pointer","register_impls","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","EnumSnapshotVariantsMeta","borrow","borrow_mut","default","from","get_variants","into","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","set_mapping","try_from","try_into","type_id","upcast","upcast_mut","vzip","GasCost","GasMetadata","MetadataComputationConfig","__clone_box","ap_change_info","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","default","fmt","from","from","from","function_set_costs","gas_info","get_gas_cost_for_statement","get_initial_required_gas","into","into","into","new","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","upcast_mut","upcast_mut","upcast_mut","vzip","vzip","vzip","PrimeModuloMeta","borrow","borrow_mut","fmt","from","into","new","prime","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","ReallocBindingsMeta","borrow","borrow_mut","fmt","free","from","into","new","realloc","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","RuntimeBindingsMeta","borrow","borrow_mut","default","dict_alloc_free","dict_alloc_new","dict_get","dict_insert","fmt","from","into","libfunc_debug_print","libfunc_ec_point_from_x_nz","libfunc_ec_point_try_new_nz","libfunc_ec_state_add","libfunc_ec_state_add_mul","libfunc_ec_state_try_finalize_nz","libfunc_hades_permutation","libfunc_pedersen","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","CloneFn","SnapshotClonesMeta","borrow","borrow_mut","default","from","into","register","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","wrap_invoke","SyscallHandlerMeta","__clone_box","as_ptr","borrow","borrow_mut","clone","clone_into","drop","eq","equivalent","equivalent","equivalent","equivalent","fmt","from","into","new","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","to_owned","try_from","try_into","type_id","upcast","upcast_mut","vzip","TailRecursionMeta","borrow","borrow_mut","depth_counter","fmt","from","into","new","recursion_target","return_target","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","set_return_target","try_from","try_into","type_id","upcast","upcast_mut","vzip","NativeModule","borrow","borrow_mut","fmt","from","get_metadata","get_required_init_gas","insert_metadata","into","metadata","module","new","program_registry","remove_metadata","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_into","type_id","upcast","upcast_mut","vzip","BlockInfo","ExecutionInfo","Secp256k1Point","Secp256r1Point","StarkNetSyscallHandler","SyscallResult","TxInfo","U256","__clone_box","account_contract_address","block_info","block_number","block_timestamp","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","call_contract","caller_address","chain_id","clone","clone_into","contract_address","deploy","emit_event","entry_point_selector","fmt","from","from","from","from","from","from","get_block_hash","get_execution_info","into","into","into","into","into","into","keccak","library_call","max_fee","nonce","pop_log","replace_class","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","secp256k1_add","secp256k1_get_point_from_x","secp256k1_get_xy","secp256k1_mul","secp256k1_new","secp256r1_add","secp256r1_get_point_from_x","secp256r1_get_xy","secp256r1_mul","secp256r1_new","send_message_to_l1","sequencer_address","set_account_contract_address","set_block_number","set_block_timestamp","set_caller_address","set_chain_id","set_contract_address","set_max_fee","set_nonce","set_sequencer_address","set_signature","set_transaction_hash","set_version","signature","storage_read","storage_write","to_owned","transaction_hash","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","tx_info","type_id","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","upcast","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","upcast_mut","version","vzip","vzip","vzip","vzip","vzip","vzip","Error","TypeBuilder","WithSelf","__clone_box","array","as_bits","as_byte_slice","as_ref","as_slice_of","bitwise","borrow","borrow_mut","box","build","build_drop","builtin_costs","clone","clone_into","deref","dim","ec_op","ec_point","ec_state","encode_hex","encode_hex_upper","enum","eq","equivalent","equivalent","equivalent","equivalent","felt252","felt252_dict","felt252_dict_entry","fmt","from","gas_builtin","get_hash","hash","integer_width","into","layout","new","non_zero","nullable","pedersen","poseidon","range_check","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","segment_arena","self_ty","snapshot","squashed_felt252_dict","stark_net","struct","to_owned","try_as_bits","try_from","try_into","type_id","uint128","uint128_mul_guarantee","uint16","uint32","uint64","uint8","uninitialized","upcast","upcast_mut","variants","vzip","build","build","build","build","build","build","build","TypeLayout","build","get_layout_for_variants","get_type_for_variants","Felt252","HALF_PRIME","PRIME","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","deref","deref","fmt","from","from","from","into","into","into","register_prime_modulo_meta","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","upcast_mut","upcast_mut","upcast_mut","vzip","vzip","vzip","build","build","build","build","build","build","build","build","build","build","build","build","build_class_hash","build_contract_address","build_storage_address","build_storage_base_address","build_system","build","build","build","build","build","build","build","build","LayoutError","ProgramRegistryExt","__clone_box","borrow","borrow_mut","build_type","build_type_with_layout","cairo_to_sierra","clone","clone_into","create_engine","debug_with","eq","equivalent","equivalent","equivalent","equivalent","felt252_bigint","felt252_short_str","felt252_str","find_entry_point","find_entry_point_by_idx","find_function_id","fmt","fmt","from","generate_function_name","get_integer_layout","into","layout_repeat","next_multiple_of_u32","next_multiple_of_usize","padding_needed_for","provide","register_runtime_symbols","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","run_pass_manager","to_owned","to_string","try_from","try_into","type_id","u32_vec_to_felt","upcast","upcast_mut","vzip","Array","EcPoint","EcState","Enum","Felt252","Felt252Dict","JITValue","Sint16","Sint32","Sint8","Struct","Uint128","Uint16","Uint32","Uint64","Uint8","ValueBuilder","__clone_box","borrow","borrow_mut","clone","clone_into","eq","equivalent","equivalent","equivalent","equivalent","felt_str","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","into","is_complex","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","to_owned","try_from","try_into","type_id","upcast","upcast_mut","vzip","debug_name","debug_name","debug_name","fields","tag","value","value"],"q":[[0,"cairo_native"],[69,"cairo_native::cache"],[92,"cairo_native::context"],[120,"cairo_native::debug_info"],[176,"cairo_native::error"],[184,"cairo_native::error::compile"],[244,"cairo_native::error::compile::ErrorImpl"],[248,"cairo_native::error::jit_engine"],[313,"cairo_native::error::jit_engine::ErrorImpl"],[317,"cairo_native::error::libfuncs"],[378,"cairo_native::error::types"],[440,"cairo_native::execution_result"],[465,"cairo_native::executor"],[489,"cairo_native::libfuncs"],[576,"cairo_native::libfuncs::ap_tracking"],[580,"cairo_native::libfuncs::array"],[590,"cairo_native::libfuncs::bitwise"],[591,"cairo_native::libfuncs::bool"],[594,"cairo_native::libfuncs::box"],[597,"cairo_native::libfuncs::branch_align"],[598,"cairo_native::libfuncs::cast"],[601,"cairo_native::libfuncs::debug"],[603,"cairo_native::libfuncs::drop"],[604,"cairo_native::libfuncs::dup"],[605,"cairo_native::libfuncs::ec"],[616,"cairo_native::libfuncs::enum"],[620,"cairo_native::libfuncs::felt252"],[624,"cairo_native::libfuncs::felt252_dict"],[627,"cairo_native::libfuncs::felt252_dict_entry"],[630,"cairo_native::libfuncs::function_call"],[631,"cairo_native::libfuncs::gas"],[635,"cairo_native::libfuncs::mem"],[641,"cairo_native::libfuncs::nullable"],[642,"cairo_native::libfuncs::pedersen"],[644,"cairo_native::libfuncs::poseidon"],[646,"cairo_native::libfuncs::sint16"],[655,"cairo_native::libfuncs::sint8"],[664,"cairo_native::libfuncs::snapshot_take"],[665,"cairo_native::libfuncs::stark_net"],[689,"cairo_native::libfuncs::struct"],[692,"cairo_native::libfuncs::uint128"],[704,"cairo_native::libfuncs::uint16"],[714,"cairo_native::libfuncs::uint256"],[718,"cairo_native::libfuncs::uint32"],[728,"cairo_native::libfuncs::uint512"],[730,"cairo_native::libfuncs::uint64"],[740,"cairo_native::libfuncs::uint8"],[750,"cairo_native::libfuncs::unconditional_jump"],[751,"cairo_native::libfuncs::unwrap_non_zero"],[752,"cairo_native::metadata"],[787,"cairo_native::metadata::debug_utils"],[811,"cairo_native::metadata::enum_snapshot_variants"],[832,"cairo_native::metadata::gas"],[898,"cairo_native::metadata::prime_modulo"],[919,"cairo_native::metadata::realloc_bindings"],[941,"cairo_native::metadata::runtime_bindings"],[973,"cairo_native::metadata::snapshot_clones"],[995,"cairo_native::metadata::syscall_handler"],[1026,"cairo_native::metadata::tail_recursion"],[1050,"cairo_native::module"],[1077,"cairo_native::starknet"],[1241,"cairo_native::types"],[1318,"cairo_native::types::array"],[1319,"cairo_native::types::bitwise"],[1320,"cairo_native::types::box"],[1321,"cairo_native::types::builtin_costs"],[1322,"cairo_native::types::ec_op"],[1323,"cairo_native::types::ec_point"],[1324,"cairo_native::types::ec_state"],[1325,"cairo_native::types::enum"],[1329,"cairo_native::types::felt252"],[1388,"cairo_native::types::felt252_dict"],[1389,"cairo_native::types::felt252_dict_entry"],[1390,"cairo_native::types::gas_builtin"],[1391,"cairo_native::types::non_zero"],[1392,"cairo_native::types::nullable"],[1393,"cairo_native::types::pedersen"],[1394,"cairo_native::types::poseidon"],[1395,"cairo_native::types::range_check"],[1396,"cairo_native::types::segment_arena"],[1397,"cairo_native::types::snapshot"],[1398,"cairo_native::types::squashed_felt252_dict"],[1399,"cairo_native::types::stark_net"],[1405,"cairo_native::types::struct"],[1406,"cairo_native::types::uint128"],[1407,"cairo_native::types::uint128_mul_guarantee"],[1408,"cairo_native::types::uint16"],[1409,"cairo_native::types::uint32"],[1410,"cairo_native::types::uint64"],[1411,"cairo_native::types::uint8"],[1412,"cairo_native::types::uninitialized"],[1413,"cairo_native::utils"],[1465,"cairo_native::values"],[1523,"cairo_native::values::JITValue"]],"d":["The result of the JIT execution.","","","","","","","","","","","","","Run the compiler on a program. The compiled program is …","","Extracts useful debugging information from cairo programs …","Various error types used thorough the crate.","Execute a function on an engine loaded with a Sierra …","Utility function to make it easier to execute contracts. …","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Compiler libfunc infrastructure","Code generation metadata","","Make sure to call","","","","","","","","","","","","","","","","","","","Starknet related code for cairo_native","","","","","","","","","","Compiler type infrastructure","","","","","Various utilities","JIT params and return values de/serialization","","","A Cache for programs with the same context.","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","","Context of IRs, dialects and passes for Cairo programs …","","","Compiles a sierra program into MLIR and then lowers to …","","","","","","","","Returns the argument unchanged.","Initialize an MLIR context.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Starknet contract execution result.","","","","","","","Returns the argument unchanged.","Convert a [ExecuteResult] to a [NativeExecutionResult]","Calls U::from(self).","","","","","","","","","","","","","","","","A MLIR JIT execution engine in the context of Cairo Native.","","","Execute a program with the given params.","Execute a contract with the given calldata.","Returns the argument unchanged.","","","","Calls U::from(self).","","","","","","","","","","","","","","","A libfunc branching target.","Error type returned by this trait’s methods.","A block within the current libfunc.","Generation of MLIR operations from their Sierra …","Helper struct which contains logic generation for extra …","A statement’s branch target by its index.","","AP tracking libfuncs","Inserts a new block after all the current libfunc’s …","Array libfuncs","Bitwise libfuncs","Boolean libfuncs","","","","","Box libfuncs","Creates an unconditional branching operation out of the …","Branch alignment libfunc","Generate the MLIR operations.","Casting libfuncs","","","Creates a conditional binary branching operation, …","Debug libfuncs","","AP tracking libfuncs","State value duplication libfunc","Elliptic curve libfuncs","Enum-related libfuncs","Felt-related libfuncs","Felt dictionary libfuncs","Felt dictionary entry libfuncs","Returns the argument unchanged.","Returns the argument unchanged.","Function call libfuncs","Gas management libfuncs","Return the initialization block.","Calls U::from(self).","Calls U::from(self).","Return the target function if the statement is a function …","Memory-related libfuncs","Nullable libfuncs","Pedersen hashing libfuncs","Poseidon hashing libfuncs","","","","","","","","","","","","","","","i16-related libfuncs","i8-related libfuncs","Snapshot taking libfuncs","StarkNet libfuncs","Struct-related libfuncs","Creates a conditional multi-branching operation, …","","","","","","","","u128-related libfuncs","u16-related libfuncs","u256-related libfuncs","u32-related libfuncs","u512-related libfuncs","u64-related libfuncs","u8-related libfuncs","Unconditional jump libfunc","Non-zero unwrapping libfuncs","","","","","","","Select and call the correct libfunc builder function from …","Generate MLIR operations for the disable_ap_tracking …","Generate MLIR operations for the enable_ap_tracking. …","Generate MLIR operations for the revoke_ap_tracking. …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the array_append libfunc.","Generate MLIR operations for the array_get libfunc.","Generate MLIR operations for the array_append libfunc.","Generate MLIR operations for the array_new libfunc.","Generate MLIR operations for the array_pop_front libfunc.","Generate MLIR operations for the array_pop_front_consume …","Generate MLIR operations for the array_slice libfunc.","Generate MLIR operations for the array_snapshot_pop_back …","Generate MLIR operations for the array_snapshot_pop_front …","Generate MLIR operations for the bitwise libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the bool_not_impl libfunc.","Generate MLIR operations for the unbox libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the into_box libfunc.","Generate MLIR operations for the unbox libfunc.","Generate MLIR operations for the branch_align libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the downcast libfunc.","Generate MLIR operations for the upcast libfunc.","","","Generate MLIR operations for the drop libfunc.","Generate MLIR operations for the dup libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the ec_point_is_zero libfunc.","Generate MLIR operations for the ec_neg libfunc.","Generate MLIR operations for the ec_point_from_x_nz …","Generate MLIR operations for the ec_state_add libfunc.","Generate MLIR operations for the ec_state_add_mul libfunc.","Generate MLIR operations for the ec_state_try_finalize_nz …","Generate MLIR operations for the ec_state_init libfunc.","Generate MLIR operations for the ec_point_try_new_nz …","Generate MLIR operations for the ec_point_unwrap libfunc.","Generate MLIR operations for the ec_point_zero libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the enum_init libfunc.","Generate MLIR operations for the enum_match libfunc.","Generate MLIR operations for the enum_snapshot_match …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the following libfuncs:","Generate MLIR operations for the felt252_const libfunc.","Generate MLIR operations for the felt252_is_zero libfunc.","Select and call the correct libfunc builder function from …","","","Select and call the correct libfunc builder function from …","","","Generate MLIR operations for the function_call libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the withdraw_gas_all libfunc.","Generate MLIR operations for the get_builtin_costs libfunc.","Generate MLIR operations for the withdraw_gas libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the alloc_local libfunc.","Generate MLIR operations for the finalize_locals libfunc.","Generate MLIR operations for the rename libfunc.","Generate MLIR operations for the store_local libfunc.","Generate MLIR operations for the store_temp libfunc.","Select and call the correct libfunc builder function from …","Select and call the correct libfunc builder function from …","","Select and call the correct libfunc builder function from …","","Select and call the correct libfunc builder function from …","Generate MLIR operations for the i16_const libfunc.","Generate MLIR operations for the i16_diff libfunc.","Generate MLIR operations for the i16_eq libfunc.","Generate MLIR operations for the i16_from_felt252 libfunc.","Generate MLIR operations for the i16_is_zero libfunc.","Generate MLIR operations for the i16 operation libfunc.","Generate MLIR operations for the i16_to_felt252 libfunc.","Generate MLIR operations for the i16_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the i8_const libfunc.","Generate MLIR operations for the i8_diff libfunc.","Generate MLIR operations for the i8_eq libfunc.","Generate MLIR operations for the i8_from_felt252 libfunc.","Generate MLIR operations for the i8_is_zero libfunc.","Generate MLIR operations for the i8 operation libfunc.","Generate MLIR operations for the i8_to_felt252 libfunc.","Generate MLIR operations for the i8_widemul libfunc.","Generate MLIR operations for the snapshot_take libfunc.","Select and call the correct libfunc builder function from …","","","","","","","","","","","","","","","","","","","","","","","","Select and call the correct libfunc builder function from …","Generate MLIR operations for the struct_construct libfunc.","Generate MLIR operations for the struct_deconstruct …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u128_byte_reverse libfunc.","Generate MLIR operations for the u128_const libfunc.","Generate MLIR operations for the u128_safe_divmod libfunc.","Generate MLIR operations for the u128_equal libfunc.","Generate MLIR operations for the u128_from_felt252 libfunc.","Generate MLIR operations for the u128_guarantee_mul …","Generate MLIR operations for the u128_guarantee_verify …","Generate MLIR operations for the u128_is_zero libfunc.","Generate MLIR operations for the u128_add and u128_sub …","Generate MLIR operations for the u128_sqrt libfunc.","Generate MLIR operations for the u128_to_felt252 libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u16_const libfunc.","Generate MLIR operations for the u16_safe_divmod libfunc.","Generate MLIR operations for the u16_eq libfunc.","Generate MLIR operations for the u16_from_felt252 libfunc.","Generate MLIR operations for the u16_is_zero libfunc.","Generate MLIR operations for the u16 operation libfunc.","Generate MLIR operations for the u16_sqrt libfunc.","Generate MLIR operations for the u16_to_felt252 libfunc.","Generate MLIR operations for the u16_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u256_safe_divmod libfunc.","Generate MLIR operations for the u256_is_zero libfunc.","Generate MLIR operations for the u256_sqrt libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u32_const libfunc.","Generate MLIR operations for the u32_safe_divmod libfunc.","Generate MLIR operations for the u32_eq libfunc.","Generate MLIR operations for the u32_from_felt252 libfunc.","Generate MLIR operations for the u32_is_zero libfunc.","Generate MLIR operations for the u32 operation libfunc.","Generate MLIR operations for the u32_sqrt libfunc.","Generate MLIR operations for the u32_to_felt252 libfunc.","Generate MLIR operations for the u32_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u512_safe_divmod_by_u256 …","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u64_const libfunc.","Generate MLIR operations for the u64_safe_divmod libfunc.","Generate MLIR operations for the u64_eq libfunc.","Generate MLIR operations for the u64_from_felt252 libfunc.","Generate MLIR operations for the u64_is_zero libfunc.","Generate MLIR operations for the u64 operation libfunc.","Generate MLIR operations for the u64_sqrt libfunc.","Generate MLIR operations for the u64_to_felt252 libfunc.","Generate MLIR operations for the u64_widemul libfunc.","Select and call the correct libfunc builder function from …","Generate MLIR operations for the u8_const libfunc.","Generate MLIR operations for the u8_safe_divmod libfunc.","Generate MLIR operations for the u8_eq libfunc.","Generate MLIR operations for the u8_from_felt252 libfunc.","Generate MLIR operations for the u8_is_zero libfunc.","Generate MLIR operations for the u8 operation libfunc.","Generate MLIR operations for the u8_sqrt libfunc.","Generate MLIR operations for the u8_to_felt252 libfunc.","Generate MLIR operations for the u8_widemul libfunc.","Generate MLIR operations for the jump libfunc.","Generate MLIR operations for the unwrap_non_zero libfunc.","Metadata container.","","","Debug utilities","","","","Returns the argument unchanged.","","Retrieve a reference to some metadata.","Retrieve a mutable reference to some metadata.","","Insert some metadata and return a mutable reference.","Calls U::from(self).","Create an empty metadata container.","Finite field prime modulo","Memory allocation external bindings","Remove some metadata and return its last value.","","","","","","","","Runtime library bindings","","","Tail recursion information","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","","","Holds global gas info.","Configuration for metadata computation.","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Prime modulo number metadata.","","","","Returns the argument unchanged.","Calls U::from(self).","Create the metadata from the prime number.","Return the stored prime number.","","","","","","","","","","","","","","Memory allocation realloc metadata.","","","","Calls the free function.","Returns the argument unchanged.","Calls U::from(self).","Register the bindings to the realloc C function and return …","Calls the realloc function, returns a op with 1 result: an …","","","","","","","","","","","","","","Runtime library bindings metadata.","","","","Register if necessary, then invoke the dict_alloc_new() …","Register if necessary, then invoke the dict_alloc_new() …","Register if necessary, then invoke the dict_get() function.","Register if necessary, then invoke the dict_insert() …","","Returns the argument unchanged.","Calls U::from(self).","Register if necessary, then invoke the debug::print() …","Register if necessary, then invoke the ec_point_from_x_nz()…","Register if necessary, then invoke the …","Register if necessary, then invoke the ec_state_add() …","Register if necessary, then invoke the ec_state_add_mul() …","","Register if necessary, then invoke the poseidon() function.","Register if necessary, then invoke the pedersen() function.","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","The tail recursion metadata.","","","Return the current depth counter value.","","Returns the argument unchanged.","Calls U::from(self).","Create the tail recursion meta.","Return the recursion target block.","Return the return target block, if set.","","","","","","","","Set the return target block.","","","","","","","A MLIR module in the context of Cairo Native. It is …","","","","Returns the argument unchanged.","Retrieve a reference to some stored metadata.","Given some contract function’s id, returns an option of …","Insert some metadata for the program execution and return …","Calls U::from(self).","","","","","Removes metadata","","","","","","","","","","","","","","","","","","","","","Binary representation of a u256 (in MLIR).","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Error type returned by this trait’s methods.","Generation of MLIR types from their Sierra counterparts.","","","Array type","","","","","Bitwise type","","","Box type","Build the MLIR type.","","Builtin costs type","","","","","Elliptic curve operation type","Elliptic curve point type","Elliptic curve state type","","","Enum type","","","","","","felt252 type","Felt dictionary type","Felt dictionary entry type","","Returns the argument unchanged.","Gas builtin type","","","If the type is an integer (felt not included) type, return …","Calls U::from(self).","Generate the layout of the MLIR type.","","Non-zero type","Nullable type","Pedersen type","Poseidon type","Builtin costs type","","","","","","","","Segment arena type","","Snapshot type","Squashed Felt dictionary type","StarkNet types","Struct type","","","","","","Unsigned 128-bit integer type","Unsigned 128-bit multiplication guarantee type","Unsigned 16-bit integer type","Unsigned 32-bit integer type","Unsigned 64-bit integer type","Unsigned 8-bit integer type","Uninitialized type","","","If the type is a variant type, return all possible …","","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","An MLIR type with its memory layout.","Build the MLIR type.","Extract layout for the default enum representation, its …","Extract the type and layout for the default enum …","Marker type for the PrimeModuloMeta metadata.","","The felt252 prime modulo.","","","","","","","Build the MLIR type.","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","","","","","","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","Build the MLIR type.","","","","","","","","Compile a cairo program found at the given path to sierra.","","","Creates the execution engine, with all symbols registered.","Return a type that calls a closure when formatted using …","","","","","","Parse any type that can be a bigint to a felt that can be …","Parse a short string into a felt that can be used in the …","Parse a numeric string into felt, wrapping negatives …","Returns the given entry point if present.","Returns the given entry point if present.","Given a string representing a function name, searches in …","","","Returns the argument unchanged.","Generate a function name.","Return the layout for an integer of arbitrary width.","Calls U::from(self).","Copied from std.","","","Edit: Copied from the std lib.","","","","","","","","","","","","","","","","Converts a u32 slice into a Felt","","","","all elements need to be same type","","","","","","A JITValue is a value that can be passed to the JIT engine …","","","","","","","","","","The ValueBuilder trait is implemented any de/serializable …","","","","","","","","","","","String to felt","","","","","","","","Returns the argument unchanged.","","","","","","","Calls U::from(self).","Return whether the type is considered complex or simple.","","","","","","","","","","","","","","","","","","","","",""],"i":[0,0,2,3,2,3,2,3,0,2,3,2,3,0,0,0,0,0,0,0,0,2,2,3,2,3,2,3,0,0,0,0,0,2,3,3,2,2,2,2,2,2,2,3,3,3,3,3,3,3,0,2,3,2,2,3,2,3,2,3,0,2,3,2,3,0,0,2,3,0,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,0,47,47,47,47,47,47,47,47,47,47,47,0,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,0,0,51,11,51,11,51,11,51,11,51,11,51,11,51,11,51,11,51,11,51,11,51,11,51,51,51,51,51,51,51,11,11,11,11,11,11,11,51,11,51,11,51,11,51,11,51,11,51,11,51,11,51,11,51,11,0,0,0,0,0,0,0,0,0,54,0,0,54,54,54,54,13,54,13,54,13,13,13,54,54,13,13,54,54,54,54,13,54,0,0,13,54,13,13,13,13,13,13,13,54,54,54,54,54,54,54,13,54,13,13,54,13,54,13,54,13,54,13,54,13,54,13,54,184,185,185,184,0,0,62,62,62,62,62,62,0,62,62,23,62,23,62,23,23,23,62,62,23,23,62,62,62,62,23,62,0,0,0,0,23,62,23,23,23,23,23,23,23,62,62,62,62,62,62,62,23,62,23,23,62,23,62,23,62,23,62,23,62,23,62,23,62,186,187,187,186,0,0,65,65,65,65,0,65,64,65,64,65,64,64,64,65,65,64,64,65,65,65,65,65,65,65,64,65,64,65,64,64,64,64,64,64,64,65,65,65,65,65,65,65,64,65,64,64,65,64,65,64,65,64,65,64,65,64,65,64,65,0,0,69,69,69,69,69,0,69,66,69,66,69,66,66,66,69,69,66,66,69,69,69,69,69,69,69,66,69,66,69,66,66,66,66,66,66,66,69,69,69,69,69,69,69,66,69,66,66,69,66,69,66,69,66,69,66,69,66,69,66,69,0,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,0,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,0,188,77,0,0,77,77,0,71,0,0,0,71,77,71,77,0,71,0,188,0,77,77,71,0,71,0,0,0,0,0,0,0,71,77,0,0,71,71,77,188,0,0,0,0,71,71,71,71,71,71,71,77,77,77,77,77,77,77,0,0,0,0,0,71,77,71,77,71,77,71,77,0,0,0,0,0,0,0,0,0,71,77,71,77,71,77,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,10,0,10,10,0,10,10,10,10,10,10,0,0,10,10,10,10,10,10,10,10,0,0,0,0,10,10,10,10,10,10,0,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,0,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,0,0,0,127,129,129,127,128,129,127,128,127,127,128,127,129,127,128,128,129,129,129,129,127,128,129,129,129,129,129,129,129,129,127,127,127,127,127,127,127,128,128,128,128,128,128,128,127,129,127,128,129,127,128,129,127,128,129,127,128,129,127,128,129,127,128,0,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,0,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,0,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,136,0,0,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,0,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,0,144,144,144,144,144,144,144,144,144,144,144,144,144,144,144,144,144,144,144,144,144,144,144,0,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,0,0,0,0,0,0,0,0,148,189,150,190,190,150,190,189,151,191,148,150,190,189,151,191,148,143,150,189,148,148,150,143,143,150,148,150,190,189,151,191,148,143,143,150,190,189,151,191,148,143,143,189,189,143,143,150,150,150,150,150,150,150,190,190,190,190,190,190,190,189,189,189,189,189,189,189,151,151,151,151,151,151,151,191,191,191,191,191,191,191,148,148,148,148,148,148,148,143,143,143,143,143,143,143,143,143,143,143,190,143,143,143,143,143,143,143,143,143,143,143,143,189,143,143,148,189,150,190,189,151,191,148,150,190,189,151,191,148,150,150,190,189,151,191,148,150,190,189,151,191,148,150,190,189,151,191,148,189,150,190,189,151,191,148,192,0,0,155,0,155,155,155,155,0,155,155,0,192,192,0,155,155,155,155,0,0,0,155,155,0,155,155,155,155,155,0,0,0,155,155,0,155,155,192,155,192,155,0,0,0,0,0,155,155,155,155,155,155,155,0,155,0,0,0,0,155,155,155,155,155,0,0,0,0,0,0,0,155,155,192,155,0,0,0,0,0,0,0,0,0,0,0,0,0,0,170,171,173,170,171,173,0,170,171,173,170,171,173,170,171,173,0,170,170,170,170,170,170,170,171,171,171,171,171,171,171,173,173,173,173,173,173,173,170,171,173,170,171,173,170,171,173,170,171,173,170,171,173,170,171,173,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,68,68,193,193,0,68,68,0,0,68,68,68,68,68,0,0,0,0,0,0,68,68,68,0,0,68,0,0,0,0,68,0,68,68,68,68,68,68,68,0,68,68,68,68,68,0,68,68,68,19,19,19,19,19,19,0,19,19,19,19,19,19,19,19,19,0,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,194,19,19,19,19,19,19,19,19,19,19,19,19,19,19,195,196,197,195,196,196,197],"f":[0,0,[1],[1],[[]],[[]],[[]],[[]],0,[2,2],[3,3],[[]],[[]],[[4,5,6,[9,[7,8]],10,[12,[11]]],[[14,[[13,[7,8]]]]]],0,0,0,[[15,[9,[16,17]],18,[20,[19]],[12,[21]],[12,[21]],[12,[22]]],[[14,[3,23]]]],[[15,[9,[16,17]],18,[20,[19]],[12,[21]],21,22],[[14,[24,23]]]],0,0,[[2,25],26],[[2,25],26],[[3,25],26],[[]],[[]],[[]],[[]],0,0,0,[5,[[14,[[28,[27]],2]]]],[[[20,[27]],29],[[14,[30]]]],[31],0,0,[[[33,[32]]],[[14,[[33,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[12,[[14,[12]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[14,[[14,[14]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[14,[[14,[14]]]],[12,[[14,[12]]]],[[],14],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],0,[[]],[[]],[[],37],[[],14],[[],14],[[],14],[[],14],[[],38],[[],38],0,[[]],[[]],[[]],[[]],0,0,[[]],[[]],0,[[]],[[]],[[[43,[[0,[39,40,41,42]]]],[0,[39,40,41,42]],6],[[46,[[45,[44]]]]]],[[[43,[[0,[41,42,40]]]]],47],[[[43,[[0,[40,41,42]]]],25],26],[[]],[[[43,[[0,[39,40,41,42]]]],[0,[39,40,41,42]]],[[12,[[46,[[45,[44]]]]]]]],[[]],[47,[[43,[[0,[39,40,41,42]]]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,[[]],[[]],[[47,6],[[14,[48,49]]]],[[],47],[[47,47],50],[[],50],[[],50],[[],50],[[],50],[[47,25],26],[[]],[[],4],[[]],[[],47],[[[36,[32]]],[[14,[[36,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[14,[[14,[14]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,0,[1],[1],[[]],[[]],[[]],[[]],[51,51],[11,11],[[]],[[]],[[52,6],[[14,[51,53]]]],[[4,52,51],11],[[51,25],26],[[11,25],26],[[]],[[]],0,0,[[]],[[]],0,0,[[[36,[32]]],[[14,[[36,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[14,[[14,[14]]]],[14,[[14,[14]]]],[[],14],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],0,0,[[]],[[]],[[],14],[[],14],[[],14],[[],14],0,0,[[],38],[[],38],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[[13,[7,8]]]],[[[13,[7,8]],25],26],[[[13,[7,8]],25],26],[[[54,[7,8]],25],26],[[[54,[7,8]],25],26],[[]],[[],[[13,[7,8]]]],[55,[[54,[7,8]]]],[[]],[56,[[54,[7,8]]]],[[[36,[57]]],[[54,[7,8]]]],[[]],[[]],[58,59],[60,59],[31],[31],[[[28,[32]]],[[14,[[28,[32]]]]]],[12,[[14,[12]]]],[14,[[14,[14]]]],[[],14],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[],14],[14,[[14,[14]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[12,[[14,[12]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[[[13,[7,8]]],[[12,[61]]]],[[[54,[7,8]]],[[12,[61]]]],0,[[],37],[[],37],[[],14],[[],14],[[],14],[[],14],[[],38],[[],38],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[23],[[23,25],26],[[23,25],26],[[62,25],26],[[62,25],26],[[]],[[],23],[55,62],[[[36,[57]]],62],[63,62],[[]],[[]],[[]],[[21,21],23],[60,23],[60,59],[37,23],[31],[31],[12,[[14,[12]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[23,[[12,[61]]]],[62,[[12,[61]]]],0,[[],37],[[],37],[[],14],[[],14],[[],14],[[],14],[[],38],[[],38],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[64],[[64,25],26],[[64,25],26],[[65,25],26],[[65,25],26],[[],64],[[]],[63,65],[66,65],[67,65],[[]],[[[36,[57]]],65],[55,65],[68,65],[[]],[[]],[31],[31],[[[33,[32]]],[[14,[[33,[32]]]]]],[14,[[14,[14]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[12,[[14,[12]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[[[36,[32]]],[[14,[[36,[32]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[14,[[14,[14]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[64,[[12,[61]]]],[65,[[12,[61]]]],0,[[],37],[[],37],[[],14],[[],14],[[],14],[[],14],[[],38],[[],38],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[66],[[66,25],26],[[66,25],26],[[69,25],26],[[69,25],26],[[],66],[[]],[63,69],[[]],[55,69],[67,69],[68,69],[[[36,[57]]],69],[64,69],[[]],[[]],[31],[31],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[12,[[14,[12]]]],[14,[[14,[14]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[[],14],[[[35,[34]]],[[14,[[35,[34]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[66,[[12,[61]]]],[69,[[12,[61]]]],0,[[],37],[[],37],[[],14],[[],14],[[],14],[[],14],[[],38],[[],38],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[],24],0,0,[[24,25],26],[[]],[3,[[14,[24,23]]]],[[]],0,0,[[[35,[34]]],[[14,[[35,[34]]]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,[[]],[[]],[[44,18,[20,[19]],[12,[21]]],[[14,[3,70]]]],[[44,18,[20,[19]],21],[[14,[24,70]]]],[[]],[44,48],[44,48],[44,[[9,[16,17]]]],[[]],[48,44],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[[],14],[14,[[14,[14]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,0,0,0,0,0,[1],0,[[71,72],72],0,0,0,[[]],[[]],[[]],[[]],0,[[71,73,[20,[74]],75],76],0,[[4,9,72,75,71,10],14],0,[77,77],[[]],[[71,4,74,[78,[73]],[78,[[20,[74]]]],75],76],0,[71],0,0,0,0,0,0,0,[[]],[[]],0,0,[71,72],[[]],[[]],[[],[[12,[18]]]],0,0,0,0,[14,[[14,[14]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[14,[[14,[14]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[],14],0,0,0,0,0,[[71,4,74,20,75],76],[[]],[[],14],[[],14],[[],14],[[],14],[[],38],[[],38],0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[4,[9,[7,8]],72,75,71,10,79],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,82],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,84],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,85],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,86],80],[[4,[9,[7,8]],72,75,71,10,87],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,88],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,89],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,90],80],[[4,[9,[7,8]],72,75,71,10,91],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,92],80],[[4,[9,[7,8]],72,75,71,10,93],80],[[4,[9,[7,8]],72,75,71,10,94],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,95],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,96],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,10,97],80],[[4,[9,[7,8]],72,75,71,10,98],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,99],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,10,83],80],[[4,[9,[7,8]],72,75,71,83],80],[[4,[9,[7,8]],72,75,71,10,100],80],[[4,[9,[7,8]],72,75,71,10,101],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,102],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,103],80],[[4,[9,[7,8]],72,75,71,10,[105,[104]]],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,106],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,107],80],[[4,[9,[7,8]],72,75,71,10,[105,[108]]],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,106],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,109],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,110],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,110],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,110],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,111],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,112],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,[105,[113]]],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,106],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,114],80],[[4,[9,[7,8]],72,75,71,10,[105,[115]]],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,106],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,116],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,117],80],[[4,[9,[7,8]],72,75,71,10,[105,[118]]],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,106],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,119],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,120],80],[[4,[9,[7,8]],72,75,71,10,[105,[121]]],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,106],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,122],80],[[4,[9,[7,8]],72,75,71,10,[105,[123]]],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,81],80],[[4,[9,[7,8]],72,75,71,106],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],[[4,[9,[7,8]],72,75,71,10,81],80],0,[[]],[[]],0,[[],10],0,[[10,25],26],[[]],0,[10,[[12,[124]]]],[10,[[12,[124]]]],[[10,59],124],[[10,124],[[12,[124]]]],[[]],[[],10],0,0,[10,[[12,[124]]]],[[],14],[[[36,[32]]],[[14,[[36,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[14,[[14,[14]]]],0,0,0,0,[[],14],[[],14],[[],38],[[]],[[]],[[]],0,[[]],[[]],[[125,4,5,72,75],80],[[],125],[[125,25],26],[[]],[[]],[[125,4,5,72,74,75],80],[[125,4,5,72,74,75],80],[[125,15]],[14,[[14,[14]]]],[[],14],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[12,[[14,[12]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,[[]],[[]],[[],126],[[]],[[126,60],[[12,[[28,[60]]]]]],[[]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[[126,60,[12,[[20,[60]]]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,0,0,[1],0,[[]],[[]],[[]],[[]],[[]],[[]],[127,127],[[]],[[],128],[[127,25],26],[[]],[[]],[[]],0,0,[[129,130,131],[[12,[21]]]],[[129,18],[[12,[21]]]],[[]],[[]],[[]],[[6,128],129],[[],14],[[[36,[32]]],[[14,[[36,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[14,[[14,[14]]]],[12,[[14,[12]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[[],14],[[[35,[34]]],[[14,[[35,[34]]]]]],[14,[[14,[14]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[],14],[14,[[14,[14]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[[]],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],38],[[],38],[[],38],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[[133,[132]],25],26],[[]],[[]],[134,133],[133,134],[[[28,[32]]],[[14,[[28,[32]]]]]],[14,[[14,[14]]]],[[],14],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[12,[[14,[12]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,[[]],[[]],[[135,25],26],[[4,74,75],76],[[]],[[]],[[4,5],135],[[4,74,74,75],76],[[],14],[[[36,[32]]],[[14,[[36,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[14,[[14,[14]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,[[]],[[]],[[],136],[[136,4,5,74,72,75],[[80,[137]]]],[[136,4,5,72,75],[[80,[137]]]],[[136,4,5,72,74,74,75],[[80,[137]]]],[[136,4,5,72,74,74,74,75],[[80,[137]]]],[[136,25],26],[[]],[[]],[[136,4,5,72,74,74,74,75],[[80,[74]]]],[[136,4,5,72,74,75],[[80,[137]]]],[[136,4,5,72,74,75],[[80,[137]]]],[[136,4,5,72,74,74,75],[[80,[137]]]],[[136,4,5,72,74,74,74,75],[[80,[137]]]],[[136,4,5,72,74,74,75],[[80,[137]]]],[[136,4,5,72,74,74,74,75],[[80,[137]]]],[[136,4,5,72,74,74,74,75],[[80,[137]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[],14],[14,[[14,[14]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,0,[[]],[[]],[[],[[138,[7,8]]]],[[]],[[]],[[[138,[7,8]],60,[139,[7,8]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[14,[[14,[14]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],[[[138,[7,8]],60],[[12,[[141,[140]]]]]],0,[1],[22,142],[[]],[[]],[22,22],[[]],[22],[[22,22],50],[[],50],[[],50],[[],50],[[],50],[[22,25],26],[[]],[[]],[143,22],[[[28,[32]]],[[14,[[28,[32]]]]]],[14,[[14,[14]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[],14],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[12,[[14,[12]]]],[[]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,[[]],[[]],[144,74],[[144,25],26],[[]],[[]],[[74,72],144],[144,145],[144,[[12,[145]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[144,72]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,[[]],[[]],[[48,25],26],[[]],[48,[[12,[124]]]],[[48,18],[[12,[21]]]],[[48,124],[[12,[124]]]],[[]],[48,10],[48,5],[[5,[9,[16,17]],10],48],[48,[[9,[16,17]]]],[48,[[12,[124]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[14,[[14,[14]]]],[[],14],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,0,0,0,0,0,0,0,[1],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[146,146,[20,[146]],21],[[147,[[28,[146]]]]]],0,0,[148,148],[[]],0,[[146,146,[20,[146]],50,21],147],[[[20,[146]],[20,[146]],21],147],0,[[148,25],26],[[]],[[]],[[]],[[]],[[]],[[]],[[149,21],[[147,[146]]]],[21,[[147,[150]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[[20,[149]],21],[[147,[148]]]],[[146,146,[20,[146]],21],[[147,[[28,[146]]]]]],0,0,[[]],[[146,21],147],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[14,[[14,[14]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[14,[[14,[14]]]],[[],14],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[[[35,[34]]],[[14,[[35,[34]]]]]],[14,[[14,[14]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[12,[[14,[12]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[14,[[14,[14]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[14,[[14,[14]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[],14],[14,[[14,[14]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[12,[[14,[12]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[151,151,21],[[147,[[12,[151]]]]]],[[148,50,21],[[147,[[12,[151]]]]]],[[151,21],147],[[151,148,21],[[147,[[12,[151]]]]]],[[148,148,21],[[147,[[12,[151]]]]]],[[151,151,21],[[147,[[12,[151]]]]]],[[148,50,21],[[147,[[12,[151]]]]]],[[151,21],147],[[151,148,21],[[147,[[12,[151]]]]]],[[148,148,21],[[147,[[12,[151]]]]]],[[146,[20,[146]],21],147],0,[146],[149],[149],[146],[146],[146],[21],[146],[146],[[[20,[146]]]],[146],[146],0,[[152,146,21],[[147,[146]]]],[[152,146,146,21],147],[[]],0,[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],0,[[],38],[[],38],[[],38],[[],38],[[],38],[[],38],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[1],0,[[],[[154,[153]]]],[[],[[20,[27]]]],[155],[[],[[14,[[20,[156]],157]]]],0,[[]],[[]],0,[[4,5,9,10,60],[[14,[158]]]],[[4,9,72,75,71,10,60],14],0,[[[155,[39]]],[[155,[39]]]],[[]],[155],[[],73],0,0,0,[[],[[160,[159]]]],[[],[[160,[159]]]],0,[[[155,[40]],[155,[40]]],50],[[],50],[[],50],[[],50],[[],50],0,0,0,[[[155,[132]],25],26],[[]],0,[[[0,[42,161]],162],149],[[[155,[42]],163]],[[],[[12,[73]]]],[[]],[9,[[14,[164]]]],[60,155],0,0,0,0,0,[[],14],[14,[[14,[14]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],0,[155,60],0,0,0,0,[[]],[[],[[14,[[154,[153]],165]]]],[[],14],[[],14],[[],38],0,0,0,0,0,0,0,[[]],[[]],[[],[[12,[[20,[60]]]]]],[[]],[[4,5,[9,[7,8]],10,[155,[166]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[166]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],0,[[4,5,[9,[7,8]],10,[155,[169]]],[[167,[158]]]],[[[9,[7,8]],[20,[60]]],167],[[4,5,[9,[7,8]],10,[20,[60]]],167],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[170,134],[171,172],[[173,25],26],[[]],[[]],[[]],[[]],[[]],[[]],[10,[[133,[173]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[12,[[14,[12]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[14,[[14,[14]]]],[12,[[14,[12]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[],14],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[14,[[14,[14]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[12,[[14,[12]]]],[14,[[14,[14]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[[],14],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],38],[[],38],[[],38],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[4,5,[9,[7,8]],10,[155,[166]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[166]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[166]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[166]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[166]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[166]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[174]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[175]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[168]]],[[167,[158]]]],[[4,5,[9,[7,8]],10,[155,[166]]],[[167,[158]]]],0,0,[1],[[]],[[]],[[4,5,9,10,60],[[14,[158]]]],[[4,5,9,10,60],14],[29,[[141,[6]]]],[68,68],[[]],[[5,10],15],[140,132],[[68,68],50],[[],50],[[],50],[[],50],[[],50],[[[176,[172]]],[[78,[152]]]],[177,[[78,[152]]]],[177,[[78,[152]]]],[[6,177],[[12,[[178,[130]]]]]],[[6,73],[[12,[[178,[130]]]]]],[[6,177],18],[[68,25],26],[[68,25],26],[[]],[18,[[179,[177]]]],[152,164],[[]],[[164,73],[[14,[68]]]],[[152,152],152],[[73,73],73],[[164,73],73],[31],[15],[[],14],[14,[[14,[14]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[36,[32]]],[[14,[[36,[32]]]]]],[[4,5],[[14,[55]]]],[[]],[[],37],[[],14],[[],14],[[],38],[[[20,[152]]],146],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1],[[]],[[]],[19,19],[[]],[[19,19],50],[[],50],[[],50],[[],50],[[],50],[177,19],[[19,25],26],[180,19],[149,19],[21,19],[181,19],[[[28,[[176,[19]]]]],19],[146,19],[[]],[182,19],[152,19],[27,19],[[[20,[[0,[[176,[19]],39]]]]],19],[183,19],[[[78,[[176,[19]]]]],19],[[]],[[],50],[[[36,[32]]],[[14,[[36,[32]]]]]],[[[35,[34]]],[[14,[[35,[34]]]]]],[[[33,[32]]],[[14,[[33,[32]]]]]],[12,[[14,[12]]]],[[[28,[32]]],[[14,[[28,[32]]]]]],[[],14],[14,[[14,[14]]]],[[]],[[],14],[[],14],[[],38],[[]],[[]],[[]],0,0,0,0,0,0,0],"c":[],"p":[[3,"Private"],[3,"LLVMCompileError"],[3,"ExecutionResult"],[3,"Context"],[3,"Module"],[3,"Program"],[8,"GenericType"],[8,"GenericLibfunc"],[3,"ProgramRegistry"],[3,"MetadataStorage"],[3,"DebugLocations"],[4,"Option"],[3,"Error"],[4,"Result"],[3,"ExecutionEngine"],[4,"CoreType"],[4,"CoreLibfunc"],[3,"FunctionId"],[4,"JITValue"],[15,"slice"],[15,"u128"],[3,"SyscallHandlerMeta"],[3,"Error"],[3,"ContractExecutionResult"],[3,"Formatter"],[6,"Result"],[15,"u8"],[3,"Vec"],[3,"Path"],[3,"Error"],[3,"Demand"],[3,"Global"],[3,"VecDeque"],[3,"RandomState"],[3,"HashMap"],[3,"Box"],[3,"String"],[3,"TypeId"],[8,"Clone"],[8,"PartialEq"],[8,"Eq"],[8,"Hash"],[3,"ProgramCache"],[3,"NativeExecutor"],[3,"RefCell"],[3,"Rc"],[3,"NativeContext"],[3,"NativeModule"],[6,"CompileError"],[15,"bool"],[3,"DebugInfo"],[3,"RootDatabase"],[3,"DiagnosticAdded"],[4,"ErrorImpl"],[4,"Error"],[4,"EditStateError"],[4,"ProgramRegistryError"],[3,"ConcreteLibfuncId"],[8,"FnOnce"],[3,"ConcreteTypeId"],[8,"Error"],[4,"ErrorImpl"],[3,"LayoutError"],[3,"Error"],[4,"ErrorImpl"],[3,"Error"],[3,"TryFromIntError"],[3,"LayoutError"],[4,"ErrorImpl"],[6,"RunnerError"],[3,"LibfuncHelper"],[3,"Block"],[15,"usize"],[3,"Value"],[3,"Location"],[3,"Operation"],[4,"BranchTarget"],[15,"array"],[4,"ApTrackingConcreteLibfunc"],[6,"Result"],[3,"SignatureOnlyConcreteLibfunc"],[4,"ArrayConcreteLibfunc"],[3,"SignatureAndTypeConcreteLibfunc"],[4,"BoolConcreteLibfunc"],[4,"BoxConcreteLibfunc"],[4,"CastConcreteLibfunc"],[3,"DowncastConcreteLibfunc"],[4,"DebugConcreteLibfunc"],[4,"EcConcreteLibfunc"],[4,"EnumConcreteLibfunc"],[3,"EnumInitConcreteLibfunc"],[4,"Felt252Concrete"],[4,"Felt252BinaryOperationConcrete"],[3,"Felt252ConstConcreteLibfunc"],[4,"Felt252DictConcreteLibfunc"],[4,"Felt252DictEntryConcreteLibfunc"],[3,"FunctionCallConcreteLibfunc"],[4,"GasConcreteLibfunc"],[4,"MemConcreteLibfunc"],[4,"NullableConcreteLibfunc"],[4,"PedersenConcreteLibfunc"],[4,"PoseidonConcreteLibfunc"],[6,"Sint16Concrete"],[3,"Sint16Traits"],[3,"IntConstConcreteLibfunc"],[3,"IntOperationConcreteLibfunc"],[6,"Sint8Concrete"],[3,"Sint8Traits"],[4,"StarkNetConcreteLibfunc"],[3,"SignatureAndConstConcreteLibfunc"],[4,"StructConcreteLibfunc"],[4,"Uint128Concrete"],[3,"Uint128Traits"],[6,"Uint16Concrete"],[3,"Uint16Traits"],[4,"Uint256Concrete"],[6,"Uint32Concrete"],[3,"Uint32Traits"],[4,"Uint512Concrete"],[6,"Uint64Concrete"],[3,"Uint64Traits"],[6,"Uint8Concrete"],[3,"Uint8Traits"],[8,"Any"],[3,"DebugUtils"],[3,"EnumSnapshotVariantsMeta"],[3,"GasCost"],[3,"MetadataComputationConfig"],[3,"GasMetadata"],[3,"StatementIdx"],[4,"CostTokenType"],[8,"Debug"],[3,"PrimeModuloMeta"],[3,"BigUint"],[3,"ReallocBindingsMeta"],[3,"RuntimeBindingsMeta"],[3,"OperationRef"],[3,"SnapshotClonesMeta"],[6,"CloneFn"],[8,"Fn"],[3,"Arc"],[3,"NonNull"],[8,"StarkNetSyscallHandler"],[3,"TailRecursionMeta"],[3,"BlockRef"],[3,"Felt"],[6,"SyscallResult"],[3,"U256"],[15,"u64"],[3,"ExecutionInfo"],[3,"Secp256k1Point"],[15,"u32"],[8,"BitOrder"],[3,"BitSlice"],[3,"WithSelf"],[8,"FromByteSlice"],[4,"Error"],[3,"Type"],[15,"char"],[8,"FromIterator"],[8,"Sized"],[8,"BuildHasher"],[8,"Hasher"],[3,"Layout"],[4,"BitSpanError"],[3,"InfoAndTypeConcreteType"],[6,"Result"],[3,"InfoOnlyConcreteType"],[3,"EnumConcreteType"],[3,"PRIME"],[3,"HALF_PRIME"],[3,"BigInt"],[3,"Felt252"],[4,"StarkNetTypeConcrete"],[3,"StructConcreteType"],[8,"Into"],[15,"str"],[3,"GenFunction"],[4,"Cow"],[15,"i8"],[15,"i32"],[15,"u16"],[15,"i16"],[13,"TypeBuilderError"],[13,"LibfuncBuilderError"],[13,"TypeBuilderError"],[13,"InsufficientGasError"],[8,"LibfuncBuilder"],[3,"TxInfo"],[3,"BlockInfo"],[3,"Secp256r1Point"],[8,"TypeBuilder"],[8,"ProgramRegistryExt"],[8,"ValueBuilder"],[13,"Struct"],[13,"Enum"],[13,"Felt252Dict"]]},\ "cairo_native_compile":{"doc":"","t":"DDENNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLFFMMFFLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLL","n":["Args","CmdLine","CompilerOutput","Path","Stdout","__clone_box","__clone_box","augment_args","augment_args","augment_args_for_update","augment_args_for_update","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","command","command","command_for_update","command_for_update","fmt","fmt","fmt","from","from","from","from_arg_matches","from_arg_matches","from_arg_matches_mut","from_arg_matches_mut","group_id","group_id","input","input","into","into","into","load_program","main","output","output","parse_input","parse_output","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","starknet","starknet","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","upcast_mut","upcast_mut","upcast_mut","update_from_arg_matches","update_from_arg_matches","update_from_arg_matches_mut","update_from_arg_matches_mut","vzip","vzip","vzip"],"q":[[0,"cairo_native_compile"]],"d":["","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","Input .sierra or .cairo program.","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","Output file, .so on linux, .dylib on macOS","","","","","","","","","","","","","","","","","","","","","","","","","Whether the program is a contract.","Compile a starknet contract","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[0,0,0,4,4,3,4,5,3,5,3,5,3,4,5,3,4,3,4,3,4,5,3,5,3,5,3,4,5,3,4,5,3,5,3,5,3,5,3,5,3,4,0,0,5,3,0,0,5,5,5,5,5,5,5,3,3,3,3,3,3,3,4,4,4,4,4,4,4,5,3,3,4,5,3,4,5,3,4,5,3,4,5,3,4,5,3,4,5,3,5,3,5,3,4],"f":[0,0,0,0,0,[1],[1],[2,2],[2,2],[2,2],[2,2],[[]],[[]],[[]],[[]],[[]],[[]],[3,3],[4,4],[[]],[[]],[[],2],[[],2],[[],2],[[],2],[[5,6],7],[[3,6],7],[[4,6],7],[[]],[[]],[[]],[8,[[10,[5,9]]]],[8,[[10,[3,9]]]],[8,[[10,[5,9]]]],[8,[[10,[3,9]]]],[[],[[12,[11]]]],[[],[[12,[11]]]],0,0,[[]],[[]],[[]],[[13,[12,[14]],15],[[10,[[17,[16]]]]]],[[],[[10,[[17,[16]]]]]],0,0,[18,[[10,[19,20]]]],[18,[[10,[4,20]]]],[12,[[10,[12]]]],[10,[[10,[10]]]],[[[17,[21]]],[[10,[[17,[21]]]]]],[[[22,[21]]],[[10,[[22,[21]]]]]],[[[24,[23]]],[[10,[[24,[23]]]]]],[[[25,[21]]],[[10,[[25,[21]]]]]],[[],10],[[[22,[21]]],[[10,[[22,[21]]]]]],[12,[[10,[12]]]],[[[17,[21]]],[[10,[[17,[21]]]]]],[10,[[10,[10]]]],[[],10],[[[25,[21]]],[[10,[[25,[21]]]]]],[[[24,[23]]],[[10,[[24,[23]]]]]],[[[22,[21]]],[[10,[[22,[21]]]]]],[10,[[10,[10]]]],[[],10],[[[25,[21]]],[[10,[[25,[21]]]]]],[[[24,[23]]],[[10,[[24,[23]]]]]],[12,[[10,[12]]]],[[[17,[21]]],[[10,[[17,[21]]]]]],0,0,[[]],[[]],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],26],[[],26],[[],26],[[]],[[]],[[]],[[]],[[]],[[]],[[5,8],[[10,[9]]]],[[3,8],[[10,[9]]]],[[5,8],[[10,[9]]]],[[3,8],[[10,[9]]]],[[]],[[]],[[]]],"c":[],"p":[[3,"Private"],[3,"Command"],[3,"CmdLine"],[4,"CompilerOutput"],[3,"Args"],[3,"Formatter"],[6,"Result"],[3,"ArgMatches"],[6,"Error"],[4,"Result"],[3,"Id"],[4,"Option"],[3,"Path"],[3,"Context"],[15,"bool"],[8,"Error"],[3,"Box"],[15,"str"],[3,"PathBuf"],[3,"String"],[3,"Global"],[3,"VecDeque"],[3,"RandomState"],[3,"HashMap"],[3,"Vec"],[3,"TypeId"]]},\ "cairo_native_dump":{"doc":"","t":"DENNLLLLLLLLLLLLLLLLLLLLLMLLFFMFFLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLL","n":["CmdLine","CompilerOutput","Path","Stdout","__clone_box","__clone_box","augment_args","augment_args_for_update","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","command","command_for_update","fmt","fmt","from","from","from_arg_matches","from_arg_matches_mut","group_id","input","into","into","load_program","main","output","parse_input","parse_output","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","starknet","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","update_from_arg_matches","update_from_arg_matches_mut","vzip","vzip"],"q":[[0,"cairo_native_dump"]],"d":["","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","Compile a starknet contract","","","","","","","","","","","","","","","",""],"i":[0,0,4,4,3,4,3,3,3,4,3,4,3,4,3,4,3,3,3,4,3,4,3,3,3,3,3,4,0,0,3,0,0,3,3,3,3,3,3,3,4,4,4,4,4,4,4,3,3,4,3,4,3,4,3,4,3,4,3,4,3,3,3,4],"f":[0,0,0,0,[1],[1],[2,2],[2,2],[[]],[[]],[[]],[[]],[3,3],[4,4],[[]],[[]],[[],2],[[],2],[[3,5],6],[[4,5],6],[[]],[[]],[7,[[9,[3,8]]]],[7,[[9,[3,8]]]],[[],[[11,[10]]]],0,[[]],[[]],[[12,[11,[13]],14],[[9,[[16,[15]]]]]],[[],[[9,[[16,[15]]]]]],0,[17,[[9,[18,19]]]],[17,[[9,[4,19]]]],[9,[[9,[9]]]],[[[16,[20]]],[[9,[[16,[20]]]]]],[11,[[9,[11]]]],[[[21,[20]]],[[9,[[21,[20]]]]]],[[[23,[22]]],[[9,[[23,[22]]]]]],[[[24,[20]]],[[9,[[24,[20]]]]]],[[],9],[[[21,[20]]],[[9,[[21,[20]]]]]],[11,[[9,[11]]]],[9,[[9,[9]]]],[[],9],[[[24,[20]]],[[9,[[24,[20]]]]]],[[[23,[22]]],[[9,[[23,[22]]]]]],[[[16,[20]]],[[9,[[16,[20]]]]]],0,[[]],[[]],[[],9],[[],9],[[],9],[[],9],[[],25],[[],25],[[]],[[]],[[]],[[]],[[3,7],[[9,[8]]]],[[3,7],[[9,[8]]]],[[]],[[]]],"c":[],"p":[[3,"Private"],[3,"Command"],[3,"CmdLine"],[4,"CompilerOutput"],[3,"Formatter"],[6,"Result"],[3,"ArgMatches"],[6,"Error"],[4,"Result"],[3,"Id"],[4,"Option"],[3,"Path"],[3,"Context"],[15,"bool"],[8,"Error"],[3,"Box"],[15,"str"],[3,"PathBuf"],[3,"String"],[3,"Global"],[3,"VecDeque"],[3,"RandomState"],[3,"HashMap"],[3,"Vec"],[3,"TypeId"]]},\ -"cairo_native_run":{"doc":"","t":"DNNELLLLLLLLLLLLLLMLLLLLLLMMLLFFMFFFMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL","n":["CmdLine","Path","Stdio","StdioOrPath","__clone_box","__clone_box","augment_args","augment_args_for_update","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","command","command_for_update","entry_point","fmt","fmt","from","from","from_arg_matches","from_arg_matches_mut","group_id","input","inputs","into","into","load_program","main","outputs","parse_entry_point","parse_input","parse_io","print_outputs","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","update_from_arg_matches","update_from_arg_matches_mut","vzip","vzip"],"q":[[0,"cairo_native_run"]],"d":["","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[0,4,4,0,3,4,3,3,3,4,3,4,3,4,3,4,3,3,3,3,4,3,4,3,3,3,3,3,3,4,0,0,3,0,0,0,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,3,4,3,4,3,4,3,4,3,4,3,4,3,3,3,4],"f":[0,0,0,0,[1],[1],[2,2],[2,2],[[]],[[]],[[]],[[]],[3,3],[4,4],[[]],[[]],[[],2],[[],2],0,[[3,5],6],[[4,5],6],[[]],[[]],[7,[[9,[3,8]]]],[7,[[9,[3,8]]]],[[],[[11,[10]]]],0,0,[[]],[[]],[12,[[9,[13,[15,[14]]]]]],[[],[[9,[[15,[14]]]]]],0,[16,[[9,[17,18]]]],[16,[[9,[19,20]]]],[16,[[9,[4,20]]]],0,[11,[[9,[11]]]],[[[15,[21]]],[[9,[[15,[21]]]]]],[9,[[9,[9]]]],[[],9],[[[22,[21]]],[[9,[[22,[21]]]]]],[[[24,[23]]],[[9,[[24,[23]]]]]],[[[25,[21]]],[[9,[[25,[21]]]]]],[[[15,[21]]],[[9,[[15,[21]]]]]],[9,[[9,[9]]]],[[],9],[[[22,[21]]],[[9,[[22,[21]]]]]],[[[24,[23]]],[[9,[[24,[23]]]]]],[[[25,[21]]],[[9,[[25,[21]]]]]],[11,[[9,[11]]]],[[]],[[]],[[],9],[[],9],[[],9],[[],9],[[],26],[[],26],[[]],[[]],[[]],[[]],[[3,7],[[9,[8]]]],[[3,7],[[9,[8]]]],[[]],[[]]],"c":[],"p":[[3,"Private"],[3,"Command"],[3,"CmdLine"],[4,"StdioOrPath"],[3,"Formatter"],[6,"Result"],[3,"ArgMatches"],[6,"Error"],[4,"Result"],[3,"Id"],[4,"Option"],[3,"Path"],[3,"Program"],[8,"Error"],[3,"Box"],[15,"str"],[3,"FunctionId"],[4,"Infallible"],[3,"PathBuf"],[3,"String"],[3,"Global"],[3,"Vec"],[3,"RandomState"],[3,"HashMap"],[3,"VecDeque"],[3,"TypeId"]]},\ +"cairo_native_run":{"doc":"","t":"DNNELLLLLLLLLLLLLLMLLLLLLLMMLLFFMFFFMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL","n":["CmdLine","Path","Stdio","StdioOrPath","__clone_box","__clone_box","augment_args","augment_args_for_update","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","command","command_for_update","entry_point","fmt","fmt","from","from","from_arg_matches","from_arg_matches_mut","group_id","input","inputs","into","into","load_program","main","outputs","parse_entry_point","parse_input","parse_io","print_outputs","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","rewrite","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","upcast_mut","upcast_mut","update_from_arg_matches","update_from_arg_matches_mut","vzip","vzip"],"q":[[0,"cairo_native_run"]],"d":["","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[0,4,4,0,3,4,3,3,3,4,3,4,3,4,3,4,3,3,3,3,4,3,4,3,3,3,3,3,3,4,0,0,3,0,0,0,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,3,4,3,4,3,4,3,4,3,4,3,4,3,3,3,4],"f":[0,0,0,0,[1],[1],[2,2],[2,2],[[]],[[]],[[]],[[]],[3,3],[4,4],[[]],[[]],[[],2],[[],2],0,[[3,5],6],[[4,5],6],[[]],[[]],[7,[[9,[3,8]]]],[7,[[9,[3,8]]]],[[],[[11,[10]]]],0,0,[[]],[[]],[12,[[9,[13,[15,[14]]]]]],[[],[[9,[[15,[14]]]]]],0,[16,[[9,[17,18]]]],[16,[[9,[19,20]]]],[16,[[9,[4,20]]]],0,[11,[[9,[11]]]],[[[15,[21]]],[[9,[[15,[21]]]]]],[9,[[9,[9]]]],[[],9],[[[22,[21]]],[[9,[[22,[21]]]]]],[[[24,[23]]],[[9,[[24,[23]]]]]],[[[25,[21]]],[[9,[[25,[21]]]]]],[11,[[9,[11]]]],[9,[[9,[9]]]],[[],9],[[[22,[21]]],[[9,[[22,[21]]]]]],[[[24,[23]]],[[9,[[24,[23]]]]]],[[[25,[21]]],[[9,[[25,[21]]]]]],[[[15,[21]]],[[9,[[15,[21]]]]]],[[]],[[]],[[],9],[[],9],[[],9],[[],9],[[],26],[[],26],[[]],[[]],[[]],[[]],[[3,7],[[9,[8]]]],[[3,7],[[9,[8]]]],[[]],[[]]],"c":[],"p":[[3,"Private"],[3,"Command"],[3,"CmdLine"],[4,"StdioOrPath"],[3,"Formatter"],[6,"Result"],[3,"ArgMatches"],[6,"Error"],[4,"Result"],[3,"Id"],[4,"Option"],[3,"Path"],[3,"Program"],[8,"Error"],[3,"Box"],[15,"str"],[3,"FunctionId"],[4,"Infallible"],[3,"PathBuf"],[3,"String"],[3,"Global"],[3,"Vec"],[3,"RandomState"],[3,"HashMap"],[3,"VecDeque"],[3,"TypeId"]]},\ "cairo_native_runtime":{"doc":"","t":"FFFFFFFFFFFF","n":["cairo_native__alloc_dict","cairo_native__dict_free","cairo_native__dict_get","cairo_native__dict_insert","cairo_native__libfunc__debug__print","cairo_native__libfunc__ec__ec_point_from_x_nz","cairo_native__libfunc__ec__ec_point_try_new_nz","cairo_native__libfunc__ec__ec_state_add","cairo_native__libfunc__ec__ec_state_add_mul","cairo_native__libfunc__ec__ec_state_try_finalize_nz","cairo_native__libfunc__hades_permutation","cairo_native__libfunc__pedersen"],"q":[[0,"cairo_native_runtime"]],"d":["Allocates a new dictionary. Internally a rust hashmap: …","Frees the dictionary.","Gets the value for a given key, the returned pointer is …","Inserts the provided key value. Returning the old one or …","Based on cairo-lang-runner’s implementation.","Compute ec_point_from_x_nz(x) and store it.","Compute ec_point_try_new_nz(x).","Compute ec_state_add(state, point) and store the state …","Compute ec_state_add_mul(state, scalar, point) and store …","Compute ec_state_try_finalize_nz(state) and store the …","Compute hades_permutation(op0, op1, op2) and replace the …","Compute pedersen(lhs, rhs) and store it into dst."],"i":[0,0,0,0,0,0,0,0,0,0,0,0],"f":[[[],1],[1],[[1,[3,[2]]],1],[[1,[3,[2]],[4,[1]]],1],[[5,3,6],5],[[[4,[[3,[[3,[2]]]]]]],7],[[[4,[[3,[[3,[2]]]]]]],7],[[[4,[[3,[[3,[2]]]]]],[4,[[3,[[3,[2]]]]]]]],[[[4,[[3,[[3,[2]]]]]],[4,[[3,[2]]]],[4,[[3,[[3,[2]]]]]]]],[[[4,[[3,[[3,[2]]]]]],[4,[[3,[[3,[2]]]]]]],7],[[2,2,2]],[[2,2,2]]],"c":[],"p":[[4,"c_void"],[15,"u8"],[15,"array"],[3,"NonNull"],[15,"i32"],[15,"usize"],[15,"bool"]]}\ }'); if (typeof window !== 'undefined' && window.initSearch) {window.initSearch(searchIndex)}; diff --git a/settings.html b/settings.html index 62ddbfa62..b64823301 100644 --- a/settings.html +++ b/settings.html @@ -1 +1 @@ -Rustdoc settings

Rustdoc settings

Back
\ No newline at end of file +Rustdoc settings

Rustdoc settings

Back
\ No newline at end of file diff --git a/source-files.js b/source-files.js index d83b68e36..24ed2a2f3 100644 --- a/source-files.js +++ b/source-files.js @@ -1,5 +1,5 @@ var sourcesIndex = JSON.parse('{\ -"cairo_native":["",[["debug_info",[],["funcs.rs","libfunc_declarations.rs","statements.rs","type_declarations.rs"]],["error",[],["compile.rs","jit_engine.rs","libfuncs.rs","types.rs"]],["libfuncs",[],["ap_tracking.rs","array.rs","bitwise.rs","bool.rs","box.rs","branch_align.rs","cast.rs","debug.rs","drop.rs","dup.rs","ec.rs","enum.rs","felt252.rs","felt252_dict.rs","felt252_dict_entry.rs","function_call.rs","gas.rs","mem.rs","nullable.rs","pedersen.rs","poseidon.rs","snapshot_take.rs","stark_net.rs","struct.rs","uint128.rs","uint16.rs","uint256.rs","uint32.rs","uint512.rs","uint64.rs","uint8.rs","unconditional_jump.rs","unwrap_non_zero.rs"]],["metadata",[],["debug_utils.rs","enum_snapshot_variants.rs","gas.rs","prime_modulo.rs","realloc_bindings.rs","runtime_bindings.rs","snapshot_clones.rs","syscall_handler.rs","tail_recursion.rs"]],["types",[],["array.rs","bitwise.rs","box.rs","builtin_costs.rs","ec_op.rs","ec_point.rs","ec_state.rs","enum.rs","felt252.rs","felt252_dict.rs","felt252_dict_entry.rs","gas_builtin.rs","non_zero.rs","nullable.rs","pedersen.rs","poseidon.rs","range_check.rs","segment_arena.rs","snapshot.rs","squashed_felt252_dict.rs","stark_net.rs","struct.rs","uint128.rs","uint128_mul_guarantee.rs","uint16.rs","uint32.rs","uint64.rs","uint8.rs","uninitialized.rs"]]],["cache.rs","compiler.rs","context.rs","debug_info.rs","error.rs","execution_result.rs","executor.rs","ffi.rs","jit_runner.rs","lib.rs","libfuncs.rs","metadata.rs","module.rs","starknet.rs","types.rs","utils.rs","values.rs"]],\ +"cairo_native":["",[["debug_info",[],["funcs.rs","libfunc_declarations.rs","statements.rs","type_declarations.rs"]],["error",[],["compile.rs","jit_engine.rs","libfuncs.rs","types.rs"]],["libfuncs",[],["ap_tracking.rs","array.rs","bitwise.rs","bool.rs","box.rs","branch_align.rs","cast.rs","debug.rs","drop.rs","dup.rs","ec.rs","enum.rs","felt252.rs","felt252_dict.rs","felt252_dict_entry.rs","function_call.rs","gas.rs","mem.rs","nullable.rs","pedersen.rs","poseidon.rs","sint16.rs","sint8.rs","snapshot_take.rs","stark_net.rs","struct.rs","uint128.rs","uint16.rs","uint256.rs","uint32.rs","uint512.rs","uint64.rs","uint8.rs","unconditional_jump.rs","unwrap_non_zero.rs"]],["metadata",[],["debug_utils.rs","enum_snapshot_variants.rs","gas.rs","prime_modulo.rs","realloc_bindings.rs","runtime_bindings.rs","snapshot_clones.rs","syscall_handler.rs","tail_recursion.rs"]],["types",[],["array.rs","bitwise.rs","box.rs","builtin_costs.rs","ec_op.rs","ec_point.rs","ec_state.rs","enum.rs","felt252.rs","felt252_dict.rs","felt252_dict_entry.rs","gas_builtin.rs","non_zero.rs","nullable.rs","pedersen.rs","poseidon.rs","range_check.rs","segment_arena.rs","snapshot.rs","squashed_felt252_dict.rs","stark_net.rs","struct.rs","uint128.rs","uint128_mul_guarantee.rs","uint16.rs","uint32.rs","uint64.rs","uint8.rs","uninitialized.rs"]]],["cache.rs","compiler.rs","context.rs","debug_info.rs","error.rs","execution_result.rs","executor.rs","ffi.rs","jit_runner.rs","lib.rs","libfuncs.rs","metadata.rs","module.rs","starknet.rs","types.rs","utils.rs","values.rs"]],\ "cairo_native_compile":["",[],["cairo-native-compile.rs"]],\ "cairo_native_dump":["",[],["cairo-native-dump.rs"]],\ "cairo_native_run":["",[],["cairo-native-run.rs"]],\ diff --git a/src/cairo_native/execution_result.rs.html b/src/cairo_native/execution_result.rs.html index 22b6d8386..92cfdd705 100644 --- a/src/cairo_native/execution_result.rs.html +++ b/src/cairo_native/execution_result.rs.html @@ -117,14 +117,14 @@ values::JITValue, ExecutionResult, }; -use cairo_felt::Felt252; +use starknet_types_core::felt::Felt; /// Starknet contract execution result. #[derive(Debug, Default)] pub struct ContractExecutionResult { pub remaining_gas: u128, pub failure_flag: bool, - pub return_values: Vec<Felt252>, + pub return_values: Vec<Felt>, pub error_msg: Option<String>, } @@ -152,7 +152,7 @@ .iter() .map(|x| { if let JITValue::Felt252(f) = x { - f.clone() + *f } else { panic!("should always be a felt") } @@ -183,7 +183,7 @@ .iter() .map(|x| { if let JITValue::Felt252(f) = x { - f.clone() + *f } else { panic!("should always be a felt") } @@ -191,7 +191,7 @@ .collect(); let str_error = - String::from_utf8(felt_vec.get(0).unwrap().to_be_bytes().to_vec()) + String::from_utf8(felt_vec.get(0).unwrap().to_bytes_be().to_vec()) .unwrap() .trim_start_matches('\0') .to_owned(); diff --git a/src/cairo_native/jit_runner.rs.html b/src/cairo_native/jit_runner.rs.html index ed3e80c1e..1cd95aefe 100644 --- a/src/cairo_native/jit_runner.rs.html +++ b/src/cairo_native/jit_runner.rs.html @@ -400,6 +400,26 @@ 400 401 402 +403 +404 +405 +406 +407 +408 +409 +410 +411 +412 +413 +414 +415 +416 +417 +418 +419 +420 +421 +422
//! # JIT runner
 
 use crate::{
@@ -606,8 +626,28 @@
 
                 params_ptrs.push(next.to_jit(&arena, registry, param_type_id)?);
             }
-            CoreTypeConcrete::Sint8(_) => todo!(),
-            CoreTypeConcrete::Sint16(_) => todo!(),
+            CoreTypeConcrete::Sint8(_) => {
+                let next = params_it
+                    .next()
+                    .ok_or_else(|| make_missing_parameter(param_type_id))?;
+
+                if !matches!(next, JITValue::Sint8(_)) {
+                    Err(make_unexpected_value_error("JITValue::Sint8".to_string()))?;
+                }
+
+                params_ptrs.push(next.to_jit(&arena, registry, param_type_id)?);
+            }
+            CoreTypeConcrete::Sint16(_) => {
+                let next = params_it
+                    .next()
+                    .ok_or_else(|| make_missing_parameter(param_type_id))?;
+
+                if !matches!(next, JITValue::Sint16(_)) {
+                    Err(make_unexpected_value_error("JITValue::Sint16".to_string()))?;
+                }
+
+                params_ptrs.push(next.to_jit(&arena, registry, param_type_id)?);
+            }
             CoreTypeConcrete::Sint32(_) => todo!(),
             CoreTypeConcrete::Sint64(_) => todo!(),
             CoreTypeConcrete::Sint128(_) => todo!(),
diff --git a/src/cairo_native/libfuncs.rs.html b/src/cairo_native/libfuncs.rs.html
index 1c37363bd..ce1074ff8 100644
--- a/src/cairo_native/libfuncs.rs.html
+++ b/src/cairo_native/libfuncs.rs.html
@@ -479,6 +479,12 @@
 479
 480
 481
+482
+483
+484
+485
+486
+487
 
//! # Compiler libfunc infrastructure
 //!
 //! Contains libfunc generation stuff (aka. the actual instructions).
@@ -522,6 +528,8 @@
 pub mod nullable;
 pub mod pedersen;
 pub mod poseidon;
+pub mod sint16;
+pub mod sint8;
 pub mod snapshot_take;
 pub mod stark_net;
 pub mod r#struct;
@@ -680,8 +688,12 @@
             Self::SnapshotTake(info) => self::snapshot_take::build(
                 context, registry, entry, location, helper, metadata, info,
             ),
-            CoreConcreteLibfunc::Sint8(_) => todo!(),
-            CoreConcreteLibfunc::Sint16(_) => todo!(),
+            Self::Sint8(info) => {
+                self::sint8::build(context, registry, entry, location, helper, metadata, info)
+            }
+            CoreConcreteLibfunc::Sint16(info) => {
+                self::sint16::build(context, registry, entry, location, helper, metadata, info)
+            }
             CoreConcreteLibfunc::Sint32(_) => todo!(),
             CoreConcreteLibfunc::Sint64(_) => todo!(),
             CoreConcreteLibfunc::Sint128(_) => todo!(),
diff --git a/src/cairo_native/libfuncs/ec.rs.html b/src/cairo_native/libfuncs/ec.rs.html
index 48ee6f82f..9b4d4b494 100644
--- a/src/cairo_native/libfuncs/ec.rs.html
+++ b/src/cairo_native/libfuncs/ec.rs.html
@@ -1368,14 +1368,6 @@
 1368
 1369
 1370
-1371
-1372
-1373
-1374
-1375
-1376
-1377
-1378
 
//! # Elliptic curve libfuncs
 //!
 //! TODO
@@ -2386,10 +2378,10 @@
         utils::test::{jit_enum, jit_struct, load_cairo, run_program, run_program_assert_output},
         values::JITValue,
     };
-    use cairo_felt::Felt252;
     use cairo_lang_sierra::program::Program;
     use lazy_static::lazy_static;
-    use num_traits::Num;
+
+    use starknet_types_core::felt::Felt;
 
     lazy_static! {
         static ref EC_POINT_IS_ZERO: (String, Program) = load_cairo! {
@@ -2502,7 +2494,7 @@
         );
         assert_eq!(
             r(0.into(), 1.into()),
-            [JITValue::EcPoint(0.into(), Felt252::new(-1))]
+            [JITValue::EcPoint(0.into(), Felt::from(-1))]
         );
         assert_eq!(
             r(1.into(), 0.into()),
@@ -2510,7 +2502,7 @@
         );
         assert_eq!(
             r(1.into(), 1.into()),
-            [JITValue::EcPoint(1.into(), Felt252::new(-1))]
+            [JITValue::EcPoint(1.into(), Felt::from(-1))]
         );
     }
 
@@ -2521,8 +2513,8 @@
 
         assert_eq!(r(0.into()), [jit_enum!(1, jit_struct!())]);
         assert_eq!(r(1234.into()), [jit_enum!(0, JITValue::EcPoint(
-            Felt252::new(1234),
-            Felt252::from_str_radix("1301976514684871091717790968549291947487646995000837413367950573852273027507", 10).unwrap()
+            Felt::from(1234),
+            Felt::from_dec_str("1301976514684871091717790968549291947487646995000837413367950573852273027507").unwrap()
         ))]);
     }
 
@@ -2530,21 +2522,21 @@
     fn ec_state_add() {
         run_program_assert_output(&EC_STATE_ADD, "run_test", &[
             JITValue::EcState(
-                Felt252::from_str_radix("3151312365169595090315724863753927489909436624354740709748557281394568342450", 10).unwrap(),
-                Felt252::from_str_radix("2835232394579952276045648147338966184268723952674536708929458753792035266179", 10).unwrap(),
-                Felt252::from_str_radix("3151312365169595090315724863753927489909436624354740709748557281394568342450", 10).unwrap(),
-                Felt252::from_str_radix("2835232394579952276045648147338966184268723952674536708929458753792035266179", 10).unwrap()
+                Felt::from_dec_str("3151312365169595090315724863753927489909436624354740709748557281394568342450").unwrap(),
+                Felt::from_dec_str("2835232394579952276045648147338966184268723952674536708929458753792035266179").unwrap(),
+                Felt::from_dec_str("3151312365169595090315724863753927489909436624354740709748557281394568342450").unwrap(),
+                Felt::from_dec_str("2835232394579952276045648147338966184268723952674536708929458753792035266179").unwrap()
             ),
             JITValue::EcPoint(
-                Felt252::from_str_radix("1234", 10).unwrap(),
-                Felt252::from_str_radix("1301976514684871091717790968549291947487646995000837413367950573852273027507", 10).unwrap()
+                Felt::from_dec_str("1234").unwrap(),
+                Felt::from_dec_str("1301976514684871091717790968549291947487646995000837413367950573852273027507").unwrap()
             )
         ], &[
             JITValue::EcState(
-                Felt252::from_str_radix("763975897824944497806946001227010133599886598340174017198031710397718335159", 10).unwrap(),
-                Felt252::from_str_radix("2805180267536471620369715068237762638204710971142209985448115065526708105983", 10).unwrap(),
-                Felt252::from_str_radix("3151312365169595090315724863753927489909436624354740709748557281394568342450", 10).unwrap(),
-                Felt252::from_str_radix("2835232394579952276045648147338966184268723952674536708929458753792035266179", 10).unwrap()
+                Felt::from_dec_str("763975897824944497806946001227010133599886598340174017198031710397718335159").unwrap(),
+                Felt::from_dec_str("2805180267536471620369715068237762638204710971142209985448115065526708105983").unwrap(),
+                Felt::from_dec_str("3151312365169595090315724863753927489909436624354740709748557281394568342450").unwrap(),
+                Felt::from_dec_str("2835232394579952276045648147338966184268723952674536708929458753792035266179").unwrap()
             )
         ]);
     }
@@ -2553,43 +2545,43 @@
     fn ec_state_add_mul() {
         run_program_assert_output(&EC_STATE_ADD_MUL, "run_test", &[
             JITValue::EcState(
-                Felt252::from_str_radix("3151312365169595090315724863753927489909436624354740709748557281394568342450", 10).unwrap(),
-                Felt252::from_str_radix("2835232394579952276045648147338966184268723952674536708929458753792035266179", 10).unwrap(),
-                Felt252::from_str_radix("3151312365169595090315724863753927489909436624354740709748557281394568342450", 10).unwrap(),
-                Felt252::from_str_radix("2835232394579952276045648147338966184268723952674536708929458753792035266179", 10).unwrap()
+                Felt::from_dec_str("3151312365169595090315724863753927489909436624354740709748557281394568342450").unwrap(),
+                Felt::from_dec_str("2835232394579952276045648147338966184268723952674536708929458753792035266179").unwrap(),
+                Felt::from_dec_str("3151312365169595090315724863753927489909436624354740709748557281394568342450").unwrap(),
+                Felt::from_dec_str("2835232394579952276045648147338966184268723952674536708929458753792035266179").unwrap()
             ),
-            Felt252::new(1).into(), // scalar
+            Felt::from(1).into(), // scalar
             JITValue::EcPoint(
-                Felt252::from_str_radix("1234", 10).unwrap(),
-                Felt252::from_str_radix("1301976514684871091717790968549291947487646995000837413367950573852273027507", 10).unwrap()
+                Felt::from_dec_str("1234").unwrap(),
+                Felt::from_dec_str("1301976514684871091717790968549291947487646995000837413367950573852273027507").unwrap()
             )
         ], &[
             JITValue::EcState(
-                Felt252::from_str_radix("763975897824944497806946001227010133599886598340174017198031710397718335159", 10).unwrap(),
-                Felt252::from_str_radix("2805180267536471620369715068237762638204710971142209985448115065526708105983", 10).unwrap(),
-                Felt252::from_str_radix("3151312365169595090315724863753927489909436624354740709748557281394568342450", 10).unwrap(),
-                Felt252::from_str_radix("2835232394579952276045648147338966184268723952674536708929458753792035266179", 10).unwrap()
+                Felt::from_dec_str("763975897824944497806946001227010133599886598340174017198031710397718335159").unwrap(),
+                Felt::from_dec_str("2805180267536471620369715068237762638204710971142209985448115065526708105983").unwrap(),
+                Felt::from_dec_str("3151312365169595090315724863753927489909436624354740709748557281394568342450").unwrap(),
+                Felt::from_dec_str("2835232394579952276045648147338966184268723952674536708929458753792035266179").unwrap()
             )
         ]);
 
         run_program_assert_output(&EC_STATE_ADD_MUL, "run_test", &[
             JITValue::EcState(
-                Felt252::from_str_radix("3151312365169595090315724863753927489909436624354740709748557281394568342450", 10).unwrap(),
-                Felt252::from_str_radix("2835232394579952276045648147338966184268723952674536708929458753792035266179", 10).unwrap(),
-                Felt252::from_str_radix("3151312365169595090315724863753927489909436624354740709748557281394568342450", 10).unwrap(),
-                Felt252::from_str_radix("2835232394579952276045648147338966184268723952674536708929458753792035266179", 10).unwrap()
+                Felt::from_dec_str("3151312365169595090315724863753927489909436624354740709748557281394568342450").unwrap(),
+                Felt::from_dec_str("2835232394579952276045648147338966184268723952674536708929458753792035266179").unwrap(),
+                Felt::from_dec_str("3151312365169595090315724863753927489909436624354740709748557281394568342450").unwrap(),
+                Felt::from_dec_str("2835232394579952276045648147338966184268723952674536708929458753792035266179").unwrap()
             ),
-            Felt252::new(2).into(), // scalar
+            Felt::from(2).into(), // scalar
             JITValue::EcPoint(
-                Felt252::from_str_radix("1234", 10).unwrap(),
-                Felt252::from_str_radix("1301976514684871091717790968549291947487646995000837413367950573852273027507", 10).unwrap()
+                Felt::from_dec_str("1234").unwrap(),
+                Felt::from_dec_str("1301976514684871091717790968549291947487646995000837413367950573852273027507").unwrap()
             )
         ], &[
             JITValue::EcState(
-                Felt252::from_str_radix("3016674370847061744386893405108272070153695046160622325692702034987910716850", 10).unwrap(),
-                Felt252::from_str_radix("898133181809473419542838028331350248951548889944002871647069130998202992502", 10).unwrap(),
-                Felt252::from_str_radix("3151312365169595090315724863753927489909436624354740709748557281394568342450", 10).unwrap(),
-                Felt252::from_str_radix("2835232394579952276045648147338966184268723952674536708929458753792035266179", 10).unwrap()
+                Felt::from_dec_str("3016674370847061744386893405108272070153695046160622325692702034987910716850").unwrap(),
+                Felt::from_dec_str("898133181809473419542838028331350248951548889944002871647069130998202992502").unwrap(),
+                Felt::from_dec_str("3151312365169595090315724863753927489909436624354740709748557281394568342450").unwrap(),
+                Felt::from_dec_str("2835232394579952276045648147338966184268723952674536708929458753792035266179").unwrap()
             )
         ]);
     }
@@ -2600,24 +2592,20 @@
             &EC_STATE_FINALIZE,
             "run_test",
             &[JITValue::EcState(
-                Felt252::from_str_radix(
+                Felt::from_dec_str(
                     "3151312365169595090315724863753927489909436624354740709748557281394568342450",
-                    10,
                 )
                 .unwrap(),
-                Felt252::from_str_radix(
+                Felt::from_dec_str(
                     "2835232394579952276045648147338966184268723952674536708929458753792035266179",
-                    10,
                 )
                 .unwrap(),
-                Felt252::from_str_radix(
+                Felt::from_dec_str(
                     "3151312365169595090315724863753927489909436624354740709748557281394568342450",
-                    10,
                 )
                 .unwrap(),
-                Felt252::from_str_radix(
+                Felt::from_dec_str(
                     "2835232394579952276045648147338966184268723952674536708929458753792035266179",
-                    10,
                 )
                 .unwrap(),
             )],
@@ -2625,15 +2613,15 @@
         );
         run_program_assert_output(&EC_STATE_FINALIZE, "run_test", &[
             JITValue::EcState(
-                Felt252::from_str_radix("763975897824944497806946001227010133599886598340174017198031710397718335159", 10).unwrap(),
-                Felt252::from_str_radix("2805180267536471620369715068237762638204710971142209985448115065526708105983", 10).unwrap(),
-                Felt252::from_str_radix("3151312365169595090315724863753927489909436624354740709748557281394568342450", 10).unwrap(),
-                Felt252::from_str_radix("2835232394579952276045648147338966184268723952674536708929458753792035266179", 10).unwrap()
+                Felt::from_dec_str("763975897824944497806946001227010133599886598340174017198031710397718335159").unwrap(),
+                Felt::from_dec_str("2805180267536471620369715068237762638204710971142209985448115065526708105983").unwrap(),
+                Felt::from_dec_str("3151312365169595090315724863753927489909436624354740709748557281394568342450").unwrap(),
+                Felt::from_dec_str("2835232394579952276045648147338966184268723952674536708929458753792035266179").unwrap()
             ),
         ], &[
             jit_enum!(0, JITValue::EcPoint(
-                    Felt252::new(1234),
-                    Felt252::from_str_radix("1301976514684871091717790968549291947487646995000837413367950573852273027507", 10).unwrap()
+                    Felt::from(1234),
+                    Felt::from_dec_str("1301976514684871091717790968549291947487646995000837413367950573852273027507").unwrap()
                 )
             )
         ]);
@@ -2646,24 +2634,20 @@
             "run_test",
             &[],
             &[JITValue::EcState(
-                Felt252::from_str_radix(
+                Felt::from_dec_str(
                     "3151312365169595090315724863753927489909436624354740709748557281394568342450",
-                    10,
                 )
                 .unwrap(),
-                Felt252::from_str_radix(
+                Felt::from_dec_str(
                     "2835232394579952276045648147338966184268723952674536708929458753792035266179",
-                    10,
                 )
                 .unwrap(),
-                Felt252::from_str_radix(
+                Felt::from_dec_str(
                     "3151312365169595090315724863753927489909436624354740709748557281394568342450",
-                    10,
                 )
                 .unwrap(),
-                Felt252::from_str_radix(
+                Felt::from_dec_str(
                     "2835232394579952276045648147338966184268723952674536708929458753792035266179",
-                    10,
                 )
                 .unwrap(),
             )],
@@ -2676,8 +2660,8 @@
             &EC_POINT_TRY_NEW_NZ,
             "run_test",
             &[
-                Felt252::from_str_radix("0", 10).unwrap().into(),
-                Felt252::from_str_radix("0", 10).unwrap().into(),
+                Felt::from_dec_str("0").unwrap().into(),
+                Felt::from_dec_str("0").unwrap().into(),
             ],
             &[jit_enum!(1, jit_struct!())],
         );
@@ -2685,26 +2669,26 @@
             &EC_POINT_TRY_NEW_NZ,
             "run_test",
             &[
-                Felt252::from_str_radix("1234", 10).unwrap().into(),
-                Felt252::from_str_radix("1301976514684871091717790968549291947487646995000837413367950573852273027507", 10).unwrap().into()
+                Felt::from_dec_str("1234").unwrap().into(),
+                Felt::from_dec_str("1301976514684871091717790968549291947487646995000837413367950573852273027507").unwrap().into()
             ],
             &[
                 jit_enum!(0, JITValue::EcPoint(
-                    Felt252::from_str_radix("1234", 10).unwrap(),
-                    Felt252::from_str_radix("1301976514684871091717790968549291947487646995000837413367950573852273027507", 10).unwrap()
+                    Felt::from_dec_str("1234").unwrap(),
+                    Felt::from_dec_str("1301976514684871091717790968549291947487646995000837413367950573852273027507").unwrap()
                 ))
             ],
         );
         run_program_assert_output(
             &EC_POINT_TRY_NEW_NZ,
             "run_test",
-            &[  Felt252::from_str_radix("1234", 10).unwrap().into(),
-                Felt252::from_str_radix("1301976514684871091717790968549291947487646995000837413367950573852273027507", 10).unwrap().neg().into()
+            &[  Felt::from_dec_str("1234").unwrap().into(),
+                Felt::from_dec_str("1301976514684871091717790968549291947487646995000837413367950573852273027507").unwrap().neg().into()
                 ],
             &[
                 jit_enum!(0, JITValue::EcPoint(
-                    Felt252::from_str_radix("1234", 10).unwrap(),
-                    Felt252::from_str_radix("1301976514684871091717790968549291947487646995000837413367950573852273027507", 10).unwrap().neg()
+                    Felt::from_dec_str("1234").unwrap(),
+                    Felt::from_dec_str("1301976514684871091717790968549291947487646995000837413367950573852273027507").unwrap().neg()
                 ))
             ],
         );
@@ -2712,11 +2696,11 @@
 
     #[test]
     fn ec_point_unwrap() {
-        fn parse(x: &str) -> Felt252 {
+        fn parse(x: &str) -> Felt {
             if let Some(x) = x.strip_prefix('-') {
-                Felt252::from_str_radix(x, 10).unwrap().neg()
+                Felt::from_dec_str(x).unwrap().neg()
             } else {
-                Felt252::from_str_radix(x, 10).unwrap()
+                Felt::from_dec_str(x).unwrap()
             }
         }
 
@@ -2748,8 +2732,8 @@
             "run_test",
             &[],
             &[JITValue::EcPoint(
-                Felt252::from_str_radix("0", 10).unwrap(),
-                Felt252::from_str_radix("0", 10).unwrap().neg(),
+                Felt::from_dec_str("0").unwrap(),
+                Felt::from_dec_str("0").unwrap().neg(),
             )],
         );
     }
diff --git a/src/cairo_native/libfuncs/enum.rs.html b/src/cairo_native/libfuncs/enum.rs.html
index f8bde8c9d..d77b26c2c 100644
--- a/src/cairo_native/libfuncs/enum.rs.html
+++ b/src/cairo_native/libfuncs/enum.rs.html
@@ -1096,9 +1096,9 @@
 #[cfg(test)]
 mod test {
     use crate::utils::test::{jit_enum, jit_struct, load_cairo, run_program_assert_output};
-    use cairo_felt::Felt252;
     use cairo_lang_sierra::program::Program;
     use lazy_static::lazy_static;
+    use starknet_types_core::felt::Felt;
 
     lazy_static! {
         static ref ENUM_INIT: (String, Program) = load_cairo! {
@@ -1165,8 +1165,8 @@
             "run_test",
             &[],
             &[jit_struct!(
-                jit_enum!(0, Felt252::new(-1).into()),
-                jit_enum!(0, Felt252::new(5678).into()),
+                jit_enum!(0, Felt::from(-1).into()),
+                jit_enum!(0, Felt::from(5678).into()),
                 jit_enum!(1, 90u8.into()),
                 jit_enum!(2, 9012u16.into()),
                 jit_enum!(3, 34567890u32.into()),
@@ -1177,7 +1177,7 @@
 
     #[test]
     fn enum_match() {
-        run_program_assert_output(&ENUM_MATCH, "match_a", &[], &[Felt252::new(5).into()]);
+        run_program_assert_output(&ENUM_MATCH, "match_a", &[], &[Felt::from(5).into()]);
 
         run_program_assert_output(&ENUM_MATCH, "match_b", &[], &[5u8.into()]);
     }
diff --git a/src/cairo_native/libfuncs/felt252.rs.html b/src/cairo_native/libfuncs/felt252.rs.html
index 229f07675..a262f5688 100644
--- a/src/cairo_native/libfuncs/felt252.rs.html
+++ b/src/cairo_native/libfuncs/felt252.rs.html
@@ -623,7 +623,7 @@
 623
 624
 625
-
//! # `felt252`-related libfuncs
+
//! # `Felt`-related libfuncs
 
 use super::{LibfuncBuilder, LibfuncHelper};
 use crate::{
diff --git a/src/cairo_native/libfuncs/felt252_dict.rs.html b/src/cairo_native/libfuncs/felt252_dict.rs.html
index 3f65b0958..382f6ce35 100644
--- a/src/cairo_native/libfuncs/felt252_dict.rs.html
+++ b/src/cairo_native/libfuncs/felt252_dict.rs.html
@@ -210,7 +210,7 @@
 210
 211
 212
-
//! # `felt252` dictionary libfuncs
+
//! # `Felt` dictionary libfuncs
 
 use super::{LibfuncBuilder, LibfuncHelper};
 use crate::{
diff --git a/src/cairo_native/libfuncs/felt252_dict_entry.rs.html b/src/cairo_native/libfuncs/felt252_dict_entry.rs.html
index 4f0ad5886..2721e8b7a 100644
--- a/src/cairo_native/libfuncs/felt252_dict_entry.rs.html
+++ b/src/cairo_native/libfuncs/felt252_dict_entry.rs.html
@@ -476,7 +476,7 @@
 476
 477
 478
-
//! # `felt252` dictionary entry libfuncs
+
//! # `Felt` dictionary entry libfuncs
 //!
 //! TODO
 
diff --git a/src/cairo_native/libfuncs/pedersen.rs.html b/src/cairo_native/libfuncs/pedersen.rs.html
index 9a4a99063..1a911d06a 100644
--- a/src/cairo_native/libfuncs/pedersen.rs.html
+++ b/src/cairo_native/libfuncs/pedersen.rs.html
@@ -263,7 +263,6 @@
 263
 264
 265
-266
 
//! # Pedersen hashing libfuncs
 //!
 
@@ -504,8 +503,8 @@
 #[cfg(test)]
 mod test {
     use crate::utils::test::{load_cairo, run_program_assert_output};
-    use cairo_felt::Felt252;
-    use num_traits::Num;
+
+    use starknet_types_core::felt::Felt;
 
     #[test]
     fn run_pedersen() {
@@ -520,10 +519,9 @@
         run_program_assert_output(
             &program,
             "run_test",
-            &[Felt252::new(2).into(), Felt252::new(4).into()],
-            &[Felt252::from_str_radix(
+            &[Felt::from(2).into(), Felt::from(4).into()],
+            &[Felt::from_dec_str(
                 "2178161520066714737684323463974044933282313051386084149915030950231093462467",
-                10,
             )
             .unwrap()
             .into()],
diff --git a/src/cairo_native/libfuncs/poseidon.rs.html b/src/cairo_native/libfuncs/poseidon.rs.html
index 95fbe3baf..a4bffc134 100644
--- a/src/cairo_native/libfuncs/poseidon.rs.html
+++ b/src/cairo_native/libfuncs/poseidon.rs.html
@@ -331,9 +331,6 @@
 331
 332
 333
-334
-335
-336
 
//! # Poseidon hashing libfuncs
 //!
 
@@ -626,8 +623,8 @@
 #[cfg(test)]
 mod test {
     use crate::utils::test::{jit_struct, load_cairo, run_program_assert_output};
-    use cairo_felt::Felt252;
-    use num_traits::Num;
+
+    use starknet_types_core::felt::Felt;
 
     #[test]
     fn run_hades_permutation() {
@@ -643,26 +640,23 @@
             &program,
             "run_test",
             &[
-                Felt252::new(2).into(),
-                Felt252::new(4).into(),
-                Felt252::new(4).into(),
+                Felt::from(2).into(),
+                Felt::from(4).into(),
+                Felt::from(4).into(),
             ],
             &[jit_struct!(
-                Felt252::from_str_radix(
-                    "1627044480024625333712068603977073585655327747658231320998869768849911913066",
-                    10
+                Felt::from_dec_str(
+                    "1627044480024625333712068603977073585655327747658231320998869768849911913066"
                 )
                 .unwrap()
                 .into(),
-                Felt252::from_str_radix(
-                    "2368195581807763724810563135784547417602556730014791322540110420941926079965",
-                    10
+                Felt::from_dec_str(
+                    "2368195581807763724810563135784547417602556730014791322540110420941926079965"
                 )
                 .unwrap()
                 .into(),
-                Felt252::from_str_radix(
-                    "2381325839211954898363395375151559373051496038592329842107874845056395867189",
-                    10
+                Felt::from_dec_str(
+                    "2381325839211954898363395375151559373051496038592329842107874845056395867189"
                 )
                 .unwrap()
                 .into(),
diff --git a/src/cairo_native/libfuncs/sint16.rs.html b/src/cairo_native/libfuncs/sint16.rs.html
new file mode 100644
index 000000000..efdecaec2
--- /dev/null
+++ b/src/cairo_native/libfuncs/sint16.rs.html
@@ -0,0 +1,1703 @@
+sint16.rs - source
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
+83
+84
+85
+86
+87
+88
+89
+90
+91
+92
+93
+94
+95
+96
+97
+98
+99
+100
+101
+102
+103
+104
+105
+106
+107
+108
+109
+110
+111
+112
+113
+114
+115
+116
+117
+118
+119
+120
+121
+122
+123
+124
+125
+126
+127
+128
+129
+130
+131
+132
+133
+134
+135
+136
+137
+138
+139
+140
+141
+142
+143
+144
+145
+146
+147
+148
+149
+150
+151
+152
+153
+154
+155
+156
+157
+158
+159
+160
+161
+162
+163
+164
+165
+166
+167
+168
+169
+170
+171
+172
+173
+174
+175
+176
+177
+178
+179
+180
+181
+182
+183
+184
+185
+186
+187
+188
+189
+190
+191
+192
+193
+194
+195
+196
+197
+198
+199
+200
+201
+202
+203
+204
+205
+206
+207
+208
+209
+210
+211
+212
+213
+214
+215
+216
+217
+218
+219
+220
+221
+222
+223
+224
+225
+226
+227
+228
+229
+230
+231
+232
+233
+234
+235
+236
+237
+238
+239
+240
+241
+242
+243
+244
+245
+246
+247
+248
+249
+250
+251
+252
+253
+254
+255
+256
+257
+258
+259
+260
+261
+262
+263
+264
+265
+266
+267
+268
+269
+270
+271
+272
+273
+274
+275
+276
+277
+278
+279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+309
+310
+311
+312
+313
+314
+315
+316
+317
+318
+319
+320
+321
+322
+323
+324
+325
+326
+327
+328
+329
+330
+331
+332
+333
+334
+335
+336
+337
+338
+339
+340
+341
+342
+343
+344
+345
+346
+347
+348
+349
+350
+351
+352
+353
+354
+355
+356
+357
+358
+359
+360
+361
+362
+363
+364
+365
+366
+367
+368
+369
+370
+371
+372
+373
+374
+375
+376
+377
+378
+379
+380
+381
+382
+383
+384
+385
+386
+387
+388
+389
+390
+391
+392
+393
+394
+395
+396
+397
+398
+399
+400
+401
+402
+403
+404
+405
+406
+407
+408
+409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
+426
+427
+428
+429
+430
+431
+432
+433
+434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
+455
+456
+457
+458
+459
+460
+461
+462
+463
+464
+465
+466
+467
+468
+469
+470
+471
+472
+473
+474
+475
+476
+477
+478
+479
+480
+481
+482
+483
+484
+485
+486
+487
+488
+489
+490
+491
+492
+493
+494
+495
+496
+497
+498
+499
+500
+501
+502
+503
+504
+505
+506
+507
+508
+509
+510
+511
+512
+513
+514
+515
+516
+517
+518
+519
+520
+521
+522
+523
+524
+525
+526
+527
+528
+529
+530
+531
+532
+533
+534
+535
+536
+537
+538
+539
+540
+541
+542
+543
+544
+545
+546
+547
+548
+549
+550
+551
+552
+553
+554
+555
+556
+557
+558
+559
+560
+561
+562
+563
+564
+565
+566
+567
+568
+569
+570
+571
+572
+573
+574
+575
+576
+577
+578
+579
+580
+581
+582
+583
+584
+585
+586
+587
+588
+589
+590
+591
+592
+593
+594
+595
+596
+597
+598
+599
+600
+601
+602
+603
+604
+605
+606
+607
+608
+609
+610
+611
+612
+613
+614
+615
+616
+617
+618
+619
+620
+621
+622
+623
+624
+625
+626
+627
+628
+629
+630
+631
+632
+633
+634
+635
+636
+637
+638
+639
+640
+641
+642
+643
+644
+645
+646
+647
+648
+649
+650
+651
+652
+653
+654
+655
+656
+657
+658
+659
+660
+661
+662
+663
+664
+665
+666
+667
+668
+669
+670
+671
+672
+673
+674
+675
+676
+677
+678
+679
+680
+681
+682
+683
+684
+685
+686
+687
+688
+689
+690
+691
+692
+693
+694
+695
+696
+697
+698
+699
+700
+701
+702
+703
+704
+705
+706
+707
+708
+709
+710
+711
+712
+713
+714
+715
+716
+717
+718
+719
+720
+721
+722
+723
+724
+725
+726
+727
+728
+729
+730
+731
+732
+733
+734
+735
+736
+737
+738
+739
+740
+741
+742
+743
+744
+745
+746
+747
+748
+749
+750
+751
+752
+753
+754
+755
+756
+757
+758
+759
+760
+761
+762
+763
+764
+765
+766
+767
+768
+769
+770
+771
+772
+773
+774
+775
+776
+777
+778
+779
+780
+781
+782
+783
+784
+785
+786
+787
+788
+789
+790
+791
+792
+793
+794
+795
+796
+797
+798
+799
+800
+801
+802
+803
+804
+805
+806
+807
+808
+809
+810
+811
+812
+813
+814
+815
+816
+817
+818
+819
+820
+821
+822
+823
+824
+825
+826
+827
+828
+829
+830
+831
+832
+833
+834
+835
+836
+837
+838
+839
+840
+841
+842
+843
+844
+845
+846
+847
+848
+849
+850
+851
+
//! # `i16`-related libfuncs
+use super::{LibfuncBuilder, LibfuncHelper};
+
+use crate::{
+    error::{
+        libfuncs::{Error, Result},
+        CoreTypeBuilderError,
+    },
+    metadata::MetadataStorage,
+    types::TypeBuilder,
+    utils::ProgramRegistryExt,
+};
+use cairo_lang_sierra::{
+    extensions::{
+        int::{
+            signed::{Sint16Concrete, Sint16Traits, SintConcrete},
+            IntConstConcreteLibfunc, IntOperationConcreteLibfunc, IntOperator,
+        },
+        lib_func::SignatureOnlyConcreteLibfunc,
+        ConcreteLibfunc, GenericLibfunc, GenericType,
+    },
+    program_registry::ProgramRegistry,
+};
+use melior::{
+    dialect::{
+        arith::{self, CmpiPredicate},
+        cf, llvm,
+    },
+    ir::{
+        attribute::{DenseI64ArrayAttribute, IntegerAttribute},
+        operation::OperationBuilder,
+        r#type::IntegerType,
+        Attribute, Block, Location, Value, ValueLike,
+    },
+    Context,
+};
+
+/// Select and call the correct libfunc builder function from the selector.
+pub fn build<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    selector: &Sint16Concrete,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    match selector {
+        SintConcrete::Const(info) => {
+            build_const(context, registry, entry, location, helper, metadata, info)
+        }
+        SintConcrete::Operation(info) => {
+            build_operation(context, registry, entry, location, helper, info)
+        }
+        SintConcrete::Equal(info) => build_equal(context, registry, entry, location, helper, info),
+        SintConcrete::ToFelt252(info) => {
+            build_to_felt252(context, registry, entry, location, helper, metadata, info)
+        }
+        SintConcrete::FromFelt252(info) => {
+            build_from_felt252(context, registry, entry, location, helper, metadata, info)
+        }
+        SintConcrete::IsZero(info) => {
+            build_is_zero(context, registry, entry, location, helper, info)
+        }
+        SintConcrete::WideMul(info) => {
+            build_widemul(context, registry, entry, location, helper, metadata, info)
+        }
+        SintConcrete::Diff(info) => build_diff(context, registry, entry, location, helper, info),
+    }
+}
+
+/// Generate MLIR operations for the `i16_const` libfunc.
+pub fn build_const<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &IntConstConcreteLibfunc<Sint16Traits>,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    let value = info.c;
+    let value_ty = registry.build_type(
+        context,
+        helper,
+        registry,
+        metadata,
+        &info.signature.branch_signatures[0].vars[0].ty,
+    )?;
+
+    let op0 = entry.append_operation(arith::constant(
+        context,
+        Attribute::parse(context, &format!("{value} : {value_ty}")).unwrap(),
+        location,
+    ));
+    entry.append_operation(helper.br(0, &[op0.result(0)?.into()], location));
+
+    Ok(())
+}
+
+/// Generate MLIR operations for the i16 operation libfunc.
+pub fn build_operation<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    _registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    info: &IntOperationConcreteLibfunc,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    let range_check: Value = entry.argument(0)?.into();
+    let lhs: Value = entry.argument(1)?.into();
+    let rhs: Value = entry.argument(2)?.into();
+
+    let op_name = match info.operator {
+        IntOperator::OverflowingAdd => "llvm.intr.sadd.with.overflow",
+        IntOperator::OverflowingSub => "llvm.intr.ssub.with.overflow",
+    };
+
+    let values_type = lhs.r#type();
+
+    let result_type = llvm::r#type::r#struct(
+        context,
+        &[values_type, IntegerType::new(context, 1).into()],
+        false,
+    );
+
+    let result = entry
+        .append_operation(
+            OperationBuilder::new(op_name, location)
+                .add_operands(&[lhs, rhs])
+                .add_results(&[result_type])
+                .build()?,
+        )
+        .result(0)?
+        .into();
+
+    let op_result = entry
+        .append_operation(llvm::extract_value(
+            context,
+            result,
+            DenseI64ArrayAttribute::new(context, &[0]),
+            values_type,
+            location,
+        ))
+        .result(0)?
+        .into();
+
+    // Create a const operation to get the 0 value to compare against
+    let zero_const = entry
+        .append_operation(arith::constant(
+            context,
+            IntegerAttribute::new(0.into(), values_type).into(),
+            location,
+        ))
+        .result(0)?
+        .into();
+    // Check if the result is positive
+    let is_positive = entry
+        .append_operation(arith::cmpi(
+            context,
+            CmpiPredicate::Sge,
+            op_result,
+            zero_const,
+            location,
+        ))
+        .result(0)?
+        .into();
+
+    // Check overflow flag
+    let op_overflow = entry
+        .append_operation(llvm::extract_value(
+            context,
+            result,
+            DenseI64ArrayAttribute::new(context, &[1]),
+            IntegerType::new(context, 1).into(),
+            location,
+        ))
+        .result(0)?
+        .into();
+
+    let block_not_overflow = helper.append_block(Block::new(&[]));
+    let block_overflow = helper.append_block(Block::new(&[]));
+
+    // The libfunc has three possible outputs: In Range, Overflow & Underflow
+    entry.append_operation(cf::cond_br(
+        context,
+        op_overflow,
+        block_overflow,
+        block_not_overflow,
+        &[],
+        &[],
+        location,
+    ));
+    // Check wether the result is positive to distinguish between undeflowing & overflowing results
+    block_overflow.append_operation(helper.cond_br(
+        context,
+        is_positive,
+        [1, 2],
+        [&[range_check, op_result], &[range_check, op_result]],
+        location,
+    ));
+    // No Oveflow/Underflow -> In range result
+    block_not_overflow.append_operation(helper.br(0, &[range_check, op_result], location));
+    Ok(())
+}
+
+/// Generate MLIR operations for the `i16_eq` libfunc.
+pub fn build_equal<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    _registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    _info: &SignatureOnlyConcreteLibfunc,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    let arg0: Value = entry.argument(0)?.into();
+    let arg1: Value = entry.argument(1)?.into();
+
+    let op0 = entry.append_operation(arith::cmpi(
+        context,
+        CmpiPredicate::Eq,
+        arg0,
+        arg1,
+        location,
+    ));
+
+    entry.append_operation(helper.cond_br(
+        context,
+        op0.result(0)?.into(),
+        [1, 0],
+        [&[]; 2],
+        location,
+    ));
+
+    Ok(())
+}
+
+/// Generate MLIR operations for the `i16_is_zero` libfunc.
+pub fn build_is_zero<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    _registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    _info: &SignatureOnlyConcreteLibfunc,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    let arg0: Value = entry.argument(0)?.into();
+
+    let op = entry.append_operation(arith::constant(
+        context,
+        IntegerAttribute::new(0, arg0.r#type()).into(),
+        location,
+    ));
+    let const_0 = op.result(0)?.into();
+
+    let condition = entry
+        .append_operation(arith::cmpi(
+            context,
+            CmpiPredicate::Eq,
+            arg0,
+            const_0,
+            location,
+        ))
+        .result(0)?
+        .into();
+
+    entry.append_operation(helper.cond_br(context, condition, [0, 1], [&[], &[arg0]], location));
+
+    Ok(())
+}
+
+/// Generate MLIR operations for the `i16_widemul` libfunc.
+pub fn build_widemul<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &SignatureOnlyConcreteLibfunc,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    let target_type = registry.build_type(
+        context,
+        helper,
+        registry,
+        metadata,
+        &info.output_types()[0][0],
+    )?;
+    let lhs: Value = entry.argument(0)?.into();
+    let rhs: Value = entry.argument(1)?.into();
+
+    let lhs = entry
+        .append_operation(arith::extsi(lhs, target_type, location))
+        .result(0)?
+        .into();
+    let rhs = entry
+        .append_operation(arith::extsi(rhs, target_type, location))
+        .result(0)?
+        .into();
+
+    let result = entry
+        .append_operation(arith::muli(lhs, rhs, location))
+        .result(0)?
+        .into();
+
+    entry.append_operation(helper.br(0, &[result], location));
+    Ok(())
+}
+
+/// Generate MLIR operations for the `i16_to_felt252` libfunc.
+pub fn build_to_felt252<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &SignatureOnlyConcreteLibfunc,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    let felt252_ty = registry.build_type(
+        context,
+        helper,
+        registry,
+        metadata,
+        &info.branch_signatures()[0].vars[0].ty,
+    )?;
+    let value: Value = entry.argument(0)?.into();
+
+    let result = entry
+        .append_operation(arith::extui(value, felt252_ty, location))
+        .result(0)?
+        .into();
+
+    entry.append_operation(helper.br(0, &[result], location));
+
+    Ok(())
+}
+
+/// Generate MLIR operations for the `i16_from_felt252` libfunc.
+pub fn build_from_felt252<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &SignatureOnlyConcreteLibfunc,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    let range_check: Value = entry.argument(0)?.into();
+    let value: Value = entry.argument(1)?.into();
+
+    let felt252_ty = registry.build_type(
+        context,
+        helper,
+        registry,
+        metadata,
+        &info.param_signatures()[1].ty,
+    )?;
+    let result_ty = registry.build_type(
+        context,
+        helper,
+        registry,
+        metadata,
+        &info.branch_signatures()[0].vars[1].ty,
+    )?;
+
+    let const_max = entry
+        .append_operation(arith::constant(
+            context,
+            Attribute::parse(context, &format!("{} : {}", i16::MAX, felt252_ty)).unwrap(),
+            location,
+        ))
+        .result(0)?
+        .into();
+
+    let is_ule = entry
+        .append_operation(arith::cmpi(
+            context,
+            CmpiPredicate::Ule,
+            value,
+            const_max,
+            location,
+        ))
+        .result(0)?
+        .into();
+
+    let block_success = helper.append_block(Block::new(&[]));
+    let block_failure = helper.append_block(Block::new(&[]));
+
+    entry.append_operation(cf::cond_br(
+        context,
+        is_ule,
+        block_success,
+        block_failure,
+        &[],
+        &[],
+        location,
+    ));
+
+    let value = block_success
+        .append_operation(arith::trunci(value, result_ty, location))
+        .result(0)?
+        .into();
+    block_success.append_operation(helper.br(0, &[range_check, value], location));
+
+    block_failure.append_operation(helper.br(1, &[range_check], location));
+
+    Ok(())
+}
+
+/// Generate MLIR operations for the `i16_diff` libfunc.
+pub fn build_diff<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    _registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    _info: &SignatureOnlyConcreteLibfunc,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    let range_check: Value = entry.argument(0)?.into();
+    let lhs: Value = entry.argument(1)?.into();
+    let rhs: Value = entry.argument(2)?.into();
+
+    // Check if lhs >= rhs
+    let is_ge = entry
+        .append_operation(arith::cmpi(context, CmpiPredicate::Sge, lhs, rhs, location))
+        .result(0)?
+        .into();
+
+    let result = entry
+        .append_operation(arith::subi(lhs, rhs, location))
+        .result(0)?
+        .into();
+
+    entry.append_operation(helper.cond_br(
+        context,
+        is_ge,
+        [0, 1],
+        [&[range_check, result], &[range_check, result]],
+        location,
+    ));
+
+    Ok(())
+}
+
+#[cfg(test)]
+mod test {
+    use crate::{
+        utils::test::{jit_enum, jit_panic, jit_struct, load_cairo, run_program_assert_output},
+        values::JITValue,
+    };
+    use cairo_lang_sierra::program::Program;
+    use lazy_static::lazy_static;
+    use starknet_types_core::felt::Felt;
+
+    lazy_static! {
+        static ref I16_OVERFLOWING_ADD: (String, Program) = load_cairo! {
+            fn run_test(lhs: i16, rhs: i16) -> i16 {
+                lhs + rhs
+            }
+        };
+        static ref I16_OVERFLOWING_SUB: (String, Program) = load_cairo! {
+            fn run_test(lhs: i16, rhs: i16) -> i16 {
+                lhs - rhs
+            }
+        };
+        static ref I16_EQUAL: (String, Program) = load_cairo! {
+            fn run_test(lhs: i16, rhs: i16) -> bool {
+                lhs == rhs
+            }
+        };
+        static ref I16_IS_ZERO: (String, Program) = load_cairo! {
+            use zeroable::IsZeroResult;
+
+            extern fn i16_is_zero(a: i16) -> IsZeroResult<i16> implicits() nopanic;
+
+            fn run_test(value: i16) -> bool {
+                match i16_is_zero(value) {
+                    IsZeroResult::Zero(_) => true,
+                    IsZeroResult::NonZero(_) => false,
+                }
+            }
+        };
+        static ref I16_WIDEMUL: (String, Program) = load_cairo! {
+            use integer::i16_wide_mul;
+            fn run_test(lhs: i16, rhs: i16) -> i32 {
+                i16_wide_mul(lhs, rhs)
+            }
+        };
+    }
+
+    #[test]
+    fn i16_const_min() {
+        let program = load_cairo!(
+            fn run_test() -> i16 {
+                0_i16
+            }
+        );
+
+        run_program_assert_output(&program, "run_test", &[], &[0i16.into()]);
+    }
+
+    #[test]
+    fn i16_const_max() {
+        let program = load_cairo!(
+            fn run_test() -> i16 {
+                32767_i16
+            }
+        );
+
+        run_program_assert_output(&program, "run_test", &[], &[(i16::MAX).into()]);
+    }
+
+    #[test]
+    fn i16_to_felt252() {
+        let program = load_cairo!(
+            use traits::Into;
+
+            fn run_test() -> felt252 {
+                2_i16.into()
+            }
+        );
+
+        run_program_assert_output(&program, "run_test", &[], &[Felt::from(2).into()]);
+    }
+
+    #[test]
+    fn i16_from_felt252() {
+        let program = load_cairo!(
+            use traits::TryInto;
+
+            fn run_test() -> (Option<i16>, Option<i16>) {
+                (32767.try_into(), 32768.try_into())
+            }
+        );
+
+        run_program_assert_output(
+            &program,
+            "run_test",
+            &[],
+            &[jit_struct!(
+                jit_enum!(0, 32767i16.into()),
+                jit_enum!(1, jit_struct!()),
+            )],
+        );
+    }
+
+    #[test]
+    fn i16_overflowing_add() {
+        #[track_caller]
+        fn run(lhs: i16, rhs: i16) {
+            let program = &I16_OVERFLOWING_ADD;
+            let error = Felt::from_bytes_be_slice(b"i16_add Overflow");
+
+            let add = lhs.checked_add(rhs);
+
+            match add {
+                Some(result) => {
+                    run_program_assert_output(
+                        program,
+                        "run_test",
+                        &[lhs.into(), rhs.into()],
+                        &[jit_enum!(0, jit_struct!(result.into()))],
+                    );
+                }
+                None => {
+                    run_program_assert_output(
+                        program,
+                        "run_test",
+                        &[lhs.into(), rhs.into()],
+                        &[jit_panic!(JITValue::Felt252(error))],
+                    );
+                }
+            }
+        }
+
+        const MAX: i16 = i16::MAX;
+
+        run(0, 0);
+        run(0, 1);
+        run(0, MAX - 1);
+        run(0, MAX);
+
+        run(1, 0);
+        run(1, 1);
+        run(1, MAX - 1);
+        run(1, MAX);
+
+        run(MAX - 1, 0);
+        run(MAX - 1, 1);
+        run(MAX - 1, MAX - 1);
+        run(MAX - 1, MAX);
+
+        run(MAX, 0);
+        run(MAX, 1);
+        run(MAX, MAX - 1);
+        run(MAX, MAX);
+    }
+
+    #[test]
+    fn i16_overflowing_sub() {
+        #[track_caller]
+        fn run(lhs: i16, rhs: i16) {
+            let program = &I16_OVERFLOWING_SUB;
+            let error = Felt::from_bytes_be_slice(b"i16_sub Overflow");
+
+            let add = lhs.checked_sub(rhs);
+
+            match add {
+                Some(result) => {
+                    run_program_assert_output(
+                        program,
+                        "run_test",
+                        &[lhs.into(), rhs.into()],
+                        &[jit_enum!(0, jit_struct!(result.into()))],
+                    );
+                }
+                None => {
+                    run_program_assert_output(
+                        program,
+                        "run_test",
+                        &[lhs.into(), rhs.into()],
+                        &[jit_panic!(JITValue::Felt252(error))],
+                    );
+                }
+            }
+        }
+
+        const MAX: i16 = i16::MAX;
+
+        run(0, 0);
+        run(0, 1);
+        run(0, MAX - 1);
+        run(0, MAX);
+
+        run(1, 0);
+        run(1, 1);
+        run(1, MAX - 1);
+        run(1, MAX);
+
+        run(MAX - 1, 0);
+        run(MAX - 1, 1);
+        run(MAX - 1, MAX - 1);
+        run(MAX - 1, MAX);
+
+        run(MAX, 0);
+        run(MAX, 1);
+        run(MAX, MAX - 1);
+        run(MAX, MAX);
+    }
+
+    #[test]
+    fn i16_equal() {
+        let program = &I16_EQUAL;
+
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[0i16.into(), 0i16.into()],
+            &[jit_enum!(1, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[1i16.into(), 0i16.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[0i16.into(), 1i16.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[1i16.into(), 1i16.into()],
+            &[jit_enum!(1, jit_struct!())],
+        );
+    }
+
+    #[test]
+    fn i16_is_zero() {
+        let program = &I16_IS_ZERO;
+
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[0i16.into()],
+            &[jit_enum!(1, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[1i16.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+    }
+
+    #[test]
+    fn i16_safe_divmod() {
+        let program = &I16_IS_ZERO;
+
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[0i16.into(), 0i16.into()],
+            &[jit_enum!(1, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[0i16.into(), 1i16.into()],
+            &[jit_enum!(1, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[0i16.into(), i16::MAX.into()],
+            &[jit_enum!(1, jit_struct!())],
+        );
+
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[1i16.into(), 0i16.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[1i16.into(), 1i16.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[1i16.into(), i16::MAX.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[i16::MAX.into(), 0i16.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[i16::MAX.into(), 1i16.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[i16::MAX.into(), i16::MAX.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+    }
+
+    #[test]
+    fn i16_widemul() {
+        let program = &I16_WIDEMUL;
+
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[0i16.into(), 0i16.into()],
+            &[0i32.into()],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[0i16.into(), 1i16.into()],
+            &[0i32.into()],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[1i16.into(), 0i16.into()],
+            &[0i32.into()],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[1i16.into(), 1i16.into()],
+            &[1i32.into()],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[i16::MAX.into(), i16::MAX.into()],
+            &[(i16::MAX as i32 * i16::MAX as i32).into()],
+        );
+    }
+}
+
\ No newline at end of file diff --git a/src/cairo_native/libfuncs/sint8.rs.html b/src/cairo_native/libfuncs/sint8.rs.html new file mode 100644 index 000000000..034d19125 --- /dev/null +++ b/src/cairo_native/libfuncs/sint8.rs.html @@ -0,0 +1,1703 @@ +sint8.rs - source
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
+83
+84
+85
+86
+87
+88
+89
+90
+91
+92
+93
+94
+95
+96
+97
+98
+99
+100
+101
+102
+103
+104
+105
+106
+107
+108
+109
+110
+111
+112
+113
+114
+115
+116
+117
+118
+119
+120
+121
+122
+123
+124
+125
+126
+127
+128
+129
+130
+131
+132
+133
+134
+135
+136
+137
+138
+139
+140
+141
+142
+143
+144
+145
+146
+147
+148
+149
+150
+151
+152
+153
+154
+155
+156
+157
+158
+159
+160
+161
+162
+163
+164
+165
+166
+167
+168
+169
+170
+171
+172
+173
+174
+175
+176
+177
+178
+179
+180
+181
+182
+183
+184
+185
+186
+187
+188
+189
+190
+191
+192
+193
+194
+195
+196
+197
+198
+199
+200
+201
+202
+203
+204
+205
+206
+207
+208
+209
+210
+211
+212
+213
+214
+215
+216
+217
+218
+219
+220
+221
+222
+223
+224
+225
+226
+227
+228
+229
+230
+231
+232
+233
+234
+235
+236
+237
+238
+239
+240
+241
+242
+243
+244
+245
+246
+247
+248
+249
+250
+251
+252
+253
+254
+255
+256
+257
+258
+259
+260
+261
+262
+263
+264
+265
+266
+267
+268
+269
+270
+271
+272
+273
+274
+275
+276
+277
+278
+279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+309
+310
+311
+312
+313
+314
+315
+316
+317
+318
+319
+320
+321
+322
+323
+324
+325
+326
+327
+328
+329
+330
+331
+332
+333
+334
+335
+336
+337
+338
+339
+340
+341
+342
+343
+344
+345
+346
+347
+348
+349
+350
+351
+352
+353
+354
+355
+356
+357
+358
+359
+360
+361
+362
+363
+364
+365
+366
+367
+368
+369
+370
+371
+372
+373
+374
+375
+376
+377
+378
+379
+380
+381
+382
+383
+384
+385
+386
+387
+388
+389
+390
+391
+392
+393
+394
+395
+396
+397
+398
+399
+400
+401
+402
+403
+404
+405
+406
+407
+408
+409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
+426
+427
+428
+429
+430
+431
+432
+433
+434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
+455
+456
+457
+458
+459
+460
+461
+462
+463
+464
+465
+466
+467
+468
+469
+470
+471
+472
+473
+474
+475
+476
+477
+478
+479
+480
+481
+482
+483
+484
+485
+486
+487
+488
+489
+490
+491
+492
+493
+494
+495
+496
+497
+498
+499
+500
+501
+502
+503
+504
+505
+506
+507
+508
+509
+510
+511
+512
+513
+514
+515
+516
+517
+518
+519
+520
+521
+522
+523
+524
+525
+526
+527
+528
+529
+530
+531
+532
+533
+534
+535
+536
+537
+538
+539
+540
+541
+542
+543
+544
+545
+546
+547
+548
+549
+550
+551
+552
+553
+554
+555
+556
+557
+558
+559
+560
+561
+562
+563
+564
+565
+566
+567
+568
+569
+570
+571
+572
+573
+574
+575
+576
+577
+578
+579
+580
+581
+582
+583
+584
+585
+586
+587
+588
+589
+590
+591
+592
+593
+594
+595
+596
+597
+598
+599
+600
+601
+602
+603
+604
+605
+606
+607
+608
+609
+610
+611
+612
+613
+614
+615
+616
+617
+618
+619
+620
+621
+622
+623
+624
+625
+626
+627
+628
+629
+630
+631
+632
+633
+634
+635
+636
+637
+638
+639
+640
+641
+642
+643
+644
+645
+646
+647
+648
+649
+650
+651
+652
+653
+654
+655
+656
+657
+658
+659
+660
+661
+662
+663
+664
+665
+666
+667
+668
+669
+670
+671
+672
+673
+674
+675
+676
+677
+678
+679
+680
+681
+682
+683
+684
+685
+686
+687
+688
+689
+690
+691
+692
+693
+694
+695
+696
+697
+698
+699
+700
+701
+702
+703
+704
+705
+706
+707
+708
+709
+710
+711
+712
+713
+714
+715
+716
+717
+718
+719
+720
+721
+722
+723
+724
+725
+726
+727
+728
+729
+730
+731
+732
+733
+734
+735
+736
+737
+738
+739
+740
+741
+742
+743
+744
+745
+746
+747
+748
+749
+750
+751
+752
+753
+754
+755
+756
+757
+758
+759
+760
+761
+762
+763
+764
+765
+766
+767
+768
+769
+770
+771
+772
+773
+774
+775
+776
+777
+778
+779
+780
+781
+782
+783
+784
+785
+786
+787
+788
+789
+790
+791
+792
+793
+794
+795
+796
+797
+798
+799
+800
+801
+802
+803
+804
+805
+806
+807
+808
+809
+810
+811
+812
+813
+814
+815
+816
+817
+818
+819
+820
+821
+822
+823
+824
+825
+826
+827
+828
+829
+830
+831
+832
+833
+834
+835
+836
+837
+838
+839
+840
+841
+842
+843
+844
+845
+846
+847
+848
+849
+850
+851
+
//! # `i8`-related libfuncs
+use super::{LibfuncBuilder, LibfuncHelper};
+
+use crate::{
+    error::{
+        libfuncs::{Error, Result},
+        CoreTypeBuilderError,
+    },
+    metadata::MetadataStorage,
+    types::TypeBuilder,
+    utils::ProgramRegistryExt,
+};
+use cairo_lang_sierra::{
+    extensions::{
+        int::{
+            signed::{Sint8Concrete, Sint8Traits, SintConcrete},
+            IntConstConcreteLibfunc, IntOperationConcreteLibfunc, IntOperator,
+        },
+        lib_func::SignatureOnlyConcreteLibfunc,
+        ConcreteLibfunc, GenericLibfunc, GenericType,
+    },
+    program_registry::ProgramRegistry,
+};
+use melior::{
+    dialect::{
+        arith::{self, CmpiPredicate},
+        cf, llvm,
+    },
+    ir::{
+        attribute::{DenseI64ArrayAttribute, IntegerAttribute},
+        operation::OperationBuilder,
+        r#type::IntegerType,
+        Attribute, Block, Location, Value, ValueLike,
+    },
+    Context,
+};
+
+/// Select and call the correct libfunc builder function from the selector.
+pub fn build<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    selector: &Sint8Concrete,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    match selector {
+        SintConcrete::Const(info) => {
+            build_const(context, registry, entry, location, helper, metadata, info)
+        }
+        SintConcrete::Operation(info) => {
+            build_operation(context, registry, entry, location, helper, info)
+        }
+        SintConcrete::Equal(info) => build_equal(context, registry, entry, location, helper, info),
+        SintConcrete::ToFelt252(info) => {
+            build_to_felt252(context, registry, entry, location, helper, metadata, info)
+        }
+        SintConcrete::FromFelt252(info) => {
+            build_from_felt252(context, registry, entry, location, helper, metadata, info)
+        }
+        SintConcrete::IsZero(info) => {
+            build_is_zero(context, registry, entry, location, helper, info)
+        }
+        SintConcrete::WideMul(info) => {
+            build_widemul(context, registry, entry, location, helper, metadata, info)
+        }
+        SintConcrete::Diff(info) => build_diff(context, registry, entry, location, helper, info),
+    }
+}
+
+/// Generate MLIR operations for the `i8_const` libfunc.
+pub fn build_const<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &IntConstConcreteLibfunc<Sint8Traits>,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    let value = info.c;
+    let value_ty = registry.build_type(
+        context,
+        helper,
+        registry,
+        metadata,
+        &info.signature.branch_signatures[0].vars[0].ty,
+    )?;
+
+    let op0 = entry.append_operation(arith::constant(
+        context,
+        Attribute::parse(context, &format!("{value} : {value_ty}")).unwrap(),
+        location,
+    ));
+    entry.append_operation(helper.br(0, &[op0.result(0)?.into()], location));
+
+    Ok(())
+}
+
+/// Generate MLIR operations for the i8 operation libfunc.
+pub fn build_operation<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    _registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    info: &IntOperationConcreteLibfunc,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    let range_check: Value = entry.argument(0)?.into();
+    let lhs: Value = entry.argument(1)?.into();
+    let rhs: Value = entry.argument(2)?.into();
+
+    let op_name = match info.operator {
+        IntOperator::OverflowingAdd => "llvm.intr.sadd.with.overflow",
+        IntOperator::OverflowingSub => "llvm.intr.ssub.with.overflow",
+    };
+
+    let values_type = lhs.r#type();
+
+    let result_type = llvm::r#type::r#struct(
+        context,
+        &[values_type, IntegerType::new(context, 1).into()],
+        false,
+    );
+
+    let result = entry
+        .append_operation(
+            OperationBuilder::new(op_name, location)
+                .add_operands(&[lhs, rhs])
+                .add_results(&[result_type])
+                .build()?,
+        )
+        .result(0)?
+        .into();
+
+    let op_result = entry
+        .append_operation(llvm::extract_value(
+            context,
+            result,
+            DenseI64ArrayAttribute::new(context, &[0]),
+            values_type,
+            location,
+        ))
+        .result(0)?
+        .into();
+
+    // Create a const operation to get the 0 value to compare against
+    let zero_const = entry
+        .append_operation(arith::constant(
+            context,
+            IntegerAttribute::new(0.into(), values_type).into(),
+            location,
+        ))
+        .result(0)?
+        .into();
+    // Check if the result is positive
+    let is_positive = entry
+        .append_operation(arith::cmpi(
+            context,
+            CmpiPredicate::Sge,
+            op_result,
+            zero_const,
+            location,
+        ))
+        .result(0)?
+        .into();
+
+    // Check overflow flag
+    let op_overflow = entry
+        .append_operation(llvm::extract_value(
+            context,
+            result,
+            DenseI64ArrayAttribute::new(context, &[1]),
+            IntegerType::new(context, 1).into(),
+            location,
+        ))
+        .result(0)?
+        .into();
+
+    let block_not_overflow = helper.append_block(Block::new(&[]));
+    let block_overflow = helper.append_block(Block::new(&[]));
+
+    // The libfunc has three possible outputs: In Range, Overflow & Underflow
+    entry.append_operation(cf::cond_br(
+        context,
+        op_overflow,
+        block_overflow,
+        block_not_overflow,
+        &[],
+        &[],
+        location,
+    ));
+    // Check wether the result is positive to distinguish between undeflowing & overflowing results
+    block_overflow.append_operation(helper.cond_br(
+        context,
+        is_positive,
+        [1, 2],
+        [&[range_check, op_result], &[range_check, op_result]],
+        location,
+    ));
+    // No Oveflow/Underflow -> In range result
+    block_not_overflow.append_operation(helper.br(0, &[range_check, op_result], location));
+    Ok(())
+}
+
+/// Generate MLIR operations for the `i8_eq` libfunc.
+pub fn build_equal<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    _registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    _info: &SignatureOnlyConcreteLibfunc,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    let arg0: Value = entry.argument(0)?.into();
+    let arg1: Value = entry.argument(1)?.into();
+
+    let op0 = entry.append_operation(arith::cmpi(
+        context,
+        CmpiPredicate::Eq,
+        arg0,
+        arg1,
+        location,
+    ));
+
+    entry.append_operation(helper.cond_br(
+        context,
+        op0.result(0)?.into(),
+        [1, 0],
+        [&[]; 2],
+        location,
+    ));
+
+    Ok(())
+}
+
+/// Generate MLIR operations for the `i8_is_zero` libfunc.
+pub fn build_is_zero<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    _registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    _info: &SignatureOnlyConcreteLibfunc,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    let arg0: Value = entry.argument(0)?.into();
+
+    let op = entry.append_operation(arith::constant(
+        context,
+        IntegerAttribute::new(0, arg0.r#type()).into(),
+        location,
+    ));
+    let const_0 = op.result(0)?.into();
+
+    let condition = entry
+        .append_operation(arith::cmpi(
+            context,
+            CmpiPredicate::Eq,
+            arg0,
+            const_0,
+            location,
+        ))
+        .result(0)?
+        .into();
+
+    entry.append_operation(helper.cond_br(context, condition, [0, 1], [&[], &[arg0]], location));
+
+    Ok(())
+}
+
+/// Generate MLIR operations for the `i8_widemul` libfunc.
+pub fn build_widemul<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &SignatureOnlyConcreteLibfunc,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    let target_type = registry.build_type(
+        context,
+        helper,
+        registry,
+        metadata,
+        &info.output_types()[0][0],
+    )?;
+    let lhs: Value = entry.argument(0)?.into();
+    let rhs: Value = entry.argument(1)?.into();
+
+    let lhs = entry
+        .append_operation(arith::extsi(lhs, target_type, location))
+        .result(0)?
+        .into();
+    let rhs = entry
+        .append_operation(arith::extsi(rhs, target_type, location))
+        .result(0)?
+        .into();
+
+    let result = entry
+        .append_operation(arith::muli(lhs, rhs, location))
+        .result(0)?
+        .into();
+
+    entry.append_operation(helper.br(0, &[result], location));
+    Ok(())
+}
+
+/// Generate MLIR operations for the `i8_to_felt252` libfunc.
+pub fn build_to_felt252<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &SignatureOnlyConcreteLibfunc,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    let felt252_ty = registry.build_type(
+        context,
+        helper,
+        registry,
+        metadata,
+        &info.branch_signatures()[0].vars[0].ty,
+    )?;
+    let value: Value = entry.argument(0)?.into();
+
+    let result = entry
+        .append_operation(arith::extui(value, felt252_ty, location))
+        .result(0)?
+        .into();
+
+    entry.append_operation(helper.br(0, &[result], location));
+
+    Ok(())
+}
+
+/// Generate MLIR operations for the `i8_from_felt252` libfunc.
+pub fn build_from_felt252<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    metadata: &mut MetadataStorage,
+    info: &SignatureOnlyConcreteLibfunc,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    let range_check: Value = entry.argument(0)?.into();
+    let value: Value = entry.argument(1)?.into();
+
+    let felt252_ty = registry.build_type(
+        context,
+        helper,
+        registry,
+        metadata,
+        &info.param_signatures()[1].ty,
+    )?;
+    let result_ty = registry.build_type(
+        context,
+        helper,
+        registry,
+        metadata,
+        &info.branch_signatures()[0].vars[1].ty,
+    )?;
+
+    let const_max = entry
+        .append_operation(arith::constant(
+            context,
+            Attribute::parse(context, &format!("{} : {}", i8::MAX, felt252_ty)).unwrap(),
+            location,
+        ))
+        .result(0)?
+        .into();
+
+    let is_ule = entry
+        .append_operation(arith::cmpi(
+            context,
+            CmpiPredicate::Ule,
+            value,
+            const_max,
+            location,
+        ))
+        .result(0)?
+        .into();
+
+    let block_success = helper.append_block(Block::new(&[]));
+    let block_failure = helper.append_block(Block::new(&[]));
+
+    entry.append_operation(cf::cond_br(
+        context,
+        is_ule,
+        block_success,
+        block_failure,
+        &[],
+        &[],
+        location,
+    ));
+
+    let value = block_success
+        .append_operation(arith::trunci(value, result_ty, location))
+        .result(0)?
+        .into();
+    block_success.append_operation(helper.br(0, &[range_check, value], location));
+
+    block_failure.append_operation(helper.br(1, &[range_check], location));
+
+    Ok(())
+}
+
+/// Generate MLIR operations for the `i8_diff` libfunc.
+pub fn build_diff<'ctx, 'this, TType, TLibfunc>(
+    context: &'ctx Context,
+    _registry: &ProgramRegistry<TType, TLibfunc>,
+    entry: &'this Block<'ctx>,
+    location: Location<'ctx>,
+    helper: &LibfuncHelper<'ctx, 'this>,
+    _info: &SignatureOnlyConcreteLibfunc,
+) -> Result<()>
+where
+    TType: GenericType,
+    TLibfunc: GenericLibfunc,
+    <TType as GenericType>::Concrete: TypeBuilder<TType, TLibfunc, Error = CoreTypeBuilderError>,
+    <TLibfunc as GenericLibfunc>::Concrete: LibfuncBuilder<TType, TLibfunc, Error = Error>,
+{
+    let range_check: Value = entry.argument(0)?.into();
+    let lhs: Value = entry.argument(1)?.into();
+    let rhs: Value = entry.argument(2)?.into();
+
+    // Check if lhs >= rhs
+    let is_ge = entry
+        .append_operation(arith::cmpi(context, CmpiPredicate::Sge, lhs, rhs, location))
+        .result(0)?
+        .into();
+
+    let result = entry
+        .append_operation(arith::subi(lhs, rhs, location))
+        .result(0)?
+        .into();
+
+    entry.append_operation(helper.cond_br(
+        context,
+        is_ge,
+        [0, 1],
+        [&[range_check, result], &[range_check, result]],
+        location,
+    ));
+
+    Ok(())
+}
+
+#[cfg(test)]
+mod test {
+    use crate::{
+        utils::test::{jit_enum, jit_panic, jit_struct, load_cairo, run_program_assert_output},
+        values::JITValue,
+    };
+    use cairo_lang_sierra::program::Program;
+    use lazy_static::lazy_static;
+    use starknet_types_core::felt::Felt;
+
+    lazy_static! {
+        static ref I8_OVERFLOWING_ADD: (String, Program) = load_cairo! {
+            fn run_test(lhs: i8, rhs: i8) -> i8 {
+                lhs + rhs
+            }
+        };
+        static ref I8_OVERFLOWING_SUB: (String, Program) = load_cairo! {
+            fn run_test(lhs: i8, rhs: i8) -> i8 {
+                lhs - rhs
+            }
+        };
+        static ref I8_EQUAL: (String, Program) = load_cairo! {
+            fn run_test(lhs: i8, rhs: i8) -> bool {
+                lhs == rhs
+            }
+        };
+        static ref I8_IS_ZERO: (String, Program) = load_cairo! {
+            use zeroable::IsZeroResult;
+
+            extern fn i8_is_zero(a: i8) -> IsZeroResult<i8> implicits() nopanic;
+
+            fn run_test(value: i8) -> bool {
+                match i8_is_zero(value) {
+                    IsZeroResult::Zero(_) => true,
+                    IsZeroResult::NonZero(_) => false,
+                }
+            }
+        };
+        static ref I8_WIDEMUL: (String, Program) = load_cairo! {
+            use integer::i8_wide_mul;
+            fn run_test(lhs: i8, rhs: i8) -> i16 {
+                i8_wide_mul(lhs, rhs)
+            }
+        };
+    }
+
+    #[test]
+    fn i8_const_min() {
+        let program = load_cairo!(
+            fn run_test() -> i8 {
+                0_i8
+            }
+        );
+
+        run_program_assert_output(&program, "run_test", &[], &[0i8.into()]);
+    }
+
+    #[test]
+    fn i8_const_max() {
+        let program = load_cairo!(
+            fn run_test() -> i8 {
+                127_i8
+            }
+        );
+
+        run_program_assert_output(&program, "run_test", &[], &[(i8::MAX).into()]);
+    }
+
+    #[test]
+    fn i8_to_felt252() {
+        let program = load_cairo!(
+            use traits::Into;
+
+            fn run_test() -> felt252 {
+                2_i8.into()
+            }
+        );
+
+        run_program_assert_output(&program, "run_test", &[], &[Felt::from(2).into()]);
+    }
+
+    #[test]
+    fn i8_from_felt252() {
+        let program = load_cairo!(
+            use traits::TryInto;
+
+            fn run_test() -> (Option<i8>, Option<i8>) {
+                (127.try_into(), 128.try_into())
+            }
+        );
+
+        run_program_assert_output(
+            &program,
+            "run_test",
+            &[],
+            &[jit_struct!(
+                jit_enum!(0, 127i8.into()),
+                jit_enum!(1, jit_struct!()),
+            )],
+        );
+    }
+
+    #[test]
+    fn i8_overflowing_add() {
+        #[track_caller]
+        fn run(lhs: i8, rhs: i8) {
+            let program = &I8_OVERFLOWING_ADD;
+            let error = Felt::from_bytes_be_slice(b"i8_add Overflow");
+
+            let add = lhs.checked_add(rhs);
+
+            match add {
+                Some(result) => {
+                    run_program_assert_output(
+                        program,
+                        "run_test",
+                        &[lhs.into(), rhs.into()],
+                        &[jit_enum!(0, jit_struct!(result.into()))],
+                    );
+                }
+                None => {
+                    run_program_assert_output(
+                        program,
+                        "run_test",
+                        &[lhs.into(), rhs.into()],
+                        &[jit_panic!(JITValue::Felt252(error))],
+                    );
+                }
+            }
+        }
+
+        const MAX: i8 = i8::MAX;
+
+        run(0, 0);
+        run(0, 1);
+        run(0, MAX - 1);
+        run(0, MAX);
+
+        run(1, 0);
+        run(1, 1);
+        run(1, MAX - 1);
+        run(1, MAX);
+
+        run(MAX - 1, 0);
+        run(MAX - 1, 1);
+        run(MAX - 1, MAX - 1);
+        run(MAX - 1, MAX);
+
+        run(MAX, 0);
+        run(MAX, 1);
+        run(MAX, MAX - 1);
+        run(MAX, MAX);
+    }
+
+    #[test]
+    fn i8_overflowing_sub() {
+        #[track_caller]
+        fn run(lhs: i8, rhs: i8) {
+            let program = &I8_OVERFLOWING_SUB;
+            let error = Felt::from_bytes_be_slice(b"i8_sub Overflow");
+
+            let add = lhs.checked_sub(rhs);
+
+            match add {
+                Some(result) => {
+                    run_program_assert_output(
+                        program,
+                        "run_test",
+                        &[lhs.into(), rhs.into()],
+                        &[jit_enum!(0, jit_struct!(result.into()))],
+                    );
+                }
+                None => {
+                    run_program_assert_output(
+                        program,
+                        "run_test",
+                        &[lhs.into(), rhs.into()],
+                        &[jit_panic!(JITValue::Felt252(error))],
+                    );
+                }
+            }
+        }
+
+        const MAX: i8 = i8::MAX;
+
+        run(0, 0);
+        run(0, 1);
+        run(0, MAX - 1);
+        run(0, MAX);
+
+        run(1, 0);
+        run(1, 1);
+        run(1, MAX - 1);
+        run(1, MAX);
+
+        run(MAX - 1, 0);
+        run(MAX - 1, 1);
+        run(MAX - 1, MAX - 1);
+        run(MAX - 1, MAX);
+
+        run(MAX, 0);
+        run(MAX, 1);
+        run(MAX, MAX - 1);
+        run(MAX, MAX);
+    }
+
+    #[test]
+    fn i8_equal() {
+        let program = &I8_EQUAL;
+
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[0i8.into(), 0i8.into()],
+            &[jit_enum!(1, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[1i8.into(), 0i8.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[0i8.into(), 1i8.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[1i8.into(), 1i8.into()],
+            &[jit_enum!(1, jit_struct!())],
+        );
+    }
+
+    #[test]
+    fn i8_is_zero() {
+        let program = &I8_IS_ZERO;
+
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[0i8.into()],
+            &[jit_enum!(1, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[1i8.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+    }
+
+    #[test]
+    fn i8_safe_divmod() {
+        let program = &I8_IS_ZERO;
+
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[0i8.into(), 0i8.into()],
+            &[jit_enum!(1, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[0i8.into(), 1i8.into()],
+            &[jit_enum!(1, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[0i8.into(), i8::MAX.into()],
+            &[jit_enum!(1, jit_struct!())],
+        );
+
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[1i8.into(), 0i8.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[1i8.into(), 1i8.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[1i8.into(), i8::MAX.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[i8::MAX.into(), 0i8.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[i8::MAX.into(), 1i8.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[i8::MAX.into(), i8::MAX.into()],
+            &[jit_enum!(0, jit_struct!())],
+        );
+    }
+
+    #[test]
+    fn i8_widemul() {
+        let program = &I8_WIDEMUL;
+
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[0i8.into(), 0i8.into()],
+            &[0i16.into()],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[0i8.into(), 1i8.into()],
+            &[0i16.into()],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[1i8.into(), 0i8.into()],
+            &[0i16.into()],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[1i8.into(), 1i8.into()],
+            &[1i16.into()],
+        );
+        run_program_assert_output(
+            program,
+            "run_test",
+            &[i8::MAX.into(), i8::MAX.into()],
+            &[(i8::MAX as i16 * i8::MAX as i16).into()],
+        );
+    }
+}
+
\ No newline at end of file diff --git a/src/cairo_native/libfuncs/stark_net.rs.html b/src/cairo_native/libfuncs/stark_net.rs.html index 1ff26fb08..28d9970a4 100644 --- a/src/cairo_native/libfuncs/stark_net.rs.html +++ b/src/cairo_native/libfuncs/stark_net.rs.html @@ -4706,28 +4706,6 @@ 4706 4707 4708 -4709 -4710 -4711 -4712 -4713 -4714 -4715 -4716 -4717 -4718 -4719 -4720 -4721 -4722 -4723 -4724 -4725 -4726 -4727 -4728 -4729 -4730
//! # StarkNet libfuncs
 //!
 //! TODO
@@ -9154,10 +9132,10 @@
 #[cfg(test)]
 mod test {
     use crate::utils::test::{jit_enum, jit_struct, load_cairo, run_program_assert_output};
-    use cairo_felt::Felt252;
     use cairo_lang_sierra::program::Program;
     use lazy_static::lazy_static;
-    use num_traits::Num;
+
+    use starknet_types_core::felt::Felt;
 
     lazy_static! {
         static ref STORAGE_BASE_ADDRESS_FROM_FELT252: (String, Program) = load_cairo! {
@@ -9210,7 +9188,7 @@
             &CLASS_HASH_CONST,
             "run_program",
             &[],
-            &[Felt252::new(0).into()],
+            &[Felt::from(0).into()],
         )
     }
 
@@ -9219,36 +9197,34 @@
         run_program_assert_output(
             &STORAGE_BASE_ADDRESS_FROM_FELT252,
             "run_program",
-            &[Felt252::new(0).into()],
-            &[Felt252::new(0).into()],
+            &[Felt::from(0).into()],
+            &[Felt::from(0).into()],
         );
         run_program_assert_output(
             &STORAGE_BASE_ADDRESS_FROM_FELT252,
             "run_program",
-            &[Felt252::new(1).into()],
-            &[Felt252::new(1).into()],
+            &[Felt::from(1).into()],
+            &[Felt::from(1).into()],
         );
         run_program_assert_output(
             &STORAGE_BASE_ADDRESS_FROM_FELT252,
             "run_program",
-            &[Felt252::new(-1).into()],
-            &[Felt252::from_str_radix(
-                "106710729501573572985208420194530329073740042555888586719488",
-                10,
-            )
-            .unwrap()
-            .into()],
+            &[Felt::from(-1).into()],
+            &[
+                Felt::from_dec_str("106710729501573572985208420194530329073740042555888586719488")
+                    .unwrap()
+                    .into(),
+            ],
         );
         run_program_assert_output(
             &STORAGE_BASE_ADDRESS_FROM_FELT252,
             "run_program",
-            &[Felt252::from_str_radix(
+            &[Felt::from_dec_str(
                 "3618502788666131106986593281521497120414687020801267626233049500247285300992",
-                10,
             )
             .unwrap()
             .into()],
-            &[Felt252::new(0).into()],
+            &[Felt::from(0).into()],
         );
     }
 
@@ -9257,30 +9233,28 @@
         run_program_assert_output(
             &STORAGE_ADDRESS_FROM_BASE,
             "run_program",
-            &[Felt252::new(0).into()],
-            &[Felt252::new(0).into()],
+            &[Felt::from(0).into()],
+            &[Felt::from(0).into()],
         );
         run_program_assert_output(
             &STORAGE_ADDRESS_FROM_BASE,
             "run_program",
-            &[Felt252::new(1).into()],
-            &[Felt252::new(1).into()],
+            &[Felt::from(1).into()],
+            &[Felt::from(1).into()],
         );
         run_program_assert_output(
             &STORAGE_ADDRESS_FROM_BASE,
             "run_program",
-            &[Felt252::from_str_radix(
-                "106710729501573572985208420194530329073740042555888586719488",
-                10,
-            )
-            .unwrap()
-            .into()],
-            &[Felt252::from_str_radix(
-                "106710729501573572985208420194530329073740042555888586719488",
-                10,
-            )
-            .unwrap()
-            .into()],
+            &[
+                Felt::from_dec_str("106710729501573572985208420194530329073740042555888586719488")
+                    .unwrap()
+                    .into(),
+            ],
+            &[
+                Felt::from_dec_str("106710729501573572985208420194530329073740042555888586719488")
+                    .unwrap()
+                    .into(),
+            ],
         );
     }
 
@@ -9289,98 +9263,86 @@
         run_program_assert_output(
             &STORAGE_ADDRESS_FROM_BASE_AND_OFFSET,
             "run_program",
-            &[Felt252::new(0).into(), 0u8.into()],
-            &[Felt252::new(0).into()],
+            &[Felt::from(0).into(), 0u8.into()],
+            &[Felt::from(0).into()],
         );
         run_program_assert_output(
             &STORAGE_ADDRESS_FROM_BASE_AND_OFFSET,
             "run_program",
-            &[Felt252::new(1).into(), 0u8.into()],
-            &[Felt252::new(1).into()],
+            &[Felt::from(1).into(), 0u8.into()],
+            &[Felt::from(1).into()],
         );
         run_program_assert_output(
             &STORAGE_ADDRESS_FROM_BASE_AND_OFFSET,
             "run_program",
             &[
-                Felt252::from_str_radix(
-                    "106710729501573572985208420194530329073740042555888586719488",
-                    10,
-                )
-                .unwrap()
-                .into(),
+                Felt::from_dec_str("106710729501573572985208420194530329073740042555888586719488")
+                    .unwrap()
+                    .into(),
                 0u8.into(),
             ],
-            &[Felt252::from_str_radix(
-                "106710729501573572985208420194530329073740042555888586719488",
-                10,
-            )
-            .unwrap()
-            .into()],
+            &[
+                Felt::from_dec_str("106710729501573572985208420194530329073740042555888586719488")
+                    .unwrap()
+                    .into(),
+            ],
         );
 
         run_program_assert_output(
             &STORAGE_ADDRESS_FROM_BASE_AND_OFFSET,
             "run_program",
-            &[Felt252::new(0).into(), 1u8.into()],
-            &[Felt252::new(1).into()],
+            &[Felt::from(0).into(), 1u8.into()],
+            &[Felt::from(1).into()],
         );
         run_program_assert_output(
             &STORAGE_ADDRESS_FROM_BASE_AND_OFFSET,
             "run_program",
-            &[Felt252::new(1).into(), 1u8.into()],
-            &[Felt252::new(2).into()],
+            &[Felt::from(1).into(), 1u8.into()],
+            &[Felt::from(2).into()],
         );
         run_program_assert_output(
             &STORAGE_ADDRESS_FROM_BASE_AND_OFFSET,
             "run_program",
             &[
-                Felt252::from_str_radix(
-                    "106710729501573572985208420194530329073740042555888586719488",
-                    10,
-                )
-                .unwrap()
-                .into(),
+                Felt::from_dec_str("106710729501573572985208420194530329073740042555888586719488")
+                    .unwrap()
+                    .into(),
                 1u8.into(),
             ],
-            &[Felt252::from_str_radix(
-                "106710729501573572985208420194530329073740042555888586719489",
-                10,
-            )
-            .unwrap()
-            .into()],
+            &[
+                Felt::from_dec_str("106710729501573572985208420194530329073740042555888586719489")
+                    .unwrap()
+                    .into(),
+            ],
         );
 
         run_program_assert_output(
             &STORAGE_ADDRESS_FROM_BASE_AND_OFFSET,
             "run_program",
-            &[Felt252::new(0).into(), 255u8.into()],
-            &[Felt252::new(255).into()],
+            &[Felt::from(0).into(), 255u8.into()],
+            &[Felt::from(255).into()],
         );
         run_program_assert_output(
             &STORAGE_ADDRESS_FROM_BASE_AND_OFFSET,
             "run_program",
-            &[Felt252::new(1).into(), 255u8.into()],
-            &[Felt252::new(256).into()],
+            &[Felt::from(1).into(), 255u8.into()],
+            &[Felt::from(256).into()],
         );
 
         run_program_assert_output(
             &STORAGE_ADDRESS_FROM_BASE_AND_OFFSET,
             "run_program",
             &[
-                Felt252::from_str_radix(
-                    "106710729501573572985208420194530329073740042555888586719488",
-                    10,
-                )
-                .unwrap()
-                .into(),
+                Felt::from_dec_str("106710729501573572985208420194530329073740042555888586719488")
+                    .unwrap()
+                    .into(),
                 255u8.into(),
             ],
-            &[Felt252::from_str_radix(
-                "106710729501573572985208420194530329073740042555888586719743",
-                10,
-            )
-            .unwrap()
-            .into()],
+            &[
+                Felt::from_dec_str("106710729501573572985208420194530329073740042555888586719743")
+                    .unwrap()
+                    .into(),
+            ],
         );
     }
 
@@ -9389,30 +9351,28 @@
         run_program_assert_output(
             &STORAGE_ADDRESS_TO_FELT252,
             "run_program",
-            &[Felt252::new(0).into()],
-            &[Felt252::new(0).into()],
+            &[Felt::from(0).into()],
+            &[Felt::from(0).into()],
         );
         run_program_assert_output(
             &STORAGE_ADDRESS_TO_FELT252,
             "run_program",
-            &[Felt252::new(1).into()],
-            &[Felt252::new(1).into()],
+            &[Felt::from(1).into()],
+            &[Felt::from(1).into()],
         );
         run_program_assert_output(
             &STORAGE_ADDRESS_TO_FELT252,
             "run_program",
-            &[Felt252::from_str_radix(
-                "106710729501573572985208420194530329073740042555888586719488",
-                10,
-            )
-            .unwrap()
-            .into()],
-            &[Felt252::from_str_radix(
-                "106710729501573572985208420194530329073740042555888586719488",
-                10,
-            )
-            .unwrap()
-            .into()],
+            &[
+                Felt::from_dec_str("106710729501573572985208420194530329073740042555888586719488")
+                    .unwrap()
+                    .into(),
+            ],
+            &[
+                Felt::from_dec_str("106710729501573572985208420194530329073740042555888586719488")
+                    .unwrap()
+                    .into(),
+            ],
         );
     }
 
@@ -9421,39 +9381,35 @@
         run_program_assert_output(
             &STORAGE_ADDRESS_TRY_FROM_FELT252,
             "run_program",
-            &[Felt252::new(0).into()],
-            &[jit_enum!(0, Felt252::new(0).into())],
+            &[Felt::from(0).into()],
+            &[jit_enum!(0, Felt::from(0).into())],
         );
         run_program_assert_output(
             &STORAGE_ADDRESS_TRY_FROM_FELT252,
             "run_program",
-            &[Felt252::new(1).into()],
-            &[jit_enum!(0, Felt252::new(1).into())],
+            &[Felt::from(1).into()],
+            &[jit_enum!(0, Felt::from(1).into())],
         );
         run_program_assert_output(
             &STORAGE_ADDRESS_TRY_FROM_FELT252,
             "run_program",
-            &[Felt252::from_str_radix(
-                "106710729501573572985208420194530329073740042555888586719488",
-                10,
-            )
-            .unwrap()
-            .into()],
+            &[
+                Felt::from_dec_str("106710729501573572985208420194530329073740042555888586719488")
+                    .unwrap()
+                    .into(),
+            ],
             &[jit_enum!(
                 0,
-                Felt252::from_str_radix(
-                    "106710729501573572985208420194530329073740042555888586719488",
-                    10,
-                )
-                .unwrap()
-                .into()
+                Felt::from_dec_str("106710729501573572985208420194530329073740042555888586719488")
+                    .unwrap()
+                    .into()
             )],
         );
 
         run_program_assert_output(
             &STORAGE_ADDRESS_TRY_FROM_FELT252,
             "run_program",
-            &[Felt252::new(-1).into()],
+            &[Felt::from(-1).into()],
             &[jit_enum!(1, jit_struct!())],
         );
     }
diff --git a/src/cairo_native/libfuncs/uint128.rs.html b/src/cairo_native/libfuncs/uint128.rs.html
index d0f61007a..7366c523a 100644
--- a/src/cairo_native/libfuncs/uint128.rs.html
+++ b/src/cairo_native/libfuncs/uint128.rs.html
@@ -2089,11 +2089,11 @@
         utils::test::{jit_enum, jit_panic, jit_struct, load_cairo, run_program_assert_output},
         values::JITValue,
     };
-    use cairo_felt::Felt252;
     use cairo_lang_sierra::program::Program;
     use lazy_static::lazy_static;
     use num_bigint::ToBigUint;
-    use num_traits::Num;
+
+    use starknet_types_core::felt::Felt;
 
     lazy_static! {
         static ref U128_BYTE_REVERSE: (String, Program) = load_cairo! {
@@ -2222,7 +2222,7 @@
     fn u128_safe_divmod() {
         let program = &U128_SAFE_DIVMOD;
         let max_value = 0xFFFFFFFF_FFFFFFFF_FFFFFFFF_FFFFFFFFu128;
-        let error = JITValue::Felt252(Felt252::from_bytes_be(b"u128 is 0"));
+        let error = JITValue::Felt252(Felt::from_bytes_be_slice(b"u128 is 0"));
 
         run_program_assert_output(
             program,
@@ -2335,21 +2335,21 @@
         run_program_assert_output(
             &U128_FROM_FELT252,
             "run_test",
-            &[Felt252::new(0).into()],
+            &[Felt::from(0).into()],
             &[jit_enum!(0, 0u128.into())],
         );
 
         run_program_assert_output(
             &U128_FROM_FELT252,
             "run_test",
-            &[Felt252::new(1).into()],
+            &[Felt::from(1).into()],
             &[jit_enum!(0, 1u128.into())],
         );
 
         run_program_assert_output(
             &U128_FROM_FELT252,
             "run_test",
-            &[Felt252::new(u128::MAX).into()],
+            &[Felt::from(u128::MAX).into()],
             &[jit_enum!(0, u128::MAX.into())],
         );
 
@@ -2357,7 +2357,7 @@
             &U128_FROM_FELT252,
             "run_test",
             &[
-                Felt252::from_str_radix("340282366920938463463374607431768211456", 10)
+                Felt::from_dec_str("340282366920938463463374607431768211456")
                     .unwrap()
                     .into(),
             ],
@@ -2386,7 +2386,7 @@
         #[track_caller]
         fn run(lhs: u128, rhs: u128) {
             let program = &U128_ADD;
-            let error = Felt252::from_bytes_be(b"u128_add Overflow");
+            let error = Felt::from_bytes_be_slice(b"u128_add Overflow");
 
             let add = lhs.checked_add(rhs);
 
@@ -2438,7 +2438,7 @@
         #[track_caller]
         fn run(lhs: u128, rhs: u128) {
             let program = &U128_SUB;
-            let error = Felt252::from_bytes_be(b"u128_sub Overflow");
+            let error = Felt::from_bytes_be_slice(b"u128_sub Overflow");
 
             let res = lhs.checked_sub(rhs);
 
@@ -2493,19 +2493,19 @@
             program,
             "run_test",
             &[0u128.into()],
-            &[Felt252::new(0).into()],
+            &[Felt::from(0).into()],
         );
         run_program_assert_output(
             program,
             "run_test",
             &[1u128.into()],
-            &[Felt252::new(1).into()],
+            &[Felt::from(1).into()],
         );
         run_program_assert_output(
             program,
             "run_test",
             &[u128::MAX.into()],
-            &[Felt252::new(u128::MAX).into()],
+            &[Felt::from(u128::MAX).into()],
         );
     }
 
diff --git a/src/cairo_native/libfuncs/uint16.rs.html b/src/cairo_native/libfuncs/uint16.rs.html
index 9a702e197..83cdd2502 100644
--- a/src/cairo_native/libfuncs/uint16.rs.html
+++ b/src/cairo_native/libfuncs/uint16.rs.html
@@ -1799,10 +1799,10 @@
         utils::test::{jit_enum, jit_panic, jit_struct, load_cairo},
         values::JITValue,
     };
-    use cairo_felt::Felt252;
     use cairo_lang_sierra::program::Program;
     use lazy_static::lazy_static;
     use num_bigint::ToBigUint;
+    use starknet_types_core::felt::Felt;
 
     lazy_static! {
         static ref U16_OVERFLOWING_ADD: (String, Program) = load_cairo! {
@@ -1889,7 +1889,7 @@
             }
         );
 
-        run_program_assert_output(&program, "run_test", &[], &[Felt252::new(2).into()]);
+        run_program_assert_output(&program, "run_test", &[], &[Felt::from(2).into()]);
     }
 
     #[test]
@@ -1918,7 +1918,7 @@
         #[track_caller]
         fn run(lhs: u16, rhs: u16) {
             let program = &U16_OVERFLOWING_ADD;
-            let error = Felt252::from_bytes_be(b"u16_add Overflow");
+            let error = Felt::from_bytes_be_slice(b"u16_add Overflow");
 
             let add = lhs.checked_add(rhs);
 
@@ -1970,7 +1970,7 @@
         #[track_caller]
         fn run(lhs: u16, rhs: u16) {
             let program = &U16_OVERFLOWING_SUB;
-            let error = Felt252::from_bytes_be(b"u16_sub Overflow");
+            let error = Felt::from_bytes_be_slice(b"u16_sub Overflow");
 
             let add = lhs.checked_sub(rhs);
 
diff --git a/src/cairo_native/libfuncs/uint256.rs.html b/src/cairo_native/libfuncs/uint256.rs.html
index 5334bf3ec..b1c292e0f 100644
--- a/src/cairo_native/libfuncs/uint256.rs.html
+++ b/src/cairo_native/libfuncs/uint256.rs.html
@@ -1567,11 +1567,11 @@
         utils::test::{jit_enum, jit_panic, jit_struct, load_cairo, run_program_assert_output},
         values::JITValue,
     };
-    use cairo_felt::Felt252;
     use cairo_lang_sierra::program::Program;
     use lazy_static::lazy_static;
     use num_bigint::{BigUint, ToBigUint};
     use num_traits::One;
+    use starknet_types_core::felt::Felt;
     use std::ops::Shl;
 
     lazy_static! {
@@ -1655,10 +1655,10 @@
             )
         }
 
-        let u256_is_zero = Felt252::from_bytes_be(b"u256 is 0");
+        let u256_is_zero = Felt::from_bytes_be_slice(b"u256 is 0");
         let max_value = 0xFFFFFFFF_FFFFFFFF_FFFFFFFF_FFFFFFFFu128;
 
-        run((0, 0), (0, 0), jit_panic!(u256_is_zero.clone()));
+        run((0, 0), (0, 0), jit_panic!(u256_is_zero));
         run(
             (0, 0),
             (0, 1),
@@ -1682,7 +1682,7 @@
             ),
         );
 
-        run((0, 1), (0, 0), jit_panic!(u256_is_zero.clone()));
+        run((0, 1), (0, 0), jit_panic!(u256_is_zero));
         run(
             (0, 1),
             (0, 1),
diff --git a/src/cairo_native/libfuncs/uint32.rs.html b/src/cairo_native/libfuncs/uint32.rs.html
index 3a96c1df5..80a50abf4 100644
--- a/src/cairo_native/libfuncs/uint32.rs.html
+++ b/src/cairo_native/libfuncs/uint32.rs.html
@@ -1799,10 +1799,10 @@
         utils::test::{jit_enum, jit_panic, jit_struct, load_cairo},
         values::JITValue,
     };
-    use cairo_felt::Felt252;
     use cairo_lang_sierra::program::Program;
     use lazy_static::lazy_static;
     use num_bigint::ToBigUint;
+    use starknet_types_core::felt::Felt;
 
     lazy_static! {
         static ref U32_OVERFLOWING_ADD: (String, Program) = load_cairo! {
@@ -1889,7 +1889,7 @@
             }
         );
 
-        run_program_assert_output(&program, "run_test", &[], &[Felt252::new(2).into()]);
+        run_program_assert_output(&program, "run_test", &[], &[Felt::from(2).into()]);
     }
 
     #[test]
@@ -1918,7 +1918,7 @@
         #[track_caller]
         fn run(lhs: u32, rhs: u32) {
             let program = &U32_OVERFLOWING_ADD;
-            let error = Felt252::from_bytes_be(b"u32_add Overflow");
+            let error = Felt::from_bytes_be_slice(b"u32_add Overflow");
 
             let add = lhs.checked_add(rhs);
 
@@ -1970,7 +1970,7 @@
         #[track_caller]
         fn run(lhs: u32, rhs: u32) {
             let program = &U32_OVERFLOWING_SUB;
-            let error = Felt252::from_bytes_be(b"u32_sub Overflow");
+            let error = Felt::from_bytes_be_slice(b"u32_sub Overflow");
 
             let add = lhs.checked_sub(rhs);
 
diff --git a/src/cairo_native/libfuncs/uint64.rs.html b/src/cairo_native/libfuncs/uint64.rs.html
index bb6286ee6..0a886af48 100644
--- a/src/cairo_native/libfuncs/uint64.rs.html
+++ b/src/cairo_native/libfuncs/uint64.rs.html
@@ -1809,10 +1809,10 @@
         utils::test::{jit_enum, jit_panic, jit_struct, load_cairo},
         values::JITValue,
     };
-    use cairo_felt::Felt252;
     use cairo_lang_sierra::program::Program;
     use lazy_static::lazy_static;
     use num_bigint::ToBigUint;
+    use starknet_types_core::felt::Felt;
 
     lazy_static! {
         static ref U64_OVERFLOWING_ADD: (String, Program) = load_cairo! {
@@ -1899,7 +1899,7 @@
             }
         );
 
-        run_program_assert_output(&program, "run_test", &[], &[Felt252::new(2).into()]);
+        run_program_assert_output(&program, "run_test", &[], &[Felt::from(2).into()]);
     }
 
     #[test]
@@ -1931,7 +1931,7 @@
         #[track_caller]
         fn run(lhs: u64, rhs: u64) {
             let program = &U64_OVERFLOWING_ADD;
-            let error = Felt252::from_bytes_be(b"u64_add Overflow");
+            let error = Felt::from_bytes_be_slice(b"u64_add Overflow");
 
             let add = lhs.checked_add(rhs);
 
@@ -1983,7 +1983,7 @@
         #[track_caller]
         fn run(lhs: u64, rhs: u64) {
             let program = &U64_OVERFLOWING_SUB;
-            let error = Felt252::from_bytes_be(b"u64_sub Overflow");
+            let error = Felt::from_bytes_be_slice(b"u64_sub Overflow");
 
             let add = lhs.checked_sub(rhs);
 
diff --git a/src/cairo_native/libfuncs/uint8.rs.html b/src/cairo_native/libfuncs/uint8.rs.html
index 145117ffb..cf28d870d 100644
--- a/src/cairo_native/libfuncs/uint8.rs.html
+++ b/src/cairo_native/libfuncs/uint8.rs.html
@@ -1777,10 +1777,10 @@
         utils::test::{jit_enum, jit_panic, jit_struct, load_cairo, run_program_assert_output},
         values::JITValue,
     };
-    use cairo_felt::Felt252;
     use cairo_lang_sierra::program::Program;
     use lazy_static::lazy_static;
     use num_bigint::ToBigUint;
+    use starknet_types_core::felt::Felt;
 
     lazy_static! {
         static ref U8_OVERFLOWING_ADD: (String, Program) = load_cairo! {
@@ -1865,7 +1865,7 @@
             }
         );
 
-        run_program_assert_output(&program, "run_test", &[], &[Felt252::new(2).into()]);
+        run_program_assert_output(&program, "run_test", &[], &[Felt::from(2).into()]);
     }
 
     #[test]
@@ -1894,7 +1894,7 @@
         #[track_caller]
         fn run(lhs: u8, rhs: u8) {
             let program = &U8_OVERFLOWING_ADD;
-            let error = Felt252::from_bytes_be(b"u8_add Overflow");
+            let error = Felt::from_bytes_be_slice(b"u8_add Overflow");
 
             let add = lhs.checked_add(rhs);
 
@@ -1946,7 +1946,7 @@
         #[track_caller]
         fn run(lhs: u8, rhs: u8) {
             let program = &U8_OVERFLOWING_SUB;
-            let error = Felt252::from_bytes_be(b"u8_sub Overflow");
+            let error = Felt::from_bytes_be_slice(b"u8_sub Overflow");
 
             let add = lhs.checked_sub(rhs);
 
diff --git a/src/cairo_native/metadata/prime_modulo.rs.html b/src/cairo_native/metadata/prime_modulo.rs.html
index 6a9d0f1ed..3c6641dac 100644
--- a/src/cairo_native/metadata/prime_modulo.rs.html
+++ b/src/cairo_native/metadata/prime_modulo.rs.html
@@ -32,7 +32,7 @@
 //!
 //! Contains the prime modulo number of a finite field.
 //!
-//! Currently used only for `felt252`.
+//! Currently used only for `Felt`.
 
 use num_bigint::BigUint;
 use std::marker::PhantomData;
diff --git a/src/cairo_native/metadata/runtime_bindings.rs.html b/src/cairo_native/metadata/runtime_bindings.rs.html
index a93f8aa8b..2c1bd6fa8 100644
--- a/src/cairo_native/metadata/runtime_bindings.rs.html
+++ b/src/cairo_native/metadata/runtime_bindings.rs.html
@@ -1235,7 +1235,7 @@
         module: &Module,
         block: &'a Block<'c>,
         dict_ptr: Value<'c, 'a>, // ptr to the dict
-        key_ptr: Value<'c, 'a>,  // key must be a ptr to felt252
+        key_ptr: Value<'c, 'a>,  // key must be a ptr to Felt
         location: Location<'c>,
     ) -> Result<OperationRef<'c, 'a>>
     where
@@ -1286,7 +1286,7 @@
         module: &Module,
         block: &'a Block<'c>,
         dict_ptr: Value<'c, 'a>,  // ptr to the dict
-        key_ptr: Value<'c, 'a>,   // key must be a ptr to felt252
+        key_ptr: Value<'c, 'a>,   // key must be a ptr to Felt
         value_ptr: Value<'c, 'a>, // value must be a opaque non null ptr
         location: Location<'c>,
     ) -> Result<OperationRef<'c, 'a>>
diff --git a/src/cairo_native/starknet.rs.html b/src/cairo_native/starknet.rs.html
index a878c28f8..e69f1e46c 100644
--- a/src/cairo_native/starknet.rs.html
+++ b/src/cairo_native/starknet.rs.html
@@ -863,17 +863,16 @@
 863
 864
 865
-866
 
//! Starknet related code for `cairo_native`
 
 #![allow(clippy::type_complexity)]
 #![allow(dead_code)]
 
-use cairo_felt::Felt252;
+use starknet_types_core::felt::Felt;
 
-pub type SyscallResult<T> = std::result::Result<T, Vec<Felt252>>;
+pub type SyscallResult<T> = std::result::Result<T, Vec<Felt>>;
 
-/// Binary representation of a `felt252` (in MLIR).
+/// Binary representation of a `Felt` (in MLIR).
 #[derive(Debug, Clone)]
 #[cfg_attr(target_arch = "x86_64", repr(C, align(8)))]
 #[cfg_attr(not(target_arch = "x86_64"), repr(C, align(16)))]
@@ -888,25 +887,25 @@
 pub struct ExecutionInfo {
     pub block_info: BlockInfo,
     pub tx_info: TxInfo,
-    pub caller_address: Felt252,
-    pub contract_address: Felt252,
-    pub entry_point_selector: Felt252,
+    pub caller_address: Felt,
+    pub contract_address: Felt,
+    pub entry_point_selector: Felt,
 }
 
 pub struct BlockInfo {
     pub block_number: u64,
     pub block_timestamp: u64,
-    pub sequencer_address: Felt252,
+    pub sequencer_address: Felt,
 }
 
 pub struct TxInfo {
-    pub version: Felt252,
-    pub account_contract_address: Felt252,
+    pub version: Felt,
+    pub account_contract_address: Felt,
     pub max_fee: u128,
-    pub signature: Vec<Felt252>,
-    pub transaction_hash: Felt252,
-    pub chain_id: Felt252,
-    pub nonce: Felt252,
+    pub signature: Vec<Felt>,
+    pub transaction_hash: Felt,
+    pub chain_id: Felt,
+    pub nonce: Felt,
 }
 
 pub struct Secp256k1Point {
@@ -922,62 +921,61 @@
         &mut self,
         block_number: u64,
         remaining_gas: &mut u128,
-    ) -> SyscallResult<Felt252>;
+    ) -> SyscallResult<Felt>;
     fn get_execution_info(&mut self, remaining_gas: &mut u128) -> SyscallResult<ExecutionInfo>;
 
     fn deploy(
         &mut self,
-        class_hash: Felt252,
-        contract_address_salt: Felt252,
-        calldata: &[Felt252],
+        class_hash: Felt,
+        contract_address_salt: Felt,
+        calldata: &[Felt],
         deploy_from_zero: bool,
         remaining_gas: &mut u128,
-    ) -> SyscallResult<(Felt252, Vec<Felt252>)>;
-    fn replace_class(&mut self, class_hash: Felt252, remaining_gas: &mut u128)
-        -> SyscallResult<()>;
+    ) -> SyscallResult<(Felt, Vec<Felt>)>;
+    fn replace_class(&mut self, class_hash: Felt, remaining_gas: &mut u128) -> SyscallResult<()>;
 
     fn library_call(
         &mut self,
-        class_hash: Felt252,
-        function_selector: Felt252,
-        calldata: &[Felt252],
+        class_hash: Felt,
+        function_selector: Felt,
+        calldata: &[Felt],
         remaining_gas: &mut u128,
-    ) -> SyscallResult<Vec<Felt252>>;
+    ) -> SyscallResult<Vec<Felt>>;
 
     fn call_contract(
         &mut self,
-        address: Felt252,
-        entry_point_selector: Felt252,
-        calldata: &[Felt252],
+        address: Felt,
+        entry_point_selector: Felt,
+        calldata: &[Felt],
         remaining_gas: &mut u128,
-    ) -> SyscallResult<Vec<Felt252>>;
+    ) -> SyscallResult<Vec<Felt>>;
 
     fn storage_read(
         &mut self,
         address_domain: u32,
-        address: Felt252,
+        address: Felt,
         remaining_gas: &mut u128,
-    ) -> SyscallResult<Felt252>;
+    ) -> SyscallResult<Felt>;
 
     fn storage_write(
         &mut self,
         address_domain: u32,
-        address: Felt252,
-        value: Felt252,
+        address: Felt,
+        value: Felt,
         remaining_gas: &mut u128,
     ) -> SyscallResult<()>;
 
     fn emit_event(
         &mut self,
-        keys: &[Felt252],
-        data: &[Felt252],
+        keys: &[Felt],
+        data: &[Felt],
         remaining_gas: &mut u128,
     ) -> SyscallResult<()>;
 
     fn send_message_to_l1(
         &mut self,
-        to_address: Felt252,
-        payload: &[Felt252],
+        to_address: Felt,
+        payload: &[Felt],
         remaining_gas: &mut u128,
     ) -> SyscallResult<()>;
 
@@ -1057,29 +1055,29 @@
     // TODO: Make them optional. Crash if called but not implemented.
     fn pop_log(&mut self);
 
-    fn set_account_contract_address(&mut self, contract_address: Felt252);
+    fn set_account_contract_address(&mut self, contract_address: Felt);
 
     fn set_block_number(&mut self, block_number: u64);
 
     fn set_block_timestamp(&mut self, block_timestamp: u64);
 
-    fn set_caller_address(&mut self, address: Felt252);
+    fn set_caller_address(&mut self, address: Felt);
 
-    fn set_chain_id(&mut self, chain_id: Felt252);
+    fn set_chain_id(&mut self, chain_id: Felt);
 
-    fn set_contract_address(&mut self, address: Felt252);
+    fn set_contract_address(&mut self, address: Felt);
 
     fn set_max_fee(&mut self, max_fee: u128);
 
-    fn set_nonce(&mut self, nonce: Felt252);
+    fn set_nonce(&mut self, nonce: Felt);
 
-    fn set_sequencer_address(&mut self, address: Felt252);
+    fn set_sequencer_address(&mut self, address: Felt);
 
-    fn set_signature(&mut self, signature: &[Felt252]);
+    fn set_signature(&mut self, signature: &[Felt]);
 
-    fn set_transaction_hash(&mut self, transaction_hash: Felt252);
+    fn set_transaction_hash(&mut self, transaction_hash: Felt);
 
-    fn set_version(&mut self, version: Felt252);
+    fn set_version(&mut self, version: Felt);
 }
 
 // TODO: Move to the correct place or remove if unused.
@@ -1282,12 +1280,12 @@
             (NonNull::new(ptr).unwrap(), len, len)
         }
 
-        fn wrap_error<E>(e: &[Felt252]) -> SyscallResultAbi<E> {
+        fn wrap_error<E>(e: &[Felt]) -> SyscallResultAbi<E> {
             SyscallResultAbi {
                 err: ManuallyDrop::new(SyscallResultAbiErr {
                     tag: 1u8,
                     payload: unsafe {
-                        let data: Vec<_> = e.iter().map(|x| Felt252Abi(x.to_le_bytes())).collect();
+                        let data: Vec<_> = e.iter().map(|x| Felt252Abi(x.to_bytes_le())).collect();
                         Self::alloc_mlir_array(&data)
                     },
                 }),
@@ -1306,7 +1304,7 @@
                 Ok(x) => SyscallResultAbi {
                     ok: ManuallyDrop::new(SyscallResultAbiOk {
                         tag: 0u8,
-                        payload: ManuallyDrop::new(Felt252Abi(x.to_le_bytes())),
+                        payload: ManuallyDrop::new(Felt252Abi(x.to_bytes_le())),
                     }),
                 },
                 Err(e) => Self::wrap_error(&e),
@@ -1333,29 +1331,29 @@
                             block_info_ptr.as_mut().block_number = x.block_info.block_number;
                             block_info_ptr.as_mut().block_timestamp = x.block_info.block_timestamp;
                             block_info_ptr.as_mut().sequencer_address =
-                                Felt252Abi(x.block_info.sequencer_address.to_le_bytes());
+                                Felt252Abi(x.block_info.sequencer_address.to_bytes_le());
 
                             let mut tx_info_ptr = NonNull::new(
                                 libc::malloc(size_of::<TxInfoAbi>()) as *mut TxInfoAbi,
                             )
                             .unwrap();
                             tx_info_ptr.as_mut().version =
-                                Felt252Abi(x.tx_info.version.to_le_bytes());
+                                Felt252Abi(x.tx_info.version.to_bytes_le());
                             tx_info_ptr.as_mut().account_contract_address =
-                                Felt252Abi(x.tx_info.account_contract_address.to_le_bytes());
+                                Felt252Abi(x.tx_info.account_contract_address.to_bytes_le());
                             tx_info_ptr.as_mut().max_fee = x.tx_info.max_fee;
                             tx_info_ptr.as_mut().signature = Self::alloc_mlir_array(
                                 &x.tx_info
                                     .signature
                                     .into_iter()
-                                    .map(|x| Felt252Abi(x.to_le_bytes()))
+                                    .map(|x| Felt252Abi(x.to_bytes_le()))
                                     .collect::<Vec<_>>(),
                             );
                             tx_info_ptr.as_mut().transaction_hash =
-                                Felt252Abi(x.tx_info.transaction_hash.to_le_bytes());
+                                Felt252Abi(x.tx_info.transaction_hash.to_bytes_le());
                             tx_info_ptr.as_mut().chain_id =
-                                Felt252Abi(x.tx_info.chain_id.to_le_bytes());
-                            tx_info_ptr.as_mut().nonce = Felt252Abi(x.tx_info.nonce.to_le_bytes());
+                                Felt252Abi(x.tx_info.chain_id.to_bytes_le());
+                            tx_info_ptr.as_mut().nonce = Felt252Abi(x.tx_info.nonce.to_bytes_le());
 
                             let mut execution_info_ptr =
                                 NonNull::new(libc::malloc(size_of::<ExecutionInfoAbi>())
@@ -1364,11 +1362,11 @@
                             execution_info_ptr.as_mut().block_info = block_info_ptr;
                             execution_info_ptr.as_mut().tx_info = tx_info_ptr;
                             execution_info_ptr.as_mut().caller_address =
-                                Felt252Abi(x.caller_address.to_le_bytes());
+                                Felt252Abi(x.caller_address.to_bytes_le());
                             execution_info_ptr.as_mut().contract_address =
-                                Felt252Abi(x.contract_address.to_le_bytes());
+                                Felt252Abi(x.contract_address.to_bytes_le());
                             execution_info_ptr.as_mut().entry_point_selector =
-                                Felt252Abi(x.entry_point_selector.to_le_bytes());
+                                Felt252Abi(x.entry_point_selector.to_bytes_le());
 
                             ManuallyDrop::new(execution_info_ptr)
                         },
@@ -1389,12 +1387,12 @@
             calldata: *const (*const Felt252Abi, u32, u32),
             deploy_from_zero: bool,
         ) {
-            let class_hash = Felt252::from_bytes_be(&{
+            let class_hash = Felt::from_bytes_be(&{
                 let mut data = class_hash.0;
                 data.reverse();
                 data
             });
-            let contract_address_salt = Felt252::from_bytes_be(&{
+            let contract_address_salt = Felt::from_bytes_be(&{
                 let mut data = contract_address_salt.0;
                 data.reverse();
                 data
@@ -1406,7 +1404,7 @@
             }
             .iter()
             .map(|x| {
-                Felt252::from_bytes_be(&{
+                Felt::from_bytes_be(&{
                     let mut data = x.0;
                     data.reverse();
                     data
@@ -1424,12 +1422,12 @@
 
             *result_ptr = match result {
                 Ok(x) => {
-                    let felts: Vec<_> = x.1.iter().map(|x| Felt252Abi(x.to_le_bytes())).collect();
+                    let felts: Vec<_> = x.1.iter().map(|x| Felt252Abi(x.to_bytes_le())).collect();
                     let felts_ptr = unsafe { Self::alloc_mlir_array(&felts) };
                     SyscallResultAbi {
                         ok: ManuallyDrop::new(SyscallResultAbiOk {
                             tag: 0u8,
-                            payload: ManuallyDrop::new((Felt252Abi(x.0.to_le_bytes()), felts_ptr)),
+                            payload: ManuallyDrop::new((Felt252Abi(x.0.to_bytes_le()), felts_ptr)),
                         }),
                     }
                 }
@@ -1443,7 +1441,7 @@
             gas: &mut u128,
             class_hash: &Felt252Abi,
         ) {
-            let class_hash = Felt252::from_bytes_be(&{
+            let class_hash = Felt::from_bytes_be(&{
                 let mut data = class_hash.0;
                 data.reverse();
                 data
@@ -1469,12 +1467,12 @@
             function_selector: &Felt252Abi,
             calldata: *const (*const Felt252Abi, u32, u32),
         ) {
-            let class_hash = Felt252::from_bytes_be(&{
+            let class_hash = Felt::from_bytes_be(&{
                 let mut data = class_hash.0;
                 data.reverse();
                 data
             });
-            let function_selector = Felt252::from_bytes_be(&{
+            let function_selector = Felt::from_bytes_be(&{
                 let mut data = function_selector.0;
                 data.reverse();
                 data
@@ -1486,7 +1484,7 @@
             }
             .iter()
             .map(|x| {
-                Felt252::from_bytes_be(&{
+                Felt::from_bytes_be(&{
                     let mut data = x.0;
                     data.reverse();
                     data
@@ -1498,7 +1496,7 @@
 
             *result_ptr = match result {
                 Ok(x) => {
-                    let felts: Vec<_> = x.iter().map(|x| Felt252Abi(x.to_le_bytes())).collect();
+                    let felts: Vec<_> = x.iter().map(|x| Felt252Abi(x.to_bytes_le())).collect();
                     let felts_ptr = unsafe { Self::alloc_mlir_array(&felts) };
                     SyscallResultAbi {
                         ok: ManuallyDrop::new(SyscallResultAbiOk {
@@ -1519,12 +1517,12 @@
             entry_point_selector: &Felt252Abi,
             calldata: *const (*const Felt252Abi, u32, u32),
         ) {
-            let address = Felt252::from_bytes_be(&{
+            let address = Felt::from_bytes_be(&{
                 let mut data = address.0;
                 data.reverse();
                 data
             });
-            let entry_point_selector = Felt252::from_bytes_be(&{
+            let entry_point_selector = Felt::from_bytes_be(&{
                 let mut data = entry_point_selector.0;
                 data.reverse();
                 data
@@ -1536,7 +1534,7 @@
             }
             .iter()
             .map(|x| {
-                Felt252::from_bytes_be(&{
+                Felt::from_bytes_be(&{
                     let mut data = x.0;
                     data.reverse();
                     data
@@ -1548,7 +1546,7 @@
 
             *result_ptr = match result {
                 Ok(x) => {
-                    let felts: Vec<_> = x.iter().map(|x| Felt252Abi(x.to_le_bytes())).collect();
+                    let felts: Vec<_> = x.iter().map(|x| Felt252Abi(x.to_bytes_le())).collect();
                     let felts_ptr = unsafe { Self::alloc_mlir_array(&felts) };
                     SyscallResultAbi {
                         ok: ManuallyDrop::new(SyscallResultAbiOk {
@@ -1568,7 +1566,7 @@
             address_domain: u32,
             address: &Felt252Abi,
         ) {
-            let address = Felt252::from_bytes_be(&{
+            let address = Felt::from_bytes_be(&{
                 let mut data = address.0;
                 data.reverse();
                 data
@@ -1579,7 +1577,7 @@
                 Ok(res) => SyscallResultAbi {
                     ok: ManuallyDrop::new(SyscallResultAbiOk {
                         tag: 0u8,
-                        payload: ManuallyDrop::new(Felt252Abi(res.to_le_bytes())),
+                        payload: ManuallyDrop::new(Felt252Abi(res.to_bytes_le())),
                     }),
                 },
                 Err(e) => Self::wrap_error(&e),
@@ -1594,12 +1592,12 @@
             address: &Felt252Abi,
             value: &Felt252Abi,
         ) {
-            let address = Felt252::from_bytes_be(&{
+            let address = Felt::from_bytes_be(&{
                 let mut data = address.0;
                 data.reverse();
                 data
             });
-            let value = Felt252::from_bytes_be(&{
+            let value = Felt::from_bytes_be(&{
                 let mut data = value.0;
                 data.reverse();
                 data
@@ -1630,7 +1628,7 @@
             }
             .iter()
             .map(|x| {
-                Felt252::from_bytes_be(&{
+                Felt::from_bytes_be(&{
                     let mut data = x.0;
                     data.reverse();
                     data
@@ -1644,7 +1642,7 @@
             }
             .iter()
             .map(|x| {
-                Felt252::from_bytes_be(&{
+                Felt::from_bytes_be(&{
                     let mut data = x.0;
                     data.reverse();
                     data
@@ -1672,7 +1670,7 @@
             to_address: &Felt252Abi,
             payload: *const (*const Felt252Abi, u32, u32),
         ) {
-            let to_address = Felt252::from_bytes_be(&{
+            let to_address = Felt::from_bytes_be(&{
                 let mut data = to_address.0;
                 data.reverse();
                 data
@@ -1683,7 +1681,7 @@
             }
             .iter()
             .map(|x| {
-                Felt252::from_bytes_be(&{
+                Felt::from_bytes_be(&{
                     let mut data = x.0;
                     data.reverse();
                     data
diff --git a/src/cairo_native/types.rs.html b/src/cairo_native/types.rs.html
index e311c00f7..f165470ec 100644
--- a/src/cairo_native/types.rs.html
+++ b/src/cairo_native/types.rs.html
@@ -531,6 +531,24 @@
 531
 532
 533
+534
+535
+536
+537
+538
+539
+540
+541
+542
+543
+544
+545
+546
+547
+548
+549
+550
+551
 
//! # Compiler type infrastructure
 //!
 //! Contains type generation stuff (aka. conversion from Sierra to MLIR types).
@@ -867,9 +885,27 @@
                 metadata,
                 WithSelf::new(self_ty, info),
             ),
-            CoreTypeConcrete::Sint8(_) => todo!(),
-            CoreTypeConcrete::Sint16(_) => todo!(),
-            CoreTypeConcrete::Sint32(_) => todo!(),
+            CoreTypeConcrete::Sint8(info) => self::uint8::build(
+                context,
+                module,
+                registry,
+                metadata,
+                WithSelf::new(self_ty, info),
+            ),
+            CoreTypeConcrete::Sint16(info) => self::uint16::build(
+                context,
+                module,
+                registry,
+                metadata,
+                WithSelf::new(self_ty, info),
+            ),
+            CoreTypeConcrete::Sint32(info) => self::uint32::build(
+                context,
+                module,
+                registry,
+                metadata,
+                WithSelf::new(self_ty, info),
+            ),
             CoreTypeConcrete::Sint64(_) => todo!(),
             CoreTypeConcrete::Sint128(_) => todo!(),
             CoreTypeConcrete::Bytes31(_) => todo!(),
diff --git a/src/cairo_native/types/enum.rs.html b/src/cairo_native/types/enum.rs.html
index d83506363..454f6de0b 100644
--- a/src/cairo_native/types/enum.rs.html
+++ b/src/cairo_native/types/enum.rs.html
@@ -681,7 +681,7 @@
 //!     U16: u16,
 //!     U32: u32,
 //!     U64: u64,
-//!     Felt: felt252,
+//!     Felt: Felt,
 //! }
 //! ```
 //!
diff --git a/src/cairo_native/types/felt252.rs.html b/src/cairo_native/types/felt252.rs.html
index 555f31d3c..705680cf0 100644
--- a/src/cairo_native/types/felt252.rs.html
+++ b/src/cairo_native/types/felt252.rs.html
@@ -64,6 +64,10 @@
 64
 65
 66
+67
+68
+69
+70
 
//! # `felt252` type
 //!
 //! A `felt252` is a 252-bit number within a
@@ -84,7 +88,7 @@
     ir::{r#type::IntegerType, Module, Type},
     Context,
 };
-use num_bigint::BigUint;
+use num_bigint::{BigInt, BigUint};
 
 lazy_static! {
     /// The `felt252` prime modulo.
@@ -92,10 +96,14 @@
         "3618502788666131213697322783095070105623107215331596699973092056135872020481"
             .parse()
             .unwrap();
+    pub static ref HALF_PRIME: BigInt =
+        "1809251394333065606848661391547535052811553607665798349986546028067936010240"
+            .parse()
+            .unwrap();
 }
 
 /// Marker type for the [PrimeModuloMeta] metadata.
-// TODO: Maybe we should use the JIT value (in `crate::values::felt252`) instead of defining a dummy
+// TODO: Maybe we should use the JIT value (in `crate::values::Felt`) instead of defining a dummy
 //   type?
 #[derive(Debug)]
 pub struct Felt252;
diff --git a/src/cairo_native/types/felt252_dict.rs.html b/src/cairo_native/types/felt252_dict.rs.html
index c8ecc180b..8a6d5a830 100644
--- a/src/cairo_native/types/felt252_dict.rs.html
+++ b/src/cairo_native/types/felt252_dict.rs.html
@@ -37,7 +37,7 @@
 37
 38
 39
-
//! # `felt252` dictionary type
+
//! # `Felt` dictionary type
 //!
 //! A key value storage for values whose type implement Copy. The key is always a felt.
 //!
diff --git a/src/cairo_native/types/felt252_dict_entry.rs.html b/src/cairo_native/types/felt252_dict_entry.rs.html
index ebf5c6ba3..a35e43f20 100644
--- a/src/cairo_native/types/felt252_dict_entry.rs.html
+++ b/src/cairo_native/types/felt252_dict_entry.rs.html
@@ -51,7 +51,7 @@
 51
 52
 53
-
//! # `felt252` dictionary entry type
+
//! # `Felt` dictionary entry type
 //!
 //! The entry type returning when getting a value from a dictionary.
 //!
diff --git a/src/cairo_native/types/squashed_felt252_dict.rs.html b/src/cairo_native/types/squashed_felt252_dict.rs.html
index 159aa8d70..8d09019f1 100644
--- a/src/cairo_native/types/squashed_felt252_dict.rs.html
+++ b/src/cairo_native/types/squashed_felt252_dict.rs.html
@@ -37,7 +37,7 @@
 37
 38
 39
-
//! # Squashed `felt252` dictionary type
+
//! # Squashed `Felt` dictionary type
 //!
 //! TODO
 
diff --git a/src/cairo_native/types/struct.rs.html b/src/cairo_native/types/struct.rs.html
index 0bb962444..a3aebe829 100644
--- a/src/cairo_native/types/struct.rs.html
+++ b/src/cairo_native/types/struct.rs.html
@@ -85,7 +85,7 @@
 //!     U16: u16,
 //!     U32: u32,
 //!     U64: u64,
-//!     Felt: felt252,
+//!     Felt: Felt,
 //! }
 //! ```
 //!
diff --git a/src/cairo_native/utils.rs.html b/src/cairo_native/utils.rs.html
index e4ee5a66b..b92c0c65d 100644
--- a/src/cairo_native/utils.rs.html
+++ b/src/cairo_native/utils.rs.html
@@ -1158,21 +1158,12 @@
 1158
 1159
 1160
-1161
-1162
-1163
-1164
-1165
-1166
-1167
-1168
 
//! # Various utilities
 
 use crate::{
     metadata::MetadataStorage,
     types::{felt252::PRIME, TypeBuilder},
 };
-use cairo_felt::Felt252;
 use cairo_lang_compiler::CompilerConfig;
 use cairo_lang_sierra::{
     extensions::{GenericLibfunc, GenericType},
@@ -1186,6 +1177,7 @@
     Context, Error, ExecutionEngine,
 };
 use num_bigint::{BigInt, BigUint, Sign};
+use starknet_types_core::felt::Felt;
 use std::{
     alloc::Layout,
     borrow::Cow,
@@ -1341,8 +1333,8 @@
     digits.try_into().unwrap()
 }
 
-/// Converts a u32 slice into a Felt252
-pub fn u32_vec_to_felt(u32_limbs: &[u32]) -> Felt252 {
+/// Converts a u32 slice into a Felt
+pub fn u32_vec_to_felt(u32_limbs: &[u32]) -> Felt {
     let mut ret = vec![];
 
     for limb in u32_limbs {
@@ -1350,7 +1342,7 @@
         ret.extend_from_slice(&bytes);
     }
 
-    Felt252::from_bytes_le(&ret)
+    Felt::from_bytes_le_slice(&ret)
 }
 
 /// Creates the execution engine, with all symbols registered.
@@ -2061,10 +2053,10 @@
         assert_eq!(get_integer_layout(512).align(), 8);
     }
 
-    /// Ensures that the host's `felt252` is compatible with its compiled counterpart.
+    /// Ensures that the host's `Felt` is compatible with its compiled counterpart.
     #[test]
     #[ignore]
-    fn test_alignment_compatibility_felt252() {
+    fn test_alignment_compatibility_felt() {
         assert_eq!(get_integer_layout(252).align(), 8);
     }
 
@@ -2072,12 +2064,8 @@
     struct TestSyscallHandler;
 
     impl StarkNetSyscallHandler for TestSyscallHandler {
-        fn get_block_hash(
-            &mut self,
-            _block_number: u64,
-            _gas: &mut u128,
-        ) -> SyscallResult<cairo_felt::Felt252> {
-            Ok(Felt252::from_bytes_be(b"get_block_hash ok"))
+        fn get_block_hash(&mut self, _block_number: u64, _gas: &mut u128) -> SyscallResult<Felt> {
+            Ok(Felt::from_bytes_be_slice(b"get_block_hash ok"))
         }
 
         fn get_execution_info(
@@ -2107,60 +2095,56 @@
 
         fn deploy(
             &mut self,
-            class_hash: cairo_felt::Felt252,
-            contract_address_salt: cairo_felt::Felt252,
-            calldata: &[cairo_felt::Felt252],
+            class_hash: Felt,
+            contract_address_salt: Felt,
+            calldata: &[Felt],
             _deploy_from_zero: bool,
             _gas: &mut u128,
-        ) -> SyscallResult<(cairo_felt::Felt252, Vec<cairo_felt::Felt252>)> {
+        ) -> SyscallResult<(Felt, Vec<Felt>)> {
             Ok((
                 class_hash + contract_address_salt,
-                calldata.iter().map(|x| x + &Felt252::new(1)).collect(),
+                calldata.iter().map(|x| x + Felt::from(1)).collect(),
             ))
         }
 
-        fn replace_class(
-            &mut self,
-            _class_hash: cairo_felt::Felt252,
-            _gas: &mut u128,
-        ) -> SyscallResult<()> {
+        fn replace_class(&mut self, _class_hash: Felt, _gas: &mut u128) -> SyscallResult<()> {
             Ok(())
         }
 
         fn library_call(
             &mut self,
-            _class_hash: cairo_felt::Felt252,
-            _function_selector: cairo_felt::Felt252,
-            calldata: &[cairo_felt::Felt252],
+            _class_hash: Felt,
+            _function_selector: Felt,
+            calldata: &[Felt],
             _gas: &mut u128,
-        ) -> SyscallResult<Vec<cairo_felt::Felt252>> {
-            Ok(calldata.iter().map(|x| x * &Felt252::new(3)).collect())
+        ) -> SyscallResult<Vec<Felt>> {
+            Ok(calldata.iter().map(|x| x * Felt::from(3)).collect())
         }
 
         fn call_contract(
             &mut self,
-            _address: cairo_felt::Felt252,
-            _entry_point_selector: cairo_felt::Felt252,
-            calldata: &[cairo_felt::Felt252],
+            _address: Felt,
+            _entry_point_selector: Felt,
+            calldata: &[Felt],
             _gas: &mut u128,
-        ) -> SyscallResult<Vec<cairo_felt::Felt252>> {
-            Ok(calldata.iter().map(|x| x * &Felt252::new(3)).collect())
+        ) -> SyscallResult<Vec<Felt>> {
+            Ok(calldata.iter().map(|x| x * Felt::from(3)).collect())
         }
 
         fn storage_read(
             &mut self,
             _address_domain: u32,
-            address: cairo_felt::Felt252,
+            address: Felt,
             _gas: &mut u128,
-        ) -> SyscallResult<cairo_felt::Felt252> {
-            Ok(address * &Felt252::new(3))
+        ) -> SyscallResult<Felt> {
+            Ok(address * Felt::from(3))
         }
 
         fn storage_write(
             &mut self,
             _address_domain: u32,
-            _address: cairo_felt::Felt252,
-            _value: cairo_felt::Felt252,
+            _address: Felt,
+            _value: Felt,
             _gas: &mut u128,
         ) -> SyscallResult<()> {
             Ok(())
@@ -2168,8 +2152,8 @@
 
         fn emit_event(
             &mut self,
-            _keys: &[cairo_felt::Felt252],
-            _data: &[cairo_felt::Felt252],
+            _keys: &[Felt],
+            _data: &[Felt],
             _gas: &mut u128,
         ) -> SyscallResult<()> {
             Ok(())
@@ -2177,8 +2161,8 @@
 
         fn send_message_to_l1(
             &mut self,
-            _to_address: cairo_felt::Felt252,
-            _payload: &[cairo_felt::Felt252],
+            _to_address: Felt,
+            _payload: &[Felt],
             _gas: &mut u128,
         ) -> SyscallResult<()> {
             Ok(())
@@ -2190,7 +2174,7 @@
             gas: &mut u128,
         ) -> SyscallResult<crate::starknet::U256> {
             *gas -= 1000;
-            Ok(U256(Felt252::from(1234567890).to_le_bytes()))
+            Ok(U256(Felt::from(1234567890).to_bytes_le()))
         }
 
         fn secp256k1_add(
@@ -2285,7 +2269,7 @@
             todo!()
         }
 
-        fn set_account_contract_address(&mut self, _contract_address: cairo_felt::Felt252) {
+        fn set_account_contract_address(&mut self, _contract_address: Felt) {
             todo!()
         }
 
@@ -2297,15 +2281,15 @@
             todo!()
         }
 
-        fn set_caller_address(&mut self, _address: cairo_felt::Felt252) {
+        fn set_caller_address(&mut self, _address: Felt) {
             todo!()
         }
 
-        fn set_chain_id(&mut self, _chain_id: cairo_felt::Felt252) {
+        fn set_chain_id(&mut self, _chain_id: Felt) {
             todo!()
         }
 
-        fn set_contract_address(&mut self, _address: cairo_felt::Felt252) {
+        fn set_contract_address(&mut self, _address: Felt) {
             todo!()
         }
 
@@ -2313,23 +2297,23 @@
             todo!()
         }
 
-        fn set_nonce(&mut self, _nonce: cairo_felt::Felt252) {
+        fn set_nonce(&mut self, _nonce: Felt) {
             todo!()
         }
 
-        fn set_sequencer_address(&mut self, _address: cairo_felt::Felt252) {
+        fn set_sequencer_address(&mut self, _address: Felt) {
             todo!()
         }
 
-        fn set_signature(&mut self, _signature: &[cairo_felt::Felt252]) {
+        fn set_signature(&mut self, _signature: &[Felt]) {
             todo!()
         }
 
-        fn set_transaction_hash(&mut self, _transaction_hash: cairo_felt::Felt252) {
+        fn set_transaction_hash(&mut self, _transaction_hash: Felt) {
             todo!()
         }
 
-        fn set_version(&mut self, _version: cairo_felt::Felt252) {
+        fn set_version(&mut self, _version: Felt) {
             todo!()
         }
     }
diff --git a/src/cairo_native/values.rs.html b/src/cairo_native/values.rs.html
index 6963c0087..4200fe92b 100644
--- a/src/cairo_native/values.rs.html
+++ b/src/cairo_native/values.rs.html
@@ -687,6 +687,45 @@
 687
 688
 689
+690
+691
+692
+693
+694
+695
+696
+697
+698
+699
+700
+701
+702
+703
+704
+705
+706
+707
+708
+709
+710
+711
+712
+713
+714
+715
+716
+717
+718
+719
+720
+721
+722
+723
+724
+725
+726
+727
+728
 
//! # JIT params and return values de/serialization
 
 //! A Rusty interface to provide parameters to JIT calls.
@@ -694,7 +733,6 @@
 use std::{alloc::Layout, collections::HashMap, ops::Neg, ptr::NonNull};
 
 use bumpalo::Bump;
-use cairo_felt::Felt252;
 use cairo_lang_sierra::{
     extensions::{
         core::{CoreLibfunc, CoreType, CoreTypeConcrete},
@@ -704,6 +742,7 @@
     program_registry::ProgramRegistry,
 };
 use num_bigint::{BigInt, Sign};
+use starknet_types_core::felt::{biguint_to_felt, felt_to_bigint, Felt};
 
 use crate::{
     error::jit_engine::{make_type_builder_error, ErrorImpl, RunnerError},
@@ -721,7 +760,7 @@
 #[derive(Educe, Debug, Clone)]
 #[educe(PartialEq, Eq)]
 pub enum JITValue {
-    Felt252(Felt252),
+    Felt252(Felt),
     /// all elements need to be same type
     Array(Vec<Self>),
     Struct {
@@ -736,7 +775,7 @@
         debug_name: Option<String>,
     },
     Felt252Dict {
-        value: HashMap<Felt252, Self>,
+        value: HashMap<Felt, Self>,
         #[educe(PartialEq(ignore))]
         debug_name: Option<String>,
     },
@@ -745,14 +784,17 @@
     Uint32(u32),
     Uint64(u64),
     Uint128(u128),
-    EcPoint(Felt252, Felt252),
-    EcState(Felt252, Felt252, Felt252, Felt252),
+    Sint8(i8),
+    Sint16(i16),
+    Sint32(i32),
+    EcPoint(Felt, Felt),
+    EcState(Felt, Felt, Felt, Felt),
 }
 
 // Conversions
 
-impl From<Felt252> for JITValue {
-    fn from(value: Felt252) -> Self {
+impl From<Felt> for JITValue {
+    fn from(value: Felt) -> Self {
         JITValue::Felt252(value)
     }
 }
@@ -787,6 +829,24 @@
     }
 }
 
+impl From<i8> for JITValue {
+    fn from(value: i8) -> Self {
+        JITValue::Sint8(value)
+    }
+}
+
+impl From<i16> for JITValue {
+    fn from(value: i16) -> Self {
+        JITValue::Sint16(value)
+    }
+}
+
+impl From<i32> for JITValue {
+    fn from(value: i32) -> Self {
+        JITValue::Sint32(value)
+    }
+}
+
 impl<T: Into<JITValue> + Clone> From<&[T]> for JITValue {
     fn from(value: &[T]) -> Self {
         Self::Array(value.iter().map(|x| x.clone().into()).collect())
@@ -830,7 +890,7 @@
                 JITValue::Felt252(value) => {
                     let ptr = arena.alloc_layout(get_integer_layout(252)).cast();
 
-                    let data = felt252_bigint(value.to_bigint());
+                    let data = felt252_bigint(felt_to_bigint(*value));
                     ptr.cast::<[u32; 8]>().as_mut().copy_from_slice(&data);
                     ptr
                 }
@@ -1000,7 +1060,7 @@
                         // next key must be called before next_value
 
                         for (key, value) in map.iter() {
-                            let key = key.to_le_bytes();
+                            let key = key.to_bytes_le();
                             let value = value.to_jit(arena, registry, &info.ty)?;
 
                             let value_malloc_ptr =
@@ -1070,13 +1130,31 @@
 
                     ptr
                 }
+                JITValue::Sint8(value) => {
+                    let ptr = arena.alloc_layout(Layout::new::<i8>()).cast();
+                    *ptr.cast::<i8>().as_mut() = *value;
+
+                    ptr
+                }
+                JITValue::Sint16(value) => {
+                    let ptr = arena.alloc_layout(Layout::new::<i16>()).cast();
+                    *ptr.cast::<i16>().as_mut() = *value;
+
+                    ptr
+                }
+                JITValue::Sint32(value) => {
+                    let ptr = arena.alloc_layout(Layout::new::<i32>()).cast();
+                    *ptr.cast::<i32>().as_mut() = *value;
+
+                    ptr
+                }
                 JITValue::EcPoint(a, b) => {
                     let ptr = arena
                         .alloc_layout(layout_repeat(&get_integer_layout(252), 2).unwrap().0)
                         .cast();
 
-                    let a = felt252_bigint(a.to_bigint());
-                    let b = felt252_bigint(b.to_bigint());
+                    let a = felt252_bigint(felt_to_bigint(*a));
+                    let b = felt252_bigint(felt_to_bigint(*b));
                     let data = [a, b];
 
                     ptr.cast::<[[u32; 8]; 2]>().as_mut().copy_from_slice(&data);
@@ -1088,10 +1166,10 @@
                         .alloc_layout(layout_repeat(&get_integer_layout(252), 4).unwrap().0)
                         .cast();
 
-                    let a = felt252_bigint(a.to_bigint());
-                    let b = felt252_bigint(b.to_bigint());
-                    let c = felt252_bigint(c.to_bigint());
-                    let d = felt252_bigint(d.to_bigint());
+                    let a = felt252_bigint(felt_to_bigint(*a));
+                    let b = felt252_bigint(felt_to_bigint(*b));
+                    let c = felt252_bigint(felt_to_bigint(*c));
+                    let d = felt252_bigint(felt_to_bigint(*d));
                     let data = [a, b, c, d];
 
                     ptr.cast::<[[u32; 8]; 4]>().as_mut().copy_from_slice(&data);
@@ -1172,9 +1250,9 @@
                 CoreTypeConcrete::Uint64(_) => JITValue::Uint64(*ptr.cast::<u64>().as_ref()),
                 CoreTypeConcrete::Uint128(_) => JITValue::Uint128(*ptr.cast::<u128>().as_ref()),
                 CoreTypeConcrete::Uint128MulGuarantee(_) => todo!(),
-                CoreTypeConcrete::Sint8(_) => todo!(),
-                CoreTypeConcrete::Sint16(_) => todo!(),
-                CoreTypeConcrete::Sint32(_) => todo!(),
+                CoreTypeConcrete::Sint8(_) => JITValue::Sint8(*ptr.cast::<i8>().as_ref()),
+                CoreTypeConcrete::Sint16(_) => JITValue::Sint16(*ptr.cast::<i16>().as_ref()),
+                CoreTypeConcrete::Sint32(_) => JITValue::Sint32(*ptr.cast::<i32>().as_ref()),
                 CoreTypeConcrete::Sint64(_) => todo!(),
                 CoreTypeConcrete::Sint128(_) => todo!(),
                 CoreTypeConcrete::NonZero(info) => JITValue::from_jit(ptr, &info.ty, registry),
@@ -1255,7 +1333,7 @@
                     let mut output_map = HashMap::with_capacity(map.len());
 
                     for (key, val_ptr) in map.iter() {
-                        let key = Felt252::from_bytes_le(key.as_slice());
+                        let key = Felt::from_bytes_le_slice(key.as_slice());
                         output_map.insert(key, Self::from_jit(val_ptr.cast(), &info.ty, registry));
                         // we need to free all the elements, which are allocated by libc realloc.
                         libc::free(val_ptr.as_ptr());
@@ -1312,7 +1390,7 @@
             _ => value.to_biguint().unwrap(),
         };
 
-        Self::Felt252(Felt252::from(value))
+        Self::Felt252(biguint_to_felt(&value))
     }
 }
 
@@ -1367,9 +1445,9 @@
             },
             CoreTypeConcrete::SegmentArena(_) => false,
             CoreTypeConcrete::Snapshot(_) => false,
-            CoreTypeConcrete::Sint8(_) => todo!(),
-            CoreTypeConcrete::Sint16(_) => todo!(),
-            CoreTypeConcrete::Sint32(_) => todo!(),
+            CoreTypeConcrete::Sint8(_) => false,
+            CoreTypeConcrete::Sint16(_) => false,
+            CoreTypeConcrete::Sint32(_) => false,
             CoreTypeConcrete::Sint64(_) => todo!(),
             CoreTypeConcrete::Sint128(_) => todo!(),
             CoreTypeConcrete::Bytes31(_) => todo!(),
diff --git a/src/cairo_native_run/cairo-native-run.rs.html b/src/cairo_native_run/cairo-native-run.rs.html
index 74fccb6b6..d6c8445c6 100644
--- a/src/cairo_native_run/cairo-native-run.rs.html
+++ b/src/cairo_native_run/cairo-native-run.rs.html
@@ -163,18 +163,14 @@
 163
 164
 165
-166
-167
-168
-
use cairo_felt::Felt252;
-use cairo_lang_compiler::{
+
use cairo_lang_compiler::{
     compile_prepared_db, db::RootDatabase, project::setup_project, CompilerConfig,
 };
 use cairo_lang_sierra::{ids::FunctionId, program::Program, ProgramParser};
 use cairo_native::{context::NativeContext, executor::NativeExecutor, values::JITValue};
 use clap::Parser;
 use itertools::Itertools;
-use num_traits::Num;
+use starknet_types_core::felt::Felt;
 use std::{
     borrow::Cow,
     convert::Infallible,
@@ -228,9 +224,7 @@
     let params = params_input
         .split_whitespace()
         .map(|x| {
-            JITValue::Felt252(
-                Felt252::from_str_radix(x, 10).expect("input parameter is not a valid felt252"),
-            )
+            JITValue::Felt252(Felt::from_dec_str(x).expect("input parameter is not a valid Felt"))
         })
         .collect_vec();
 
diff --git a/src/cairo_native_runtime/lib.rs.html b/src/cairo_native_runtime/lib.rs.html
index bdbc39132..8f9051f5c 100644
--- a/src/cairo_native_runtime/lib.rs.html
+++ b/src/cairo_native_runtime/lib.rs.html
@@ -432,14 +432,47 @@
 432
 433
 434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
 
#![allow(non_snake_case)]
 
-use cairo_felt::Felt252;
-use cairo_lang_runner::short_string::as_cairo_short_string;
-use starknet_crypto::FieldElement;
+use starknet_crypto::FieldElement;
 use starknet_curve::AffinePoint;
+use starknet_types_core::felt::{felt_to_bigint, Felt};
 use std::{collections::HashMap, fs::File, io::Write, os::fd::FromRawFd, ptr::NonNull, slice};
 
+pub(crate) fn as_cairo_short_string(value: &Felt) -> Option<String> {
+    let mut as_string = String::default();
+    let mut is_end = false;
+    for byte in value.to_bytes_be() {
+        if byte == 0 {
+            is_end = true;
+        } else if is_end || !byte.is_ascii() {
+            return None;
+        } else {
+            as_string.push(byte as char);
+        }
+    }
+    Some(as_string)
+}
 /// Based on `cairo-lang-runner`'s implementation.
 ///
 /// Source: <https://github.com/starkware-libs/cairo/blob/main/crates/cairo-lang-runner/src/casm_run/mod.rs#L1789-L1800>
@@ -460,18 +493,25 @@
         let mut data = *data.add(i);
         data.reverse();
 
-        let value = Felt252::from_bytes_be(&data);
+        let value = Felt::from_bytes_be(&data);
         if let Some(shortstring) = as_cairo_short_string(&value) {
             if writeln!(
                 target,
                 "[DEBUG]\t{shortstring: <31}\t(raw: {})",
-                value.to_bigint()
+                felt_to_bigint(value)
             )
             .is_err()
             {
                 return 1;
             };
-        } else if writeln!(target, "[DEBUG]\t{:<31}\t(raw: {})", ' ', value.to_bigint()).is_err() {
+        } else if writeln!(
+            target,
+            "[DEBUG]\t{:<31}\t(raw: {})",
+            ' ',
+            felt_to_bigint(value)
+        )
+        .is_err()
+        {
             return 1;
         }
     }

IndexTypeABI (in Rust types)AlignmentSize
0i8u811