2017-09-04 09:19:29 +00:00
|
|
|
#!/usr/bin/env ruby
|
|
|
|
|
|
|
|
$:.insert(0, 'lib')
|
|
|
|
|
|
|
|
require 'thor'
|
2017-09-07 15:05:06 +00:00
|
|
|
require 'rly'
|
|
|
|
require 'pry'
|
2017-09-04 09:19:29 +00:00
|
|
|
require 'parser.rb'
|
|
|
|
require 'lexer.rb'
|
|
|
|
|
|
|
|
module Mm2ep
|
|
|
|
module Depend
|
|
|
|
|
|
|
|
class ParseCli < Thor
|
|
|
|
desc 'parse INFILE', 'Parse INFILE into tokens'
|
|
|
|
def parse(infile)
|
2017-09-07 15:05:06 +00:00
|
|
|
|
2017-09-04 09:19:29 +00:00
|
|
|
File.open(infile).each_line do |line|
|
2017-09-07 15:05:06 +00:00
|
|
|
parser = Parser.new(Lexer.new)
|
|
|
|
token = parser.parse(line.chomp)
|
|
|
|
puts token
|
2017-09-04 09:19:29 +00:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
Mm2ep::Depend::ParseCli.start(ARGV)
|