Skip to content

abstract struct Value
inherits Object

Value is the base type of the primitive types (Nil, Bool, Char, Number), Symbol, Pointer, Tuple, StaticArray and all structs.

A Value is passed by value: when you pass it to methods, return it from methods or assign it to variables, a copy of the value is actually passed. This is not important for nil, bools, integers, floats, symbols, pointers and tuples, because they are immutable, but with a mutable Struct or with a StaticArray you have to be careful. Read their documentation to learn more about this.

Direct known subclasses

Bool Char Class Enum NamedTuple(**T) Nil Number Pointer(T) Proc(*T, R) StaticArray(T, N) Struct Symbol Tuple(*T) Union(*T)

Methods

#==(other : JSON::Any)

View source

#==(other : YAML::Any)

View source

#==(other)

Returns false.

View source

#dup

Returns a shallow copy of this object.

Because Value is a value type, this method returns self, which already involves a shallow copy of this object because value types are passed by value.

View source