#!/usr/bin/ruby

root_dir = File.expand_path("..", __dir__)
$LOAD_PATH << File.join(root_dir, "bin")

require 'optparse'

cmd_name = File.basename($PROGRAM_NAME)
out = nil

OptionParser.new do |opts|
  opts.banner = "Usage: #{cmd_name} [options]"

  opts.on('-o', '--output-file ARG', 'Class definition file') do |value|
    out = value
  end

  begin
    opts.parse!(ARGV)
  rescue OptionParser::ParseError => e
    $stderr.puts cmd_name + ": " + e.message
    $stderr.puts
    $stderr.puts opts.to_s
    exit 1
  end
end

require 'ruby_class_converter'

converter = RubyClassConverter.new
converter.load_config(ARGV[0])
converter.create_types(out)
