Class: Cpr::RespDocument
- Inherits:
-
Object
- Object
- Cpr::RespDocument
- Defined in:
- lib/cpr/resp_document.rb
Instance Attribute Summary collapse
-
#rows ⇒ Object
Returns the value of attribute rows.
Class Method Summary collapse
Instance Method Summary collapse
- #groups ⇒ Object
-
#initialize(rows = []) ⇒ RespDocument
constructor
A new instance of RespDocument.
Constructor Details
#initialize(rows = []) ⇒ RespDocument
Returns a new instance of RespDocument.
5 6 7 |
# File 'lib/cpr/resp_document.rb', line 5 def initialize(rows = []) @rows = rows end |
Instance Attribute Details
#rows ⇒ Object
Returns the value of attribute rows.
4 5 6 |
# File 'lib/cpr/resp_document.rb', line 4 def rows @rows end |
Class Method Details
.from_file(filename) ⇒ Object
19 20 21 22 |
# File 'lib/cpr/resp_document.rb', line 19 def self.from_file(filename) file = File.open(filename, "r:iso-8859-1") from_lines(file.readlines.map(&:strip)) end |
.from_lines(lines) ⇒ Object
9 10 11 12 13 14 15 16 17 |
# File 'lib/cpr/resp_document.rb', line 9 def self.from_lines(lines) rows = [] lines.each do |line| row = Row.parse(line) raise "Parse error while processing row:\n\t'#{line}'\n\tlen:#{line.length}" if row.nil? rows << row end RespDocument.new(rows) end |
Instance Method Details
#groups ⇒ Object
24 25 26 27 28 29 30 |
# File 'lib/cpr/resp_document.rb', line 24 def groups if @groups.nil? @groups = rows.group_by {|row| row.class.to_s.split("::").last } @groups.default = [] end @groups end |