Sha256: 11e45838686ccaa95140ebaa1dc614f8c88eb79c10fa5f4012d4a6572effe614

Contents?: true

Size: 1.57 KB

Versions: 2

Compression:

Stored size: 1.57 KB

Contents

#!/usr/bin/env ruby
require 'optparse'
require 'rubygems'

$LOAD_PATH.unshift(File.expand_path(File.dirname(__FILE__) + "/../lib"))
require 'depengine'
require 'depengine/version'

options = {}
parser = OptionParser.new do |opts|
  exts = Treetop::Polyglot::VALID_GRAMMAR_EXT.collect { |i| '.' + i }

  opts.banner = "Treetop Parsing Expression Grammar (PEG) Comand Line Compiler"
  opts.define_head "Usage: tt [options] grammar_file[#{exts.join('|')}] ..."
  opts.separator ''
  opts.separator 'Examples:'
  opts.separator '  tt foo.tt               # 1 grammar -> 1 parser source'
  opts.separator '  tt foo bar.treetop      # 2 grammars -> 2 separate parsers'
  opts.separator '  tt -o alt_name.rb foo   # alternately named output file'
  opts.separator ''
  opts.separator ''
  opts.separator 'NOTE: while treetop grammar files *must* have one of the following'
  opts.separator 'filename extensions, the extension name is not required when calling'
  opts.separator 'the compiler with grammar file names.'
  opts.separator ''
  opts.separator "  Valid extensions: #{exts.join(', ')}"
  opts.separator ''
  opts.separator ''
  opts.separator 'Options:'

  opts.on('-o', '--output FILENAME', 'Write parser source to FILENAME') do |fn|
    options[:out_file] = fn
  end

  opts.on('-f', '--force', 'Overwrite existing output file(s)') do
    options[:force] = true
  end

  opts.on_tail('-v', '--version', 'Show Treetop version') do
    puts "Treetop v#{Treetop::VERSION::STRING}"
    exit
  end

  opts.on_tail('-h', '--help', 'Show this help message') do
    puts opts
    exit
  end

end

puts "Hello de"

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
depengine-0.0.5 bin/de
depengine-0.0.4 bin/de