Method: Zold::Txn.parse
- Defined in:
- lib/zold/txn.rb
.parse(line, idx = 0) ⇒ Object
134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 |
# File 'lib/zold/txn.rb', line 134 def self.parse(line, idx = 0) clean = line.strip parts = PTN.match(clean) raise "Invalid line ##{idx}: #{line.inspect} #{regex}" unless parts txn = Txn.new( Hexnum.parse(parts[:id]).to_i, Time.parse(parts[:date]), Amount.new(zents: Hexnum.parse(parts[:amount]).to_i), parts[:prefix], Id.new(parts[:bnf]), parts[:details] ) txn.sign = parts[:sign] txn end |