Class: Lisp::PrimRelational
Class Method Summary collapse
- .gt_impl(args, env) ⇒ Object
- .gteq_impl(args, env) ⇒ Object
- .lt_impl(args, env) ⇒ Object
- .lteq_impl(args, env) ⇒ Object
- .register ⇒ Object
Class Method Details
.gt_impl(args, env) ⇒ Object
28 29 30 |
# File 'lib/rubylisp/prim_relational.rb', line 28 def self.gt_impl(args, env) return Lisp::Boolean.with_value(args.car.value > args.cadr.value) end |
.gteq_impl(args, env) ⇒ Object
36 37 38 |
# File 'lib/rubylisp/prim_relational.rb', line 36 def self.gteq_impl(args, env) return Lisp::Boolean.with_value(args.car.value >= args.cadr.value) end |
.lt_impl(args, env) ⇒ Object
24 25 26 |
# File 'lib/rubylisp/prim_relational.rb', line 24 def self.lt_impl(args, env) return Lisp::Boolean.with_value(args.car.value < args.cadr.value) end |
.lteq_impl(args, env) ⇒ Object
32 33 34 |
# File 'lib/rubylisp/prim_relational.rb', line 32 def self.lteq_impl(args, env) return Lisp::Boolean.with_value(args.car.value <= args.cadr.value) end |
.register ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/rubylisp/prim_relational.rb', line 5 def self.register Primitive.register("<", "2", "(< number number)\n\nReturns whether the first argument is less than the second argument.") do |args, env| Lisp::PrimRelational::lt_impl(args, env) end Primitive.register(">", "2", "(> number number)\n\nReturns whether the first argument is greater than the second argument.") do |args, env| Lisp::PrimRelational::gt_impl(args, env) end Primitive.register("<=", "2", "(<= number number)\n\nReturns whether the first argument is less than or equal to the second argument.") do |args, env| Lisp::PrimRelational::lteq_impl(args, env) end Primitive.register(">=", "2", "(>= number number)\n\nReturns whether the first argument is greater than or equal to the second argument.") do |args, env| Lisp::PrimRelational::gteq_impl(args, env) end end |