enum LowerAtom {
}Expand description
An atom that maps directly to an R SEXP constructor.
Variants§
StringLit(String)
"hello" — SEXP::scalar_string_from_str(…)
IntLit(i32)
42L — SEXP::scalar_integer(…)
RealLit(f64)
1.5, 1e3, or unsuffixed 42 (R parses unsuffixed numeric
literals as double) — SEXP::scalar_real(…)
Bool(bool)
TRUE / FALSE — SEXP::scalar_logical(…)
Null
NULL — SEXP::nil()
Na
Bare NA — logical NA (typeof(NA) is "logical" in R)
NaInteger
NA_integer_ — SEXP::scalar_integer(i32::MIN)
NaReal
NA_real_ — SEXP::scalar_real(NA_REAL)
NaCharacter
NA_character_ — SEXP::scalar_string(SEXP::na_string())
Inf
Inf — SEXP::scalar_real(f64::INFINITY)
NaN
NaN — SEXP::scalar_real(f64::NAN)
Symbol(String)
Bare identifier (symbol) — Rf_install at eval time via RSymbol
Call(Box<LowerCall>)
Nested lowerable call
Trait Implementations§
Auto Trait Implementations§
impl Freeze for LowerAtom
impl RefUnwindSafe for LowerAtom
impl Send for LowerAtom
impl Sync for LowerAtom
impl Unpin for LowerAtom
impl UnsafeUnpin for LowerAtom
impl UnwindSafe for LowerAtom
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
Source§impl<T> SizeHint for Twhere
T: ?Sized,
impl<T> SizeHint for Twhere
T: ?Sized,
Source§default fn lower_bound(&self) -> usize
default fn lower_bound(&self) -> usize
core_io_internals)[u8; 12] could return any value between 0 and
12 inclusively as a correct implementation. Read moreSource§impl<T> SizedTypeProperties for T
impl<T> SizedTypeProperties for T
Source§#[doc(hidden)]const SIZE: usize = _
#[doc(hidden)]const SIZE: usize = _
sized_type_properties)Source§#[doc(hidden)]const ALIGN: usize = _
#[doc(hidden)]const ALIGN: usize = _
sized_type_properties)Source§#[doc(hidden)]const ALIGNMENT: Alignment = _
#[doc(hidden)]const ALIGNMENT: Alignment = _
ptr_alignment_type)Source§#[doc(hidden)]const IS_ZST: bool = _
#[doc(hidden)]const IS_ZST: bool = _
sized_type_properties)Source§#[doc(hidden)]const LAYOUT: Layout = _
#[doc(hidden)]const LAYOUT: Layout = _
sized_type_properties)Source§#[doc(hidden)]const MAX_SLICE_LEN: usize = _
#[doc(hidden)]const MAX_SLICE_LEN: usize = _
sized_type_properties)[Self]. Read moreLayout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 32 bytes
Size for each variant:
StringLit: 31 bytesIntLit: 7 bytesRealLit: 15 bytesBool: 1 byteNull: 0 bytesNa: 0 bytesNaInteger: 0 bytesNaReal: 0 bytesNaCharacter: 0 bytesInf: 0 bytesNaN: 0 bytesSymbol: 31 bytesCall: 15 bytes