Module: Super::Filter::Operator

Defined in:
lib/super/filter/operator.rb

Defined Under Namespace

Classes: Definition

Class Method Summary collapse

Class Method Details

.define(identifier, name, &filter) ⇒ Object



50
51
52
53
54
55
56
57
58
59
60
61
# File 'lib/super/filter/operator.rb', line 50

def define(identifier, name, &filter)
  identifier = identifier.to_s
  name = name.to_s

  definition = Definition.new(identifier, name, filter)

  registry[identifier] = definition

  define_singleton_method(identifier) do
    registry[identifier]
  end
end

.range_defaultsObject



26
27
28
29
30
# File 'lib/super/filter/operator.rb', line 26

def range_defaults
  [
    registry["between"],
  ]
end

.registryObject



22
23
24
# File 'lib/super/filter/operator.rb', line 22

def registry
  @registry ||= {}
end

.select_defaultsObject



32
33
34
35
36
37
# File 'lib/super/filter/operator.rb', line 32

def select_defaults
  [
    registry["eq"],
    registry["neq"],
  ]
end

.text_defaultsObject



39
40
41
42
43
44
45
46
47
48
# File 'lib/super/filter/operator.rb', line 39

def text_defaults
  [
    registry["eq"],
    registry["neq"],
    registry["contain"],
    registry["ncontain"],
    registry["start"],
    registry["end"],
  ]
end