Class: Yadriggy::EvalAll
- Inherits:
-
Eval
- Object
- Eval
- Yadriggy::EvalAll
show all
- Defined in:
- lib/yadriggy/eval_all.rb
Overview
Instance Method Summary
collapse
Methods inherited from Eval
#array_ref_field, #astree, #being_end, #command, #const, #const_path_field, #dots, #evaluate, #global_variable, #identifier, #identifier_or_call, #instance_variable, #label, #lambda_expr, #reserved, #variable_call
Instance Method Details
#array(expr) ⇒ Object
30
31
32
|
# File 'lib/yadriggy/eval_all.rb', line 30
def array(expr)
expr.elements.each {|e| evaluate(e) }
end
|
#array_ref(expr) ⇒ Object
78
79
80
81
|
# File 'lib/yadriggy/eval_all.rb', line 78
def array_ref(expr)
evaluate(expr.array)
expr.indexes.each {|e| evaluate(e) }
end
|
#assign(expr) ⇒ Object
54
55
56
57
58
59
60
61
62
63
64
65
|
# File 'lib/yadriggy/eval_all.rb', line 54
def assign(expr)
if expr.right.is_a?(Array)
expr.right.each {|e| evaluate(e) }
else
evaluate(expr.right)
end
if expr.left.is_a?(Array)
expr.left.each {|e| evaluate(e) }
else
evaluate(expr.left)
end
end
|
#begin_end(expr) ⇒ Object
116
117
118
119
|
# File 'lib/yadriggy/eval_all.rb', line 116
def begin_end(expr)
evaluate(expr.body)
evaluate(expr.rescue)
end
|
#binary(expr) ⇒ Object
49
50
51
52
|
# File 'lib/yadriggy/eval_all.rb', line 49
def binary(expr)
evaluate(expr.left)
evaluate(expr.right)
end
|
#block(expr) ⇒ Object
111
112
113
114
|
# File 'lib/yadriggy/eval_all.rb', line 111
def block(expr)
parameters(expr)
evaluate(expr.body)
end
|
#break_out(expr) ⇒ Object
103
104
105
|
# File 'lib/yadriggy/eval_all.rb', line 103
def break_out(expr)
expr.values.each {|e| evaluate(e) }
end
|
#call(expr) ⇒ Object
71
72
73
74
75
76
|
# File 'lib/yadriggy/eval_all.rb', line 71
def call(expr)
evaluate(expr.receiver)
expr.args.each {|e| evaluate(e) }
evaluate(expr.block_arg)
evaluate(expr.block)
end
|
#class_def(expr) ⇒ Object
144
145
146
147
148
149
|
# File 'lib/yadriggy/eval_all.rb', line 144
def class_def(expr)
evaluate(expr.name)
evaluate(expr.superclass)
evaluate(expr.body)
evaluate(expr.rescue)
end
|
#conditional(expr) ⇒ Object
83
84
85
86
87
88
89
90
91
|
# File 'lib/yadriggy/eval_all.rb', line 83
def conditional(expr)
evaluate(expr.cond)
evaluate(expr.then)
expr.all_elsif.each do |e|
evaluate(e[0]) evaluate(e[1]) end
evaluate(expr.else) unless expr.else.nil?
end
|
#const_path_ref(expr) ⇒ Object
40
41
42
43
|
# File 'lib/yadriggy/eval_all.rb', line 40
def const_path_ref(expr)
evaluate(expr.scope)
evaluate(expr.name)
end
|
#define(expr) ⇒ Object
123
124
125
126
127
128
129
|
# File 'lib/yadriggy/eval_all.rb', line 123
def define(expr)
evaluate(expr.singular)
evaluate(expr.name)
parameters(expr)
evaluate(expr.body)
evaluate(expr.rescue)
end
|
#exprs(expr) ⇒ Object
expressions, or progn in Lisp.
22
23
24
|
# File 'lib/yadriggy/eval_all.rb', line 22
def exprs(expr)
expr.expressions.each {|e| evaluate(e) }
end
|
#for_loop(expr) ⇒ Object
98
99
100
101
|
# File 'lib/yadriggy/eval_all.rb', line 98
def for_loop(expr)
evaluate(expr.set)
evaluate(expr.body)
end
|
#hash(expr) ⇒ Object
67
68
69
|
# File 'lib/yadriggy/eval_all.rb', line 67
def hash(expr)
expr.pairs.each {|p| p.each {|e| evaluate(e) }}
end
|
#loop(expr) ⇒ Object
93
94
95
96
|
# File 'lib/yadriggy/eval_all.rb', line 93
def loop(expr)
evaluate(expr.cond)
evaluate(expr.body)
end
|
#module_def(expr) ⇒ Object
138
139
140
141
142
|
# File 'lib/yadriggy/eval_all.rb', line 138
def module_def(expr)
evaluate(expr.name)
evaluate(expr.body)
evaluate(expr.rescue)
end
|
#name(expr) ⇒ Object
12
|
# File 'lib/yadriggy/eval_all.rb', line 12
def name(expr) end
|
#nil_value(expr) ⇒ Object
10
|
# File 'lib/yadriggy/eval_all.rb', line 10
def nil_value(expr) end
|
#number(expr) ⇒ Object
18
|
# File 'lib/yadriggy/eval_all.rb', line 18
def number(expr) end
|
#paren(expr) ⇒ Object
26
27
28
|
# File 'lib/yadriggy/eval_all.rb', line 26
def paren(expr)
evaluate(expr.expression)
end
|
#program(expr) ⇒ Object
157
158
159
|
# File 'lib/yadriggy/eval_all.rb', line 157
def program(expr)
evaluate(expr.elements)
end
|
#rescue_end(expr) ⇒ Object
131
132
133
134
135
136
|
# File 'lib/yadriggy/eval_all.rb', line 131
def rescue_end(expr)
evaluate(expr.body)
evaluate(expr.nested_rescue)
evaluate(expr.else)
evaluate(expr.ensure)
end
|
#return_values(expr) ⇒ Object
107
108
109
|
# File 'lib/yadriggy/eval_all.rb', line 107
def return_values(expr)
expr.values.each {|e| evaluate(e) }
end
|
#singular_class_def(expr) ⇒ Object
151
152
153
154
155
|
# File 'lib/yadriggy/eval_all.rb', line 151
def singular_class_def(expr)
evaluate(expr.name)
evaluate(expr.body)
evaluate(expr.rescue)
end
|
#string_interpolation(expr) ⇒ Object
34
35
36
|
# File 'lib/yadriggy/eval_all.rb', line 34
def string_interpolation(expr)
expr.contents.each {|e| evaluate(e) }
end
|
#string_literal(expr) ⇒ Object
38
|
# File 'lib/yadriggy/eval_all.rb', line 38
def string_literal(expr) end
|
#super_method(expr) ⇒ Object
16
|
# File 'lib/yadriggy/eval_all.rb', line 16
def super_method(expr) end
|
#symbol(expr) ⇒ Object
14
|
# File 'lib/yadriggy/eval_all.rb', line 14
def symbol(expr) end
|
#unary(expr) ⇒ Object
45
46
47
|
# File 'lib/yadriggy/eval_all.rb', line 45
def unary(expr)
evaluate(expr.operand)
end
|