Enum bytecode_interpreter::concrete::ty::Type
source · pub enum Type {
Base(BaseType),
Reference(bool, BaseType),
}
Variants§
Implementations§
source§impl Type
impl Type
pub fn mk_bool() -> Self
pub fn mk_ref_bool(is_mut: bool) -> Self
pub fn is_bool(&self) -> bool
pub fn is_ref_bool(&self, is_mut_opt: Option<bool>) -> bool
pub fn mk_u8() -> Self
pub fn mk_ref_u8(is_mut: bool) -> Self
pub fn is_u8(&self) -> bool
pub fn is_ref_u8(&self, is_mut_opt: Option<bool>) -> bool
pub fn mk_u64() -> Self
pub fn mk_ref_u64(is_mut: bool) -> Self
pub fn is_u64(&self) -> bool
pub fn is_ref_u64(&self, is_mut_opt: Option<bool>) -> bool
pub fn mk_u128() -> Self
pub fn mk_ref_u128(is_mut: bool) -> Self
pub fn is_u128(&self) -> bool
pub fn is_ref_u128(&self, is_mut_opt: Option<bool>) -> bool
pub fn mk_num() -> Self
pub fn mk_ref_num(is_mut: bool) -> Self
pub fn is_num(&self) -> bool
pub fn is_ref_num(&self, is_mut_opt: Option<bool>) -> bool
pub fn mk_address() -> Self
pub fn mk_ref_address(is_mut: bool) -> Self
pub fn is_address(&self) -> bool
pub fn is_ref_address(&self, is_mut_opt: Option<bool>) -> bool
pub fn mk_signer() -> Self
pub fn mk_ref_signer(is_mut: bool) -> Self
pub fn is_signer(&self) -> bool
pub fn is_ref_signer(&self, is_mut_opt: Option<bool>) -> bool
pub fn mk_vector(elem: BaseType) -> Self
pub fn mk_ref_vector(elem: BaseType, is_mut: bool) -> Self
pub fn is_vector(&self) -> bool
pub fn is_ref_vector(&self, is_mut_opt: Option<bool>) -> bool
pub fn get_vector_elem(&self) -> &BaseType
pub fn get_ref_vector_elem(&self, is_mut_opt: Option<bool>) -> &BaseType
pub fn into_vector_elem(self) -> BaseType
pub fn into_ref_vector_elem(self, is_mut_opt: Option<bool>) -> BaseType
pub fn is_vector_of(&self, elem: &BaseType) -> bool
pub fn is_ref_vector_of(&self, elem: &BaseType, is_mut_opt: Option<bool>) -> bool
pub fn mk_struct(inst: StructInstantiation) -> Self
pub fn mk_ref_struct(inst: StructInstantiation, is_mut: bool) -> Self
pub fn is_struct(&self) -> bool
pub fn is_ref_struct(&self, is_mut_opt: Option<bool>) -> bool
pub fn get_struct_inst(&self) -> &StructInstantiation
pub fn get_ref_struct_inst( &self, is_mut_opt: Option<bool> ) -> &StructInstantiation
pub fn into_struct_inst(self) -> StructInstantiation
pub fn into_ref_struct_inst( self, is_mut_opt: Option<bool> ) -> StructInstantiation
pub fn is_struct_of(&self, inst: &StructInstantiation) -> bool
pub fn is_ref_struct_of( &self, inst: &StructInstantiation, is_mut_opt: Option<bool> ) -> bool
pub fn is_base(&self) -> bool
pub fn is_ref(&self, is_mut_opt: Option<bool>) -> bool
pub fn get_base_type(&self) -> &BaseType
pub fn get_ref_type(&self) -> (bool, &BaseType)
pub fn into_base_type(self) -> BaseType
pub fn into_ref_type(self) -> (bool, BaseType)
pub fn is_base_of(&self, ty: &BaseType) -> bool
pub fn is_ref_of(&self, ty: &BaseType, is_mut_opt: Option<bool>) -> bool
pub fn is_int(&self) -> bool
pub fn is_ref_int(&self, is_mut_opt: Option<bool>) -> bool
pub fn is_compatible_for_assign(&self, other: &Type) -> bool
pub fn is_compatible_for_equality(&self, other: &Type) -> bool
pub fn is_compatible_for_arithmetic(&self, lhs: &Type, rhs: &Type) -> bool
pub fn is_compatible_for_bitwise(&self, lhs: &Type, rhs: &Type) -> bool
pub fn is_compatible_for_comparison(&self, other: &Type) -> bool
pub fn is_compatible_for_bitshift(&self, other: &Type) -> bool
pub fn is_compatible_for_constant(&self, value: &Constant) -> bool
pub fn is_compatible_for_abort_code(&self) -> bool
Trait Implementations§
source§impl Ord for Type
impl Ord for Type
source§impl PartialEq<Type> for Type
impl PartialEq<Type> for Type
source§impl PartialOrd<Type> for Type
impl PartialOrd<Type> for Type
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moreimpl Eq for Type
impl StructuralEq for Type
impl StructuralPartialEq for Type
Auto Trait Implementations§
impl RefUnwindSafe for Type
impl Send for Type
impl Sync for Type
impl Unpin for Type
impl UnwindSafe for Type
Blanket Implementations§
source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.