class Xdrgen::Compilation
Public Class Methods
new(source_paths, output_dir:".", language: :ruby, namespace: nil)
click to toggle source
# File lib/xdrgen/compilation.rb, line 5 def initialize(source_paths, output_dir:".", language: :ruby, namespace: nil) @source_paths = source_paths @output_dir = output_dir @namespace = namespace @language = language end
Public Instance Methods
ast()
click to toggle source
# File lib/xdrgen/compilation.rb, line 16 def ast parser = Parser.new parser.parse(source) end
compile()
click to toggle source
# File lib/xdrgen/compilation.rb, line 21 def compile output = Output.new(@source_paths, @output_dir) generator = Generators.for_language(@language).new(ast, output, @namespace) generator.generate ensure output.close end
source()
click to toggle source
# File lib/xdrgen/compilation.rb, line 12 def source @source_paths.map{|p| IO.read(p)}.join("\n") end