Class: Inquisitive::String

Inherits:
String
  • Object
show all
Includes:
Utils
Defined in:
lib/inquisitive/string.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(method_name, *arguments) ⇒ Object (private)



21
22
23
24
25
26
27
# File 'lib/inquisitive/string.rb', line 21

def method_missing(method_name, *arguments)
  if predicate_method? method_name
    (self == predication(method_name)) ^ negated
  else
    super
  end
end

Instance Attribute Details

#negatedObject

Returns the value of attribute negated.



7
8
9
# File 'lib/inquisitive/string.rb', line 7

def negated
  @negated
end

Instance Method Details

#===(other) ⇒ Object



12
13
14
# File 'lib/inquisitive/string.rb', line 12

def === other
  other.class == Class and other == ::String or super
end

#notObject



8
9
10
# File 'lib/inquisitive/string.rb', line 8

def not
  self.dup.tap{ |s| s.negated = !s.negated }
end