Class: Prism::Scope
- Inherits:
-
Object
- Object
- Prism::Scope
- Defined in:
- lib/prism/parse_result.rb,
ext/prism/extension.c
Overview
This object is passed to the various Prism.* methods that accept the ‘scopes` option as an element of the list. It defines both the local variables visible at that scope as well as the forwarding parameters available at that scope.
Instance Attribute Summary collapse
-
#forwarding ⇒ Object
readonly
The list of local variables that are forwarded to the next scope.
-
#locals ⇒ Object
readonly
The list of local variables that are defined in this scope.
Instance Method Summary collapse
-
#initialize(locals, forwarding) ⇒ Scope
constructor
Create a new scope object with the given locals and forwarding.
Constructor Details
#initialize(locals, forwarding) ⇒ Scope
Create a new scope object with the given locals and forwarding.
898 899 900 901 |
# File 'lib/prism/parse_result.rb', line 898 def initialize(locals, forwarding) @locals = locals @forwarding = forwarding end |
Instance Attribute Details
#forwarding ⇒ Object (readonly)
The list of local variables that are forwarded to the next scope. This should by defined as an array of symbols containing the specific values of :*, :**, :&, or :“…”.
895 896 897 |
# File 'lib/prism/parse_result.rb', line 895 def forwarding @forwarding end |
#locals ⇒ Object (readonly)
The list of local variables that are defined in this scope. This should be defined as an array of symbols.
890 891 892 |
# File 'lib/prism/parse_result.rb', line 890 def locals @locals end |