class Myst::TFunctor
- Myst::TFunctor
- Myst::MutableValue
- Reference
- Object
Overview
A Functor is a container for multiple functor definitions, which can either be language-level or native.
Defined in:
myst/interpreter/value.crConstructors
Instance Method Summary
-
#==(other : self)
Returns
true
if this reference is the same as other. - #add_clause(definition : Callable)
- #clauses : Array(Callable)
- #clauses=(clauses : Array(Callable))
- #closed_self : MTValue | Nil
- #closed_self=(closed_self : MTValue | Nil)
- #closed_self? : MTValue | Nil | Nil
- #closure=(closure : Bool)
- #closure? : Bool
-
#hash(hasher)
See
Object#hash(hasher)
-
#inspect(io : IO)
Appends a String representation of this object which includes its class name, its object address and the values of all instance variables.
- #lexical_scope : Scope
- #lexical_scope=(lexical_scope : Scope)
- #name : String
- #name=(name : String)
- #new_scope
- #type_name
Instance methods inherited from class Myst::MutableValue
ivars : Scope
ivars,
ivars=(ivars : Scope)
ivars=,
truthy?
truthy?,
type_name
type_name
Constructor Detail
def self.new(name : String, clauses : Array(Myst::TFunctorDef | Bool | Float64 | Int64 | Myst::MutableValue | String, Array(Bool | Float64 | Int64 | Myst::MutableValue | String), Nil | Myst::TFunctor -> Bool | Float64 | Int64 | Myst::MutableValue | String) = [] of Callable, lexical_scope : Scope = Scope.new, closure : Bool = false, closed_self : MTValue | Nil = nil)
#
Instance Method Detail
def ==(other : self)
#
Description copied from class Reference
Returns true
if this reference is the same as other. Invokes same?
.
def inspect(io : IO)
#
Description copied from class Reference
Appends a String representation of this object which includes its class name, its object address and the values of all instance variables.
class Person
def initialize(@name : String, @age : Int32)
end
end
Person.new("John", 32).inspect # => #<Person:0x10fd31f20 @name="John", @age=32>