pub enum Ruby {
Show 21 variants
Array,
Bool,
Class,
CPointer,
Data,
Exception,
Fiber,
Fixnum,
Float,
Hash,
InlineStruct,
Module,
Nil,
Object,
Proc,
Range,
SingletonClass,
String,
Symbol,
Unreachable,
RecursiveSelfOwnership,
}
Expand description
Classes of Ruby types.
Variants§
Array
Ruby Array
type.
Bool
Ruby TrueClass
and FalseClass
type.
Class
Ruby Class
type.
CPointer
FFI type for a borrowed C pointer.
Data
FFI type for an owned C pointer.
Exception
Ruby Exception
type.
Fiber
Ruby Fiber
type.
Fixnum
Ruby Fixnum
type.
Fixnum
is a type of Integer
which represents numbers from
[-u64::MAX, us64::MAX]
. Fixnum
s have a special algorithm for
object IDs: 2 * self - 1
.
Float
Ruby Float
type.
Hash
Ruby Hash
type.
Similar to a HashMap
, but iterates by insertion order.
InlineStruct
Internal type for non-heap allocated structs.
Module
Ruby Module
type.
Nil
Ruby nil
singleton type, the only instance of NilClass
.
Object
Ruby Object
type.
This type represents instances of classes defined in the Artichoke VM.
Proc
Ruby Proc
type.
Proc
is a callable closure that captures lexical scope. Proc
s can
be arbitrary arity and may or may not enforce this arity when called.
Range
Ruby Range
type.
Similar to a Rust iterator.
SingletonClass
Internal type for the singleton class of an object.
String
Ruby String
type.
In Artichoke, String
s have a limited set of encodings. A String
can
be UTF-8, maybe UTF-8, or binary.
Symbol
Ruby Symbol
type.
An interned String
. Symbols are never freed by the interpreter.
Unreachable
Unreachable interpreter value. Receiving one of these from the interpreter is a bug.
RecursiveSelfOwnership
A special Value
that is a placeholder for collections that own
themselves.
Implementations§
Trait Implementations§
Source§impl From<Ruby> for NoBlockGiven
impl From<Ruby> for NoBlockGiven
Source§impl Ord for Ruby
impl Ord for Ruby
Source§impl PartialOrd for Ruby
impl PartialOrd for Ruby
impl Copy for Ruby
impl Eq for Ruby
impl StructuralPartialEq for Ruby
Auto Trait Implementations§
impl Freeze for Ruby
impl RefUnwindSafe for Ruby
impl Send for Ruby
impl Sync for Ruby
impl Unpin for Ruby
impl UnwindSafe for Ruby
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)