lib/antelope/generator/output.rb in antelope-0.2.0 vs lib/antelope/generator/output.rb in antelope-0.2.2
- old
+ new
@@ -1,49 +1,17 @@
-# encoding: utf-8
-
-module Antelope
- module Generator
-
- # Generates an output file, mainly for debugging. Included always
- # as a generator for a grammar.
- class Output < Base
-
- register_as "output"
-
- has_directive "output.show-lookahead", Boolean
-
- # Defines singleton method for every mod that the grammar passed
- # to the generator.
- #
- # @see Generator#initialize
- def initialize(*)
- super
- mods.each do |k, v|
- define_singleton_method (k) { v }
- end
- end
-
- def unused_symbols
- @_unused_symbols ||= begin
- used = grammar.all_productions.map(&:items).flatten.uniq
- all = grammar.symbols.map do |s|
- if Symbol === s
- grammar.find_token(s)
- else
- s
- end
- end
-
- all - used - [grammar.find_token(:"$start")]
- end
- end
-
- # Actually performs the generation. Uses the template in
- # output.erb, and generates the file `<file>.output`.
- #
- # @return [void]
- def generate
- template "output", "#{file}.output"
- end
- end
- end
-end
+# encoding: utf-8
+
+module Antelope
+ module Generator
+
+ # Generates an output file, mainly for debugging. Included always
+ # as a generator for a grammar.
+ class Output < Group
+
+ register_as "output"
+
+ register_generator Info, "info"
+ register_generator Error, "error"
+
+ end
+ end
+end