#[non_exhaustive]pub enum UnpackedValue {
Show 17 variants
Undefined,
Null,
Boolean(bool),
Character(char),
Number(Number),
String(WideString),
Symbol(Symbol),
Vector(Vector),
ByteVector(ByteVector),
Syntax(Gc<Syntax>),
Procedure(Procedure),
Record(Record),
RecordTypeDescriptor(Arc<RecordTypeDescriptor>),
Pair(Pair),
Port(Port),
HashTable(HashTable),
Cell(Cell),
}Expand description
The external, unpacked, enumeration representation of a scheme value.
Values that are not potentially cyclical, such as syntax objects and byte vectors use Arcs as they are much less expensive than Gc types.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Undefined
Null
Boolean(bool)
Character(char)
Number(Number)
String(WideString)
Symbol(Symbol)
Vector(Vector)
ByteVector(ByteVector)
Syntax(Gc<Syntax>)
Procedure(Procedure)
Record(Record)
RecordTypeDescriptor(Arc<RecordTypeDescriptor>)
Pair(Pair)
Port(Port)
HashTable(HashTable)
Cell(Cell)
Implementations§
Trait Implementations§
Source§impl AsRef<UnpackedValue> for UnpackedValueRef<'_>
impl AsRef<UnpackedValue> for UnpackedValueRef<'_>
Source§fn as_ref(&self) -> &UnpackedValue
fn as_ref(&self) -> &UnpackedValue
Converts this type into a shared reference of the (usually inferred) input type.
Source§impl Clone for UnpackedValue
impl Clone for UnpackedValue
Source§fn clone(&self) -> UnpackedValue
fn clone(&self) -> UnpackedValue
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl From<()> for UnpackedValue
impl From<()> for UnpackedValue
Source§impl From<Arc<RecordTypeDescriptor>> for UnpackedValue
impl From<Arc<RecordTypeDescriptor>> for UnpackedValue
Source§fn from(v: Arc<RecordTypeDescriptor>) -> Self
fn from(v: Arc<RecordTypeDescriptor>) -> Self
Converts to this type from the input type.
Source§impl From<ByteVector> for UnpackedValue
impl From<ByteVector> for UnpackedValue
Source§fn from(v: ByteVector) -> Self
fn from(v: ByteVector) -> Self
Converts to this type from the input type.
Source§impl From<Cell> for UnpackedValue
impl From<Cell> for UnpackedValue
Source§impl From<HashTable> for UnpackedValue
impl From<HashTable> for UnpackedValue
Source§impl From<Number> for UnpackedValue
impl From<Number> for UnpackedValue
Source§impl From<Pair> for UnpackedValue
impl From<Pair> for UnpackedValue
Source§impl From<Port> for UnpackedValue
impl From<Port> for UnpackedValue
Source§impl From<Procedure> for UnpackedValue
impl From<Procedure> for UnpackedValue
Source§impl From<Record> for UnpackedValue
impl From<Record> for UnpackedValue
Source§impl From<String> for UnpackedValue
impl From<String> for UnpackedValue
Source§impl From<Symbol> for UnpackedValue
impl From<Symbol> for UnpackedValue
Source§impl From<Syntax> for UnpackedValue
impl From<Syntax> for UnpackedValue
Source§impl From<UnpackedValue> for Option<(Value, Value)>
impl From<UnpackedValue> for Option<(Value, Value)>
Source§fn from(val: UnpackedValue) -> Self
fn from(val: UnpackedValue) -> Self
Converts to this type from the input type.
Source§impl From<UnpackedValue> for Option<Arc<RecordTypeDescriptor>>
impl From<UnpackedValue> for Option<Arc<RecordTypeDescriptor>>
Source§fn from(v: UnpackedValue) -> Self
fn from(v: UnpackedValue) -> Self
Converts to this type from the input type.
Source§impl From<UnpackedValue> for Option<ByteVector>
impl From<UnpackedValue> for Option<ByteVector>
Source§fn from(v: UnpackedValue) -> Self
fn from(v: UnpackedValue) -> Self
Converts to this type from the input type.
Source§impl From<UnpackedValue> for Option<Gc<Syntax>>
impl From<UnpackedValue> for Option<Gc<Syntax>>
Source§fn from(v: UnpackedValue) -> Self
fn from(v: UnpackedValue) -> Self
Converts to this type from the input type.
Source§impl From<UnpackedValue> for Option<HashTable>
impl From<UnpackedValue> for Option<HashTable>
Source§fn from(v: UnpackedValue) -> Self
fn from(v: UnpackedValue) -> Self
Converts to this type from the input type.
Source§impl From<UnpackedValue> for Option<Number>
impl From<UnpackedValue> for Option<Number>
Source§fn from(v: UnpackedValue) -> Self
fn from(v: UnpackedValue) -> Self
Converts to this type from the input type.
Source§impl From<UnpackedValue> for Option<Pair>
impl From<UnpackedValue> for Option<Pair>
Source§fn from(v: UnpackedValue) -> Self
fn from(v: UnpackedValue) -> Self
Converts to this type from the input type.
Source§impl From<UnpackedValue> for Option<Port>
impl From<UnpackedValue> for Option<Port>
Source§fn from(v: UnpackedValue) -> Self
fn from(v: UnpackedValue) -> Self
Converts to this type from the input type.
Source§impl From<UnpackedValue> for Option<Procedure>
impl From<UnpackedValue> for Option<Procedure>
Source§fn from(v: UnpackedValue) -> Self
fn from(v: UnpackedValue) -> Self
Converts to this type from the input type.
Source§impl From<UnpackedValue> for Option<Record>
impl From<UnpackedValue> for Option<Record>
Source§fn from(v: UnpackedValue) -> Self
fn from(v: UnpackedValue) -> Self
Converts to this type from the input type.
Source§impl From<UnpackedValue> for Option<Symbol>
impl From<UnpackedValue> for Option<Symbol>
Source§fn from(v: UnpackedValue) -> Self
fn from(v: UnpackedValue) -> Self
Converts to this type from the input type.
Source§impl From<UnpackedValue> for Option<Vector>
impl From<UnpackedValue> for Option<Vector>
Source§fn from(v: UnpackedValue) -> Self
fn from(v: UnpackedValue) -> Self
Converts to this type from the input type.
Source§impl From<UnpackedValue> for Option<WideString>
impl From<UnpackedValue> for Option<WideString>
Source§fn from(v: UnpackedValue) -> Self
fn from(v: UnpackedValue) -> Self
Converts to this type from the input type.
Source§impl From<UnpackedValue> for Option<char>
impl From<UnpackedValue> for Option<char>
Source§fn from(v: UnpackedValue) -> Self
fn from(v: UnpackedValue) -> Self
Converts to this type from the input type.
Source§impl From<Vector> for UnpackedValue
impl From<Vector> for UnpackedValue
Source§impl From<WideString> for UnpackedValue
impl From<WideString> for UnpackedValue
Source§fn from(v: WideString) -> Self
fn from(v: WideString) -> Self
Converts to this type from the input type.
Source§impl From<bool> for UnpackedValue
impl From<bool> for UnpackedValue
Source§impl From<char> for UnpackedValue
impl From<char> for UnpackedValue
Source§impl Trace for UnpackedValue
impl Trace for UnpackedValue
Source§impl TryFrom<UnpackedValue> for ()
impl TryFrom<UnpackedValue> for ()
Source§impl TryFrom<UnpackedValue> for Arc<RecordTypeDescriptor>
impl TryFrom<UnpackedValue> for Arc<RecordTypeDescriptor>
Source§impl TryFrom<UnpackedValue> for ByteVector
impl TryFrom<UnpackedValue> for ByteVector
Source§impl TryFrom<UnpackedValue> for Cell
impl TryFrom<UnpackedValue> for Cell
Source§impl TryFrom<UnpackedValue> for HashTable
impl TryFrom<UnpackedValue> for HashTable
Source§impl TryFrom<UnpackedValue> for Number
impl TryFrom<UnpackedValue> for Number
Source§impl TryFrom<UnpackedValue> for Pair
impl TryFrom<UnpackedValue> for Pair
Source§impl TryFrom<UnpackedValue> for Port
impl TryFrom<UnpackedValue> for Port
Source§impl TryFrom<UnpackedValue> for Procedure
impl TryFrom<UnpackedValue> for Procedure
Source§impl TryFrom<UnpackedValue> for Record
impl TryFrom<UnpackedValue> for Record
Source§impl TryFrom<UnpackedValue> for Symbol
impl TryFrom<UnpackedValue> for Symbol
Source§impl TryFrom<UnpackedValue> for Vector
impl TryFrom<UnpackedValue> for Vector
Source§impl TryFrom<UnpackedValue> for WideString
impl TryFrom<UnpackedValue> for WideString
Auto Trait Implementations§
impl Freeze for UnpackedValue
impl !RefUnwindSafe for UnpackedValue
impl Send for UnpackedValue
impl Sync for UnpackedValue
impl !Unpin for UnpackedValue
impl !UnwindSafe for UnpackedValue
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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