pub enum ESExpr<'a> {
}Expand description
Representation of an ESExpr value.
Must be a constructor, bool, int, string, float32, float64, {int,uint}{8,16,32,64} or null.
Variants§
Constructor(ESExprConstructor<'a>)
A constructor expression. Can contain positional and keyword arguments.
Bool(bool)
A bool value.
Int(Cow<'a, BigInt>)
An integer value.
Str(CowStr<'a>)
A string value.
Float16(f16)
A float16 value.
Float32(f32)
A float32 value.
Float64(f64)
A float64 value.
Array8(Cow<'a, [u8]>)
An array of 8-bit values
Array16(Cow<'a, [u16]>)
An array of 16-bit values
Array32(Cow<'a, [u32]>)
An array of 32-bit values
Array64(Cow<'a, [u64]>)
An array of 64-bit values
Array128(Cow<'a, [u128]>)
An array of 128-bit values
Null(Cow<'a, BigUint>)
A Null value.
Implementations§
Source§impl<'a> ESExpr<'a>
impl<'a> ESExpr<'a>
Sourcepub fn constructor<'b, S: Into<CowStr<'b>>, A: Into<ConstructorArgs<'a>>, K: Into<KeywordArgs<'a>>>(
name: S,
args: A,
kwargs: K,
) -> Selfwhere
'b: 'a,
pub fn constructor<'b, S: Into<CowStr<'b>>, A: Into<ConstructorArgs<'a>>, K: Into<KeywordArgs<'a>>>(
name: S,
args: A,
kwargs: K,
) -> Selfwhere
'b: 'a,
Create a new constructor expression
Sourcepub fn into_owned(self) -> ESExpr<'static>
pub fn into_owned(self) -> ESExpr<'static>
Ensures that any borrowed values are converted to owned values.
Sourcepub fn as_borrowed<'b>(&'b self) -> ESExpr<'b>where
'a: 'b,
pub fn as_borrowed<'b>(&'b self) -> ESExpr<'b>where
'a: 'b,
Creates an ESExpr value from a reference without making a deep copy.
Trait Implementations§
Source§impl<'a> ESExprCodec<'a> for ESExpr<'a>
impl<'a> ESExprCodec<'a> for ESExpr<'a>
Source§const TAGS: ESExprTagSet = ESExprTagSet::All
const TAGS: ESExprTagSet = ESExprTagSet::All
The tags of the encoded expressions that this type can produce.
Source§fn encode_esexpr(&'a self) -> ESExpr<'a>
fn encode_esexpr(&'a self) -> ESExpr<'a>
Encode this value into an expression.
Source§fn decode_esexpr(expr: ESExpr<'a>) -> Result<Self, DecodeError>
fn decode_esexpr(expr: ESExpr<'a>) -> Result<Self, DecodeError>
Decode an expression into a value. Read more
Source§impl<'a> ESExprEncodedEq for ESExpr<'a>
impl<'a> ESExprEncodedEq for ESExpr<'a>
Source§fn is_encoded_eq(&self, other: &Self) -> bool
fn is_encoded_eq(&self, other: &Self) -> bool
Determines whether two values are equal when encoded as
ESExpr.impl<'a> Eq for ESExpr<'a>
Auto Trait Implementations§
impl<'a> Freeze for ESExpr<'a>
impl<'a> RefUnwindSafe for ESExpr<'a>
impl<'a> Send for ESExpr<'a>
impl<'a> Sync for ESExpr<'a>
impl<'a> Unpin for ESExpr<'a>
impl<'a> UnwindSafe for ESExpr<'a>
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