Class: AjLisp::FPrimitiveDefinem
- Inherits:
-
FPrimitive
- Object
- FPrimitive
- AjLisp::FPrimitiveDefinem
- Defined in:
- lib/ajlisp/fprimitive_definem.rb
Constant Summary collapse
- @@instance =
nil
Class Method Summary collapse
Instance Method Summary collapse
Methods inherited from FPrimitive
Class Method Details
.instance ⇒ Object
9 10 11 12 |
# File 'lib/ajlisp/fprimitive_definem.rb', line 9 def self.instance @@instance = new unless @@instance return @@instance end |
Instance Method Details
#apply(context, args) ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/ajlisp/fprimitive_definem.rb', line 14 def apply(context, args) atom = args[0] if args.length > 2 args.shift arguments = args.shift value = AjLisp::FPrimitiveMacroClosure.new arguments, args else value = AjLisp::evaluate(context, args[1]) end AjLisp::context.setValue atom.name, value return value end |