Sha256: 36e701b2f23c5a4466a0ae61d22f245d13c18e2cbf3bb0cfdf50eb443554302c
Contents?: true
Size: 1.21 KB
Versions: 2
Compression:
Stored size: 1.21 KB
Contents
# encoding: utf-8 module Antelope module Generator # Generates an output file, mainly for debugging. Included always # as a generator for a grammar. class HTML < Base register_as "html" has_directive "html.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 "html/html", "#{file}.html" template "html/css", "#{file}.css" template "html/js", "#{file}.js" end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
antelope-0.4.1 | lib/antelope/generator/html.rb |
antelope-0.4.0 | lib/antelope/generator/html.rb |