lib/scope.rb in expressive-0.0.23 vs lib/scope.rb in expressive-0.0.24
- old
+ new
@@ -124,11 +124,13 @@
define('<') {|a,b| a.to_f < b.to_f }
define('>=') {|a,b| a.to_f >= b.to_f }
define('<=') {|a,b| a.to_f <= b.to_f }
define('and') {|a,b| !!a && !!b }
define('or') {|a,b| !!a || !!b }
- define('sum') { |*args| args.flatten.map(&:to_f).reduce(:+) || 0 }
- define('if') { |*args| args.compact!; args[0] ? args[1] : args[2] }
+ define('sum') {|*args| args.flatten.map(&:to_f).reduce(:+) || 0 }
+ define('$sum') {|*args| args.flatten.map(&:to_f).reduce(:+) || 0 }
+ define('sub') {|*args| result = args.flatten.map(&:to_f).reduce(:-) || 0 }
+ define('if') {|*args| args.compact!; args[0] ? args[1] : args[2] }
define('$days_ago'){|*args| Time.now - args[0].to_i * 86400 }
define('$hours_ago'){|*args| Time.now - args[0].to_i * 3600 }
define('$minutes_ago'){|*args| Time.now - args[0].to_i * 60 }
define('$head'){|*args| args.flatten.first }
define('$tail'){|*args| args.flatten[1..-1] }