class Myst::Scope
- Myst::Scope
- Reference
- Object
Direct Known Subclasses
Defined in:
myst/interpreter/scope.crConstructors
Instance Method Summary
-
#[](key : String) : Value
A non-nilable variant of
#[]?
. - #[]=(key : String, value : Value) : Value
- #[]?(key : String) : Value | Nil
- #assign(key : String, value : Value)
-
#clear(*args, **options)
Remove all values from this scope.
-
#clear(*args, **options, &)
Remove all values from this scope.
-
#each(*args, **options)
Remove all values from this scope.
-
#each(*args, **options, &)
Remove all values from this scope.
- #has_key?(key : String)
- #parent : Scope | Nil
- #parent=(parent : Scope | Nil)
- #values : Hash(String, Value)
- #values=(values : Hash(String, Value))
Constructor Detail
Instance Method Detail
A non-nilable variant of #[]?
. While this method may raise an exception,
it is not considered a "public" exception (it is not meant to be
reachable by userland code). Any instance where the exception propogates
outside of the interpreter should be considered a bug.
The shorthand access notations (#[]?
, #[]
, #[]=
) will all fall back to
the parent scope if the value does not exist in this scope.
The longhand #has_key?
and #assign
only operate on this scope.