Module: Predicated::Shorthand

Included in:
SimpleTemplatedShorthand
Defined in:
lib/predicated/lib/predicated/predicate.rb,
lib/predicated/lib/predicated/autogen_call.rb

Instance Method Summary collapse

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(uppercase_cameled_method_sym, *args) ⇒ Object



22
23
24
25
26
27
# File 'lib/predicated/lib/predicated/autogen_call.rb', line 22

def method_missing(uppercase_cameled_method_sym, *args)
  subject = args.shift
  method_sym = StringUtils.underscore(uppercase_cameled_method_sym.to_s).to_sym
  object = args
  AutogenCall.new(subject, method_sym, (object.empty? ? [] : object))
end

Instance Method Details

#And(left, right) ⇒ Object



94
# File 'lib/predicated/lib/predicated/predicate.rb', line 94

def And(left, right) ::Predicated::And.new(left, right) end

#Eq(left, right) ⇒ Object



98
# File 'lib/predicated/lib/predicated/predicate.rb', line 98

def Eq(left, right) ::Predicated::Equal.new(left, right) end

#Gt(left, right) ⇒ Object



100
# File 'lib/predicated/lib/predicated/predicate.rb', line 100

def Gt(left, right) ::Predicated::GreaterThan.new(left, right) end

#Gte(left, right) ⇒ Object



102
# File 'lib/predicated/lib/predicated/predicate.rb', line 102

def Gte(left, right) ::Predicated::GreaterThanOrEqualTo.new(left, right) end

#Lt(left, right) ⇒ Object



99
# File 'lib/predicated/lib/predicated/predicate.rb', line 99

def Lt(left, right) ::Predicated::LessThan.new(left, right) end

#Lte(left, right) ⇒ Object



101
# File 'lib/predicated/lib/predicated/predicate.rb', line 101

def Lte(left, right) ::Predicated::LessThanOrEqualTo.new(left, right) end

#Not(inner) ⇒ Object



96
# File 'lib/predicated/lib/predicated/predicate.rb', line 96

def Not(inner) ::Predicated::Not.new(inner) end

#Or(left, right) ⇒ Object



95
# File 'lib/predicated/lib/predicated/predicate.rb', line 95

def Or(left, right) ::Predicated::Or.new(left, right) end