hammer/src/bindings/ruby/lib/hammer.rb

23 lines
513 B
Ruby
Raw Normal View History

2013-11-10 15:13:15 +01:00
require 'hammer/internal'
require 'hammer/parser'
require 'hammer/parser_builder'
# TODO:
# Probably need to rename this file to 'hammer-parser.rb', so
# people can use "require 'hammer-parser'" in their code.
2013-12-16 17:56:49 +01:00
# Leave this in for now to be able to play around with HParseResult in irb.
x = nil
parser = Hammer::Parser.build {
token 'abc'
x = indirect
end_p
}
2013-12-16 17:56:49 +01:00
x.bind(Hammer::Parser.token('abd'))
2013-12-16 21:00:59 +01:00
#$p = parser
2013-12-16 17:56:49 +01:00
$r = parser.parse 'abcabd'
2013-12-16 21:00:59 +01:00
p $r[:ast][:data][:seq].elements.map {|e| e[:data][:bytes].token }