Class: Lite::Containers::Helpers::Comparison::Min

Inherits:
Abstract
  • Object
show all
Defined in:
lib/lite/containers/helpers/comparison.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Abstract

#compare, #for_item, for_item, #for_key, #initialize, #to_key, to_key

Constructor Details

This class inherits a constructor from Lite::Containers::Helpers::Comparison::Abstract

Class Method Details

.compare(a, b) ⇒ Object

Raises:



91
92
93
94
95
96
# File 'lib/lite/containers/helpers/comparison.rb', line 91

def compare(a, b)
  result = b <=> a
  raise Error, "No meaningful comparison between #{a} <=> #{b}" if result.nil?

  result
end

.instance(key_extractor) ⇒ Object



87
88
89
# File 'lib/lite/containers/helpers/comparison.rb', line 87

def instance(key_extractor)
  key_extractor ? new(key_extractor) : self
end

.invertObject



98
99
100
# File 'lib/lite/containers/helpers/comparison.rb', line 98

def invert
  Max
end

Instance Method Details

#invertObject



82
83
84
# File 'lib/lite/containers/helpers/comparison.rb', line 82

def invert
  Comparison.instance :max, key_extractor: @key_extractor
end