Class: MetaReports::Table
- Inherits:
-
Object
- Object
- MetaReports::Table
show all
- Defined in:
- app/models/meta_reports/table.rb
Instance Method Summary
collapse
Constructor Details
#initialize {|_self| ... } ⇒ Table
Returns a new instance of Table.
2
3
4
5
6
|
# File 'app/models/meta_reports/table.rb', line 2
def initialize
@data = []
@options = {row_classes: {}}
yield self if block_given?
end
|
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(method, *args, &block) ⇒ Object
8
9
10
11
12
13
14
15
16
17
|
# File 'app/models/meta_reports/table.rb', line 8
def method_missing(method, *args, &block)
method_string = method.to_s
if method_string =~ /^(.+)=$/
@options[$1.to_sym] = args.first
elsif @options[method.to_sym]
@options[method.to_sym]
else
super
end
end
|
Instance Method Details
#+(arr) ⇒ Object
43
44
45
|
# File 'app/models/meta_reports/table.rb', line 43
def +(arr)
@data += arr
end
|
#<<(val) ⇒ Object
39
40
41
|
# File 'app/models/meta_reports/table.rb', line 39
def <<(val)
@data << val
end
|
#[](key) ⇒ Object
21
22
23
|
# File 'app/models/meta_reports/table.rb', line 21
def [](key)
@options[key]
end
|
#[]=(key, val) ⇒ Object
25
26
27
|
# File 'app/models/meta_reports/table.rb', line 25
def []=(key,val)
@options[key] = val
end
|
#first ⇒ Object
47
48
49
|
# File 'app/models/meta_reports/table.rb', line 47
def first
@data.first
end
|
#last ⇒ Object
51
52
53
|
# File 'app/models/meta_reports/table.rb', line 51
def last
@data.last
end
|
#length ⇒ Object
55
56
57
|
# File 'app/models/meta_reports/table.rb', line 55
def length
@data.length
end
|
#options ⇒ Object
29
30
31
|
# File 'app/models/meta_reports/table.rb', line 29
def options
@options
end
|
#pop ⇒ Object
59
60
61
|
# File 'app/models/meta_reports/table.rb', line 59
def pop
@data.pop
end
|
#push(val) ⇒ Object
63
64
65
|
# File 'app/models/meta_reports/table.rb', line 63
def push(val)
@data.push(val)
end
|
#row_classes ⇒ Object
33
34
35
|
# File 'app/models/meta_reports/table.rb', line 33
def row_classes
@options[:row_classes]
end
|
#shift ⇒ Object
67
68
69
|
# File 'app/models/meta_reports/table.rb', line 67
def shift
@data.shift
end
|
#to_a ⇒ Object
Also known as:
data
71
72
73
|
# File 'app/models/meta_reports/table.rb', line 71
def to_a
@data
end
|
#unshift(val) ⇒ Object
75
76
77
|
# File 'app/models/meta_reports/table.rb', line 75
def unshift(val)
@data.unshift(val)
end
|