Module: EDNGRAMMAR::RAppStringB646

Defined in:
lib/parser/edngrammar.rb

Instance Method Summary collapse

Instance Method Details

#astObject



11619
11620
11621
11622
11623
11624
11625
11626
11627
11628
11629
11630
11631
# File 'lib/parser/edngrammar.rb', line 11619

def ast
  v = elements[0..2].map {|part| part.text_value}.join
  t = v.gsub(/\s|#[^\n]*(?:\n|\z)/, '').chars.each_slice(4).map(&:join)
  if last = t[-1]
    last << "=" * (4 - last.size)
  end
  b = t.join.tr("-_", "+/")
  begin
    b.unpack("m0")[0]
  rescue ArgumentError
    raise ArgumentError, "cbor-diagnostic: invalid base64 #{b.inspect}", caller[1..-1]
  end
end