Class: Optimus::Transformers::BasicTransformer

Inherits:
Object
  • Object
show all
Defined in:
lib/transformers/basic_transformer.rb

Direct Known Subclasses

TimingExtractor

Instance Method Summary collapse

Constructor Details

#initialize(data) ⇒ BasicTransformer

Returns a new instance of BasicTransformer.



23
24
25
26
27
28
29
30
# File 'lib/transformers/basic_transformer.rb', line 23

def initialize(data)
  @computed_columns = []
  @copydown_columns = []
  @counter_columns = []
  @row_filter = lambda {|r| true}
  @passes = []
  self.data = data
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(m, *args, &block) ⇒ Object

Delegate to our processed object for… anything we can’t already do.



33
34
35
# File 'lib/transformers/basic_transformer.rb', line 33

def method_missing(m, *args, &block)
  processed.send(m, *args, &block)
end

Instance Method Details

#add_pass(*args) {|p| ... } ⇒ Object

Yields:

  • (p)


64
65
66
67
68
69
70
# File 'lib/transformers/basic_transformer.rb', line 64

def add_pass(*args)
  reset_all!
  p = Multipasser::Pass.new(*args)
  yield p if block_given?
  @passes << p
  return p
end

#computed_column(*args) ⇒ Object



42
43
44
45
# File 'lib/transformers/basic_transformer.rb', line 42

def computed_column(*args)
  reset_all!
  @computed_columns << args
end

#copydown_column(*args) ⇒ Object



47
48
49
50
# File 'lib/transformers/basic_transformer.rb', line 47

def copydown_column(*args)
  reset_all!
  @copydown_columns << args
end

#counter_column(*args) ⇒ Object



52
53
54
55
# File 'lib/transformers/basic_transformer.rb', line 52

def counter_column(*args)
  reset_all!
  @counter_columns << args
end

#data=(data) ⇒ Object



37
38
39
40
# File 'lib/transformers/basic_transformer.rb', line 37

def data=(data)
  reset_all!
  @data = Optimus::Data.new.merge(data)
end

#row_filter=(filter) ⇒ Object Also known as: row_filter



57
58
59
60
# File 'lib/transformers/basic_transformer.rb', line 57

def row_filter=(filter)
  reset_filtered!
  @row_filter = filter
end