forked from nathansobo/treetop
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' of git://github.com/jeremy/treetop into jeremy
Conflicts: lib/treetop.rb
- Loading branch information
Showing
46 changed files
with
117 additions
and
143 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,19 +1,3 @@ | ||
require 'rubygems' | ||
|
||
module Treetop | ||
VALID_GRAMMAR_EXT = ['treetop', 'tt'] | ||
VALID_GRAMMAR_EXT_REGEXP = /\.(#{VALID_GRAMMAR_EXT.join('|')})\Z/o | ||
end | ||
|
||
dir = File.dirname(__FILE__) | ||
|
||
TREETOP_ROOT = File.join(dir, 'treetop') | ||
require File.join(TREETOP_ROOT, "ruby_extensions") | ||
require File.join(TREETOP_ROOT, "runtime") | ||
require File.join(TREETOP_ROOT, "compiler") | ||
|
||
# To have Polyglot extensions loaded, you need to require 'polyglot' | ||
# before you require 'treetop' | ||
if defined?(Polyglot) | ||
Polyglot.register(Treetop::VALID_GRAMMAR_EXT, Treetop) | ||
end | ||
require 'treetop/runtime' | ||
require 'treetop/compiler' | ||
require 'treetop/polyglot' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,7 @@ | ||
dir = File.dirname(__FILE__) | ||
require File.join(dir, *%w[compiler lexical_address_space]) | ||
require File.join(dir, *%w[compiler ruby_builder]) | ||
require File.join(dir, *%w[compiler node_classes]) | ||
require File.join(dir, *%w[compiler metagrammar]) unless defined?($exclude_metagrammar) | ||
require File.join(dir, *%w[compiler grammar_compiler]) | ||
require 'treetop/ruby_extensions' | ||
|
||
require 'treetop/compiler/lexical_address_space' | ||
require 'treetop/compiler/ruby_builder' | ||
require 'treetop/compiler/node_classes' | ||
require 'treetop/compiler/metagrammar' unless defined?($exclude_metagrammar) | ||
require 'treetop/compiler/grammar_compiler' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,20 +1,19 @@ | ||
dir = File.dirname(__FILE__) | ||
require File.join(dir, *%w[node_classes parsing_expression]) | ||
require File.join(dir, *%w[node_classes atomic_expression]) | ||
require File.join(dir, *%w[node_classes inline_module]) | ||
require File.join(dir, *%w[node_classes predicate_block]) | ||
require File.join(dir, *%w[node_classes treetop_file]) | ||
require File.join(dir, *%w[node_classes grammar]) | ||
require File.join(dir, *%w[node_classes declaration_sequence]) | ||
require File.join(dir, *%w[node_classes parsing_rule]) | ||
require File.join(dir, *%w[node_classes parenthesized_expression]) | ||
require File.join(dir, *%w[node_classes nonterminal]) | ||
require File.join(dir, *%w[node_classes terminal]) | ||
require File.join(dir, *%w[node_classes anything_symbol]) | ||
require File.join(dir, *%w[node_classes character_class]) | ||
require File.join(dir, *%w[node_classes sequence]) | ||
require File.join(dir, *%w[node_classes choice]) | ||
require File.join(dir, *%w[node_classes repetition]) | ||
require File.join(dir, *%w[node_classes optional]) | ||
require File.join(dir, *%w[node_classes predicate]) | ||
require File.join(dir, *%w[node_classes transient_prefix]) | ||
require 'treetop/compiler/node_classes/parsing_expression' | ||
require 'treetop/compiler/node_classes/atomic_expression' | ||
require 'treetop/compiler/node_classes/inline_module' | ||
require 'treetop/compiler/node_classes/predicate_block' | ||
require 'treetop/compiler/node_classes/treetop_file' | ||
require 'treetop/compiler/node_classes/grammar' | ||
require 'treetop/compiler/node_classes/declaration_sequence' | ||
require 'treetop/compiler/node_classes/parsing_rule' | ||
require 'treetop/compiler/node_classes/parenthesized_expression' | ||
require 'treetop/compiler/node_classes/nonterminal' | ||
require 'treetop/compiler/node_classes/terminal' | ||
require 'treetop/compiler/node_classes/anything_symbol' | ||
require 'treetop/compiler/node_classes/character_class' | ||
require 'treetop/compiler/node_classes/sequence' | ||
require 'treetop/compiler/node_classes/choice' | ||
require 'treetop/compiler/node_classes/repetition' | ||
require 'treetop/compiler/node_classes/optional' | ||
require 'treetop/compiler/node_classes/predicate' | ||
require 'treetop/compiler/node_classes/transient_prefix' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
module Treetop | ||
module Polyglot | ||
VALID_GRAMMAR_EXT = ['treetop', 'tt'] | ||
VALID_GRAMMAR_EXT_REGEXP = /\.(#{VALID_GRAMMAR_EXT.join('|')})\Z/o | ||
end | ||
end | ||
|
||
require 'polyglot' | ||
Polyglot.register(Treetop::Polyglot::VALID_GRAMMAR_EXT, Treetop) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1 @@ | ||
dir = File.dirname(__FILE__) | ||
require "#{dir}/ruby_extensions/string" | ||
require 'treetop/ruby_extensions/string' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,6 @@ | ||
dir = File.dirname(__FILE__) | ||
require "#{dir}/runtime/compiled_parser" | ||
require "#{dir}/runtime/syntax_node" | ||
require "#{dir}/runtime/terminal_parse_failure" | ||
require "#{dir}/runtime/interval_skip_list" | ||
require 'treetop/ruby_extensions' | ||
|
||
require 'treetop/runtime/compiled_parser' | ||
require 'treetop/runtime/syntax_node' | ||
require 'treetop/runtime/terminal_parse_failure' | ||
require 'treetop/runtime/interval_skip_list' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,3 @@ | ||
dir = File.dirname(__FILE__) | ||
require "#{dir}/interval_skip_list/interval_skip_list.rb" | ||
require "#{dir}/interval_skip_list/head_node.rb" | ||
require "#{dir}/interval_skip_list/node.rb" | ||
require 'treetop/runtime/interval_skip_list/interval_skip_list' | ||
require 'treetop/runtime/interval_skip_list/head_node' | ||
require 'treetop/runtime/interval_skip_list/node' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,14 +1,13 @@ | ||
#!/usr/bin/env ruby | ||
|
||
require 'rubygems' | ||
dir = File.dirname(__FILE__) | ||
require File.join(dir, '..', 'lib', 'treetop', 'bootstrap_gen_1_metagrammar') | ||
require File.expand_path('../../lib/treetop/bootstrap_gen_1_metagrammar', __FILE__) | ||
|
||
GENERATED_METAGRAMMAR_PATH = File.join(TREETOP_ROOT, 'compiler', 'metagrammar.rb') | ||
GENERATED_METAGRAMMAR_PATH = File.expand_path('../../lib/treetop/compiler/metagrammar.rb') | ||
|
||
File.open(METAGRAMMAR_PATH) do |source_file| | ||
File.open(GENERATED_METAGRAMMAR_PATH, 'w') do |target_file| | ||
generated_source = Treetop::Compiler::MetagrammarParser.new.parse(source_file.read).compile | ||
target_file.write(generated_source) | ||
end | ||
end | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.