Class: Chicago::Schema::Measure
- Defined in:
- lib/chicago/schema/measure.rb
Instance Attribute Summary
Attributes inherited from Column
#calculation, #column_type, #countable_label, #default, #elements, #max, #min
Attributes included from NamedElement
Instance Method Summary collapse
-
#indexed? ⇒ Boolean
Returns false.
-
#initialize(name, column_type, opts = {}) ⇒ Measure
constructor
Creates a measure.
-
#semi_additive? ⇒ Boolean
Returns true if this measure can be averaged, but not summed.
-
#visit(visitor) ⇒ Object
Measures are visitable.
Methods inherited from Column
#==, #binary?, #calculated?, #countable?, #default_value, #descriptive?, #hash, #internal?, #null?, #numeric?, #optional?, #qualify_by, #textual?, #to_hash, #unique?
Constructor Details
#initialize(name, column_type, opts = {}) ⇒ Measure
Creates a measure.
Additional options:
- semi_additive
-
whether a measure column is semi_additive.
See Chicago::Schema::Column
14 15 16 17 |
# File 'lib/chicago/schema/measure.rb', line 14 def initialize(name, column_type, opts={}) super @semi_additive = !! opts[:semi_additive] end |
Instance Method Details
#indexed? ⇒ Boolean
Returns false. Measures do not need to be indexed.
20 21 22 |
# File 'lib/chicago/schema/measure.rb', line 20 def indexed? false end |
#semi_additive? ⇒ Boolean
Returns true if this measure can be averaged, but not summed.
25 26 27 |
# File 'lib/chicago/schema/measure.rb', line 25 def semi_additive? @semi_additive end |
#visit(visitor) ⇒ Object
Measures are visitable
30 31 32 |
# File 'lib/chicago/schema/measure.rb', line 30 def visit(visitor) visitor.visit_measure(self) end |