[][src]Enum artichoke::prelude::Ruby

pub enum Ruby {
    Array,
    Bool,
    Class,
    CPointer,
    Data,
    Exception,
    Fiber,
    Fixnum,
    Float,
    Hash,
    InlineStruct,
    Module,
    Nil,
    Object,
    Proc,
    Range,
    SingletonClass,
    String,
    Symbol,
    Unreachable,
    RecursiveSelfOwnership,
}

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]. Fixnums 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. Procs 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, Strings 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

impl Ruby[src]

#[must_use]pub const fn class_name(self) -> &'static str[src]

Ruby Class name for VM type.

Trait Implementations

impl Clone for Ruby[src]

impl Copy for Ruby[src]

impl Debug for Ruby[src]

impl Display for Ruby[src]

impl Eq for Ruby[src]

impl Hash for Ruby[src]

impl Ord for Ruby[src]

impl PartialEq<Ruby> for Ruby[src]

impl PartialOrd<Ruby> for Ruby[src]

impl StructuralEq for Ruby[src]

impl StructuralPartialEq for Ruby[src]

Auto Trait Implementations

impl RefUnwindSafe for Ruby

impl Send for Ruby

impl Sync for Ruby

impl Unpin for Ruby

impl UnwindSafe for Ruby

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 
[src]