Enum solang_parser::pt::Type
source · pub enum Type {
Address,
AddressPayable,
Payable,
Bool,
String,
Int(u16),
Uint(u16),
Bytes(u8),
Rational,
DynamicBytes,
Mapping {
loc: Loc,
key: Box<Expression>,
key_name: Option<Identifier>,
value: Box<Expression>,
value_name: Option<Identifier>,
},
Function {
params: ParameterList,
attributes: Vec<FunctionAttribute>,
returns: Option<(ParameterList, Vec<FunctionAttribute>)>,
},
}
Expand description
A type.
Variants§
Address
address
AddressPayable
address payable
Payable
payable
Only used as a cast.
Bool
bool
String
string
Int(u16)
int<n>
Uint(u16)
uint<n>
Bytes(u8)
bytes<n>
Rational
fixed
DynamicBytes
bytes
Mapping
mapping(<key> [key_name] => <value> [value_name])
Fields
§
key: Box<Expression>
The key expression.
This is only allowed to be an elementary type or a user defined type.
§
key_name: Option<Identifier>
The optional key identifier.
§
value: Box<Expression>
The value expression.
§
value_name: Option<Identifier>
The optional value identifier.
Function
function (<params>) <attributes> [returns]
Fields
§
params: ParameterList
The list of parameters.
§
attributes: Vec<FunctionAttribute>
The list of attributes.
§
returns: Option<(ParameterList, Vec<FunctionAttribute>)>
The optional list of return parameters.
Trait Implementations§
source§impl PartialEq for Type
impl PartialEq for Type
impl Eq for Type
impl StructuralPartialEq for Type
Auto Trait Implementations§
impl Freeze for Type
impl RefUnwindSafe for Type
impl Send for Type
impl Sync for Type
impl Unpin for Type
impl UnwindSafe for Type
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more