Class: MDQuery::Dataset::Measure

Inherits:
Object
  • Object
show all
Defined in:
lib/mdquery/dataset.rb

Overview

describes a Measure computed from the source data over the Dimensions

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(model, dataset) ⇒ Measure

Returns a new instance of Measure.



196
197
198
199
200
201
# File 'lib/mdquery/dataset.rb', line 196

def initialize(model, dataset)
  @dataset = dataset
  @key = model.key
  @definition = model.definition
  validate
end

Instance Attribute Details

#datasetObject (readonly)

the dataset this Measure belongs to



188
189
190
# File 'lib/mdquery/dataset.rb', line 188

def dataset
  @dataset
end

#definitionObject (readonly)

the SQL fragment definition of the Measure



194
195
196
# File 'lib/mdquery/dataset.rb', line 194

def definition
  @definition
end

#keyObject (readonly)

the key identifying this Measure



191
192
193
# File 'lib/mdquery/dataset.rb', line 191

def key
  @key
end

Instance Method Details

#inspectObject



209
210
211
# File 'lib/mdquery/dataset.rb', line 209

def inspect
  "#<Measure: key=#{key.inspect}, definition=#{definition.inspect}>"
end

#validateObject



203
204
205
206
207
# File 'lib/mdquery/dataset.rb', line 203

def validate
  raise "no dataset" if !dataset
  raise "no key!" if !key
  raise "no definition!" if !definition || definition=~/^\s*$/
end