class MongoQL::Expression
Constants
- FORMATING_OPS
Public Instance Methods
as_date()
click to toggle source
# File lib/mongo_ql/expression.rb, line 51 def as_date Expression::DateNode.new(self) end
if_null(default_val)
click to toggle source
# File lib/mongo_ql/expression.rb, line 44 def if_null(default_val) Expression::MethodCall.new "$ifNull", self, ast_template: -> (target, **_args) { [target, to_expression(default_val)] } end
Also aliased as: default
then(then_expr = nil, &block)
click to toggle source
# File lib/mongo_ql/expression.rb, line 55 def then(then_expr = nil, &block) Expression::Condition.new(self, then_expr, nil, &block) end
to_ast()
click to toggle source
# File lib/mongo_ql/expression.rb, line 59 def to_ast raise NotImplementedError, "#{self.class.name} must implement to_ast" end
type()
click to toggle source
# File lib/mongo_ql/expression.rb, line 40 def type Expression::MethodCall.new "$type", self end
Protected Instance Methods
to_expression(val)
click to toggle source
# File lib/mongo_ql/expression.rb, line 64 def to_expression(val) if val.is_a?(Expression) val else Expression::ValueNode.new(val) end end