Class: Dentaku::AST::Access
- Inherits:
-
Node
- Object
- Node
- Dentaku::AST::Access
show all
- Defined in:
- lib/dentaku/ast/access.rb
Instance Attribute Summary collapse
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from Node
#name, precedence, resolve_class
Constructor Details
#initialize(data_structure, index) ⇒ Access
Returns a new instance of Access.
20
21
22
23
|
# File 'lib/dentaku/ast/access.rb', line 20
def initialize(data_structure, index)
@structure = data_structure
@index = index
end
|
Instance Attribute Details
#index ⇒ Object
Returns the value of attribute index.
6
7
8
|
# File 'lib/dentaku/ast/access.rb', line 6
def index
@index
end
|
#structure ⇒ Object
Returns the value of attribute structure.
6
7
8
|
# File 'lib/dentaku/ast/access.rb', line 6
def structure
@structure
end
|
Class Method Details
.arity ⇒ Object
8
9
10
|
# File 'lib/dentaku/ast/access.rb', line 8
def self.arity
2
end
|
.max_param_count ⇒ Object
16
17
18
|
# File 'lib/dentaku/ast/access.rb', line 16
def self.max_param_count
arity
end
|
.min_param_count ⇒ Object
12
13
14
|
# File 'lib/dentaku/ast/access.rb', line 12
def self.min_param_count
arity
end
|
Instance Method Details
#accept(visitor) ⇒ Object
39
40
41
|
# File 'lib/dentaku/ast/access.rb', line 39
def accept(visitor)
visitor.visit_access(self)
end
|
#dependencies(context = {}) ⇒ Object
31
32
33
|
# File 'lib/dentaku/ast/access.rb', line 31
def dependencies(context = {})
@structure.dependencies(context) + @index.dependencies(context)
end
|
#type ⇒ Object
35
36
37
|
# File 'lib/dentaku/ast/access.rb', line 35
def type
nil
end
|
#value(context = {}) ⇒ Object
25
26
27
28
29
|
# File 'lib/dentaku/ast/access.rb', line 25
def value(context = {})
structure = @structure.value(context)
index = @index.value(context)
structure[index]
end
|