Module: Kernel
- Defined in:
- lib/missinglisp.rb
Constant Summary
collapse
- WHITE_LIST =
I[gets to_ary to_io to_str to_hash translate]
Instance Method Summary
collapse
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(m, *args, &block) ⇒ Object
161
162
163
164
165
166
167
|
# File 'lib/missinglisp.rb', line 161
def method_missing(m, *args, &block)
if WHITE_LIST.include? m
base_method_missing(m, args, block)
end
eval_lisp m.to_s
end
|
Instance Method Details
#base_method_missing ⇒ Object
153
|
# File 'lib/missinglisp.rb', line 153
alias_method :base_method_missing, :method_missing
|
#eval_lisp(s) ⇒ Object
155
156
157
158
159
|
# File 'lib/missinglisp.rb', line 155
def eval_lisp(s)
@l ||= Lisp.new
@e ||= @l.initial_env
@l.eval(@l.parse(s), @e)
end
|