172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
|
# File 'lib/kefka.rb', line 172
def self.get_locals(target, line_source)
scope_locals = target.eval("local_variables")
scope_locals.map! { |local| local.to_s }
tokens = Ripper.lex(line_source)
lvar, ivar, cvar = [], [], []
tokens.each { |token|
type = token[1]
case type
when :on_ident; lvar << token[2] if scope_locals.include? token[2]
when :on_ivar; ivar << token[2]
when :on_cvar; cvar << token[2]
else end
}
[lvar,ivar,cvar].flatten
end
|