antlr3 1.7.5 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (41) hide show
  1. data/java/RubyTarget.java +50 -16
  2. data/java/antlr-full-3.2.1.jar +0 -0
  3. data/lib/antlr3/streams.rb +82 -41
  4. data/lib/antlr3/template/group-file-lexer.rb +59 -59
  5. data/lib/antlr3/template/group-file-parser.rb +6 -6
  6. data/lib/antlr3/test/functional.rb +64 -36
  7. data/lib/antlr3/version.rb +2 -2
  8. data/templates/Ruby.stg +1 -1
  9. data/test/functional/ast-output/auto-ast.rb +86 -86
  10. data/test/functional/ast-output/construction.rb +14 -15
  11. data/test/functional/ast-output/hetero-nodes.rb +63 -66
  12. data/test/functional/ast-output/rewrites.rb +119 -120
  13. data/test/functional/ast-output/tree-rewrite.rb +96 -96
  14. data/test/functional/debugging/debug-mode.rb +379 -379
  15. data/test/functional/debugging/profile-mode.rb +6 -6
  16. data/test/functional/debugging/rule-tracing.rb +4 -5
  17. data/test/functional/delegation/import.rb +32 -32
  18. data/test/functional/lexer/basic.rb +27 -27
  19. data/test/functional/lexer/filter-mode.rb +6 -7
  20. data/test/functional/lexer/nuances.rb +2 -3
  21. data/test/functional/lexer/properties.rb +7 -8
  22. data/test/functional/lexer/syn-pred.rb +1 -2
  23. data/test/functional/lexer/xml.rb +3 -3
  24. data/test/functional/main/main-scripts.rb +37 -37
  25. data/test/functional/parser/actions.rb +8 -8
  26. data/test/functional/parser/backtracking.rb +1 -2
  27. data/test/functional/parser/basic.rb +10 -10
  28. data/test/functional/parser/calc.rb +9 -9
  29. data/test/functional/parser/ll-star.rb +3 -3
  30. data/test/functional/parser/nuances.rb +4 -5
  31. data/test/functional/parser/predicates.rb +3 -4
  32. data/test/functional/parser/properties.rb +14 -14
  33. data/test/functional/parser/rule-methods.rb +8 -7
  34. data/test/functional/parser/scopes.rb +15 -16
  35. data/test/functional/template-output/template-output.rb +1 -1
  36. data/test/functional/token-rewrite/basic.rb +60 -61
  37. data/test/functional/token-rewrite/via-parser.rb +3 -4
  38. data/test/functional/tree-parser/basic.rb +30 -31
  39. data/test/unit/test-streams.rb +10 -10
  40. data/test/unit/test-template.rb +1 -1
  41. metadata +2 -2
@@ -5,7 +5,7 @@ require 'antlr3/test/functional'
5
5
 
6
6
  class TestFilterMode < ANTLR3::Test::Functional
7
7
 
8
- inline_grammar(<<-'END')
8
+ inline_grammar( <<-'END' )
9
9
  lexer grammar Filter;
10
10
  options {
11
11
  language = Ruby;
@@ -71,7 +71,7 @@ class TestFilterMode < ANTLR3::Test::Functional
71
71
  END
72
72
 
73
73
  example "skipping tokens that aren't important with filter mode" do
74
- input = <<-END.fixed_indent(0)
74
+ input = <<-END.fixed_indent( 0 )
75
75
  import org.antlr.runtime.*;
76
76
 
77
77
  public class Main {
@@ -97,7 +97,7 @@ end
97
97
 
98
98
  class TestFuzzy < ANTLR3::Test::Functional
99
99
 
100
- inline_grammar(<<-'END')
100
+ inline_grammar( <<-'END' )
101
101
  lexer grammar Fuzzy;
102
102
  options {
103
103
  language = Ruby;
@@ -205,7 +205,7 @@ class TestFuzzy < ANTLR3::Test::Functional
205
205
  END
206
206
 
207
207
  example "fuzzy lexing with the filter mode option" do
208
- input = <<-END.fixed_indent(0)
208
+ input = <<-END.fixed_indent( 0 )
209
209
  import org.antlr.runtime.*;
210
210
 
211
211
  public class Main {
@@ -221,7 +221,7 @@ class TestFuzzy < ANTLR3::Test::Functional
221
221
  }
222
222
  END
223
223
 
224
- expected_output = <<-END.fixed_indent(0)
224
+ expected_output = <<-END.fixed_indent( 0 )
225
225
  found class Main
226
226
  found method main
227
227
  found var i
@@ -235,11 +235,10 @@ class TestFuzzy < ANTLR3::Test::Functional
235
235
  found // comment //System.out.println(tokens);
236
236
  END
237
237
 
238
- lexer = Fuzzy::Lexer.new(input)
238
+ lexer = Fuzzy::Lexer.new( input )
239
239
  lexer.each { |tk| tk }
240
240
  lexer.output.should == expected_output
241
241
  end
242
242
 
243
243
 
244
244
  end
245
-
@@ -4,7 +4,7 @@
4
4
  require 'antlr3/test/functional'
5
5
 
6
6
  class TestBug80 < ANTLR3::Test::Functional
7
- inline_grammar(<<-'END')
7
+ inline_grammar( <<-'END' )
8
8
  lexer grammar Bug80;
9
9
  options { language = Ruby; }
10
10
 
@@ -28,7 +28,7 @@ end
28
28
 
29
29
  class TestEOF < ANTLR3::Test::Functional
30
30
 
31
- inline_grammar(<<-'END')
31
+ inline_grammar( <<-'END' )
32
32
  lexer grammar EndOfFile;
33
33
 
34
34
  options {
@@ -44,4 +44,3 @@ class TestEOF < ANTLR3::Test::Functional
44
44
  tks = lexer.map { |tk| tk }
45
45
  end
46
46
  end
47
-
@@ -5,7 +5,7 @@ require 'antlr3/test/functional'
5
5
 
6
6
  class TestLexerRuleReference < ANTLR3::Test::Functional
7
7
 
8
- inline_grammar(<<-'END')
8
+ inline_grammar( <<-'END' )
9
9
  lexer grammar RuleProperty;
10
10
  options {
11
11
  language = Ruby;
@@ -31,8 +31,8 @@ class TestLexerRuleReference < ANTLR3::Test::Functional
31
31
  lexer = RuleProperty::Lexer.new( "foobar _ab98 \n A12sdf" )
32
32
  tokens = lexer.map { |tk| tk }
33
33
 
34
- lexer.properties.should have(3).things
35
- text, type, line, pos, index, channel, start, stop = lexer.properties[0]
34
+ lexer.properties.should have( 3 ).things
35
+ text, type, line, pos, index, channel, start, stop = lexer.properties[ 0 ]
36
36
  text.should == 'foobar'
37
37
  type.should == RuleProperty::TokenData::IDENTIFIER
38
38
  line.should == 1
@@ -42,7 +42,7 @@ class TestLexerRuleReference < ANTLR3::Test::Functional
42
42
  start.should == 0
43
43
  stop.should == 5
44
44
 
45
- text, type, line, pos, index, channel, start, stop = lexer.properties[1]
45
+ text, type, line, pos, index, channel, start, stop = lexer.properties[ 1 ]
46
46
  text.should == '_ab98'
47
47
  type.should == RuleProperty::TokenData::IDENTIFIER
48
48
  line.should == 1
@@ -52,8 +52,8 @@ class TestLexerRuleReference < ANTLR3::Test::Functional
52
52
  start.should == 7
53
53
  stop.should == 11
54
54
 
55
- lexer.properties.should have(3).things
56
- text, type, line, pos, index, channel, start, stop = lexer.properties[2]
55
+ lexer.properties.should have( 3 ).things
56
+ text, type, line, pos, index, channel, start, stop = lexer.properties[ 2 ]
57
57
  text.should == 'A12sdf'
58
58
  type.should == RuleProperty::TokenData::IDENTIFIER
59
59
  line.should == 2
@@ -68,7 +68,7 @@ class TestLexerRuleReference < ANTLR3::Test::Functional
68
68
  end
69
69
 
70
70
  class TestLexerRuleLabel < ANTLR3::Test::Functional
71
- inline_grammar(<<-'END')
71
+ inline_grammar( <<-'END' )
72
72
  lexer grammar LexerRuleLabel;
73
73
  options {
74
74
  language = Ruby;
@@ -101,4 +101,3 @@ class TestLexerRuleLabel < ANTLR3::Test::Functional
101
101
  end
102
102
 
103
103
  end
104
-
@@ -4,7 +4,7 @@
4
4
  require 'antlr3/test/functional'
5
5
 
6
6
  class TestSyntacticPredicate < ANTLR3::Test::Functional
7
- inline_grammar(<<-'END')
7
+ inline_grammar( <<-'END' )
8
8
  lexer grammar SyntacticPredicateGate;
9
9
  options {
10
10
  language = Ruby;
@@ -29,4 +29,3 @@ class TestSyntacticPredicate < ANTLR3::Test::Functional
29
29
 
30
30
 
31
31
  end
32
-
@@ -4,7 +4,7 @@
4
4
  require 'antlr3/test/functional'
5
5
 
6
6
  class XMLLexerTest < ANTLR3::Test::Functional
7
- inline_grammar(<<-'END')
7
+ inline_grammar( <<-'END' )
8
8
  lexer grammar XML;
9
9
  options { language = Ruby; }
10
10
 
@@ -134,7 +134,7 @@ class XMLLexerTest < ANTLR3::Test::Functional
134
134
  END
135
135
 
136
136
  it "should be valid" do
137
- lexer = XML::Lexer.new(<<-'END'.fixed_indent(0))
137
+ lexer = XML::Lexer.new( <<-'END'.fixed_indent( 0 ) )
138
138
  <?xml version='1.0'?>
139
139
  <!DOCTYPE component [
140
140
  <!ELEMENT component (PCDATA|sub)*>
@@ -160,7 +160,7 @@ class XMLLexerTest < ANTLR3::Test::Functional
160
160
 
161
161
  lexer.map { |tk| tk }
162
162
 
163
- lexer.output.should == <<-'END'.fixed_indent(0)
163
+ lexer.output.should == <<-'END'.fixed_indent( 0 )
164
164
  XML declaration
165
165
  Attr: version = '1.0'
166
166
  ROOTELEMENT: component
@@ -5,12 +5,12 @@ require 'antlr3'
5
5
  require 'antlr3/test/functional'
6
6
 
7
7
  ENV.delete( 'RUBYOPT' )
8
- ENV['RUBYLIB'] = ANTLR3.library_path
8
+ ENV[ 'RUBYLIB' ] = ANTLR3.library_path
9
9
 
10
10
  class TestMainUtility < ANTLR3::Test::Functional
11
11
 
12
12
  example 'overriding the built-in script action using the @main named-action' do
13
- grammar = inline_grammar(<<-'END')
13
+ grammar = inline_grammar( <<-'END' )
14
14
  lexer grammar MainOverride;
15
15
  options { language = Ruby; }
16
16
 
@@ -30,15 +30,15 @@ class TestMainUtility < ANTLR3::Test::Functional
30
30
  # this assertion verifies that the main region is executed
31
31
  # when the parser script is run directly
32
32
  lexer_script = grammar.target_files.first
33
- out = `ruby #{lexer_script} 2>&1`.chomp
33
+ out = `ruby #{ lexer_script } 2>&1`.chomp
34
34
  out.should =~ /the main block ran/
35
35
  end
36
36
 
37
37
  example 'using Lexer.main() to run the built-in lexer utility script on a source file' do
38
- input_path = local_path('input.txt')
39
- open(input_path, 'w') { |f| f.write("yada yada") }
38
+ input_path = local_path( 'input.txt' )
39
+ open( input_path, 'w' ) { |f| f.write( "yada yada" ) }
40
40
 
41
- compile_and_load inline_grammar(<<-'END')
41
+ compile_and_load inline_grammar( <<-'END' )
42
42
  lexer grammar LexerMainWithSourceFile;
43
43
  options { language = Ruby; }
44
44
 
@@ -48,21 +48,21 @@ class TestMainUtility < ANTLR3::Test::Functional
48
48
 
49
49
  begin
50
50
  output = StringIO.new
51
- input = File.open(input_path)
52
- LexerMainWithSourceFile::Lexer.main([], :input => input, :output => output)
51
+ input = File.open( input_path )
52
+ LexerMainWithSourceFile::Lexer.main( [], :input => input, :output => output )
53
53
 
54
- out_lines = output.string.split(/\n/)
55
- out_lines.should have(3).things
54
+ out_lines = output.string.split( /\n/ )
55
+ out_lines.should have( 3 ).things
56
56
  ensure
57
- File.delete(input_path)
57
+ File.delete( input_path )
58
58
  end
59
59
  end
60
60
 
61
61
  example 'using Lexer.main to run the built-in lexer utility script on input from $stdin' do
62
- input = StringIO.new("yada yada") # <- used to simulate $stdin
62
+ input = StringIO.new( "yada yada" ) # <- used to simulate $stdin
63
63
  output = StringIO.new
64
64
 
65
- compile_and_load inline_grammar(<<-'END')
65
+ compile_and_load inline_grammar( <<-'END' )
66
66
  lexer grammar LexerMainFromStdIO;
67
67
  options { language = Ruby; }
68
68
 
@@ -70,13 +70,13 @@ class TestMainUtility < ANTLR3::Test::Functional
70
70
  WS: ' '+ { $channel = HIDDEN; };
71
71
  END
72
72
 
73
- LexerMainFromStdIO::Lexer.main([], :input => input, :output => output)
74
- lines = output.string.split(/\n/)
75
- lines.should have(3).things
73
+ LexerMainFromStdIO::Lexer.main( [], :input => input, :output => output )
74
+ lines = output.string.split( /\n/ )
75
+ lines.should have( 3 ).things
76
76
  end
77
77
 
78
78
  example 'using Parser.main to run the built-in parser script utility with a combo grammar' do
79
- compile_and_load inline_grammar(<<-'END')
79
+ compile_and_load inline_grammar( <<-'END' )
80
80
  grammar MainForCombined;
81
81
  options { language = Ruby; }
82
82
  r returns [res]: (ID)+ EOF { $res = $text; };
@@ -86,17 +86,17 @@ class TestMainUtility < ANTLR3::Test::Functional
86
86
  END
87
87
 
88
88
  output = StringIO.new
89
- input = StringIO.new('yada yada')
89
+ input = StringIO.new( 'yada yada' )
90
90
 
91
- MainForCombined::Parser.main(
91
+ MainForCombined::Parser.main(
92
92
  %w(--rule r --lexer-name MainForCombined::Lexer),
93
- :input => input, :output => output)
94
- lines = output.string.split("\n")
95
- lines.should have(4).things
93
+ :input => input, :output => output )
94
+ lines = output.string.split( "\n" )
95
+ lines.should have( 4 ).things
96
96
  end
97
97
 
98
98
  example 'using built-in main to inspect AST constructed by an AST-building parser' do
99
- compile_and_load inline_grammar(<<-'END')
99
+ compile_and_load inline_grammar( <<-'END' )
100
100
  grammar ASTParserMain;
101
101
  options {
102
102
  language = Ruby;
@@ -111,15 +111,15 @@ class TestMainUtility < ANTLR3::Test::Functional
111
111
 
112
112
  output = StringIO.new
113
113
  input = StringIO.new 'yada + yada'
114
- ASTParserMain::Parser.main(
114
+ ASTParserMain::Parser.main(
115
115
  %w(--rule r --lexer-name ASTParserMain::Lexer),
116
- :input => input, :output => output)
116
+ :input => input, :output => output )
117
117
  output = output.string.strip
118
118
  output.should == "(+ yada yada)"
119
119
  end
120
120
 
121
121
  example "using a tree parser's built-in main" do
122
- compile_and_load inline_grammar(<<-'END')
122
+ compile_and_load inline_grammar( <<-'END' )
123
123
  grammar TreeMain;
124
124
  options {
125
125
  language = Ruby;
@@ -132,7 +132,7 @@ class TestMainUtility < ANTLR3::Test::Functional
132
132
  OP: '+';
133
133
  WS: ' '+ { $channel = HIDDEN; };
134
134
  END
135
- compile_and_load inline_grammar(<<-'END')
135
+ compile_and_load inline_grammar( <<-'END' )
136
136
  tree grammar TreeMainWalker;
137
137
  options {
138
138
  language=Ruby;
@@ -147,16 +147,16 @@ class TestMainUtility < ANTLR3::Test::Functional
147
147
  output = StringIO.new
148
148
  input = StringIO.new 'a+b'
149
149
 
150
- TreeMainWalker::TreeParser.main(
150
+ TreeMainWalker::TreeParser.main(
151
151
  %w(--rule r --parser-name TreeMain::Parser
152
152
  --parser-rule r --lexer-name TreeMain::Lexer),
153
- :input => input, :output => output)
153
+ :input => input, :output => output )
154
154
  output = output.string.strip
155
155
  output.should == '"a + b"'
156
156
  end
157
157
 
158
158
  example "using a tree parser's built-in main to inspect AST rewrite output" do
159
- compile_and_load inline_grammar(<<-'END')
159
+ compile_and_load inline_grammar( <<-'END' )
160
160
  grammar TreeRewriteMain;
161
161
  options {
162
162
  language = Ruby;
@@ -169,7 +169,7 @@ class TestMainUtility < ANTLR3::Test::Functional
169
169
  OP: '+';
170
170
  WS: ' '+ { $channel = HIDDEN; };
171
171
  END
172
- compile_and_load inline_grammar(<<-'END')
172
+ compile_and_load inline_grammar( <<-'END' )
173
173
  tree grammar TreeRewriteMainWalker;
174
174
  options {
175
175
  language=Ruby;
@@ -183,7 +183,7 @@ class TestMainUtility < ANTLR3::Test::Functional
183
183
 
184
184
  output = StringIO.new
185
185
  input = StringIO.new 'a+b'
186
- TreeRewriteMainWalker::TreeParser.main(
186
+ TreeRewriteMainWalker::TreeParser.main(
187
187
  %w(--rule r --parser-name TreeRewriteMain::Parser
188
188
  --parser-rule r --lexer-name TreeRewriteMain::Lexer),
189
189
  :input => input, :output => output
@@ -194,12 +194,12 @@ class TestMainUtility < ANTLR3::Test::Functional
194
194
  end
195
195
 
196
196
  example 'using built-in main with a delegating grammar' do
197
- inline_grammar(<<-'END')
197
+ inline_grammar( <<-'END' )
198
198
  parser grammar MainSlave;
199
199
  options { language=Ruby; }
200
200
  a : B;
201
201
  END
202
- master = inline_grammar(<<-'END')
202
+ master = inline_grammar( <<-'END' )
203
203
  grammar MainMaster;
204
204
  options { language=Ruby; }
205
205
  import MainSlave;
@@ -209,15 +209,15 @@ class TestMainUtility < ANTLR3::Test::Functional
209
209
  END
210
210
  master.compile
211
211
  for file in master.target_files
212
- require(file)
212
+ require( file )
213
213
  end
214
214
 
215
215
  output = StringIO.new
216
216
  input = StringIO.new 'b'
217
217
 
218
- MainMaster::Parser.main(
218
+ MainMaster::Parser.main(
219
219
  %w(--rule s --lexer-name MainMaster::Lexer),
220
- :input => input, :output => output)
220
+ :input => input, :output => output )
221
221
  output = output.string.strip
222
222
  output.should == 'b'.inspect
223
223
  end
@@ -4,7 +4,7 @@
4
4
  require 'antlr3/test/functional'
5
5
 
6
6
  class TestActions1 < ANTLR3::Test::Functional
7
- inline_grammar(<<-'END')
7
+ inline_grammar( <<-'END' )
8
8
  grammar ParserActions;
9
9
  options { language = Ruby; }
10
10
 
@@ -48,7 +48,7 @@ end
48
48
 
49
49
  class TestActions2 < ANTLR3::Test::Functional
50
50
 
51
- inline_grammar(<<-'END')
51
+ inline_grammar( <<-'END' )
52
52
  grammar AllKindsOfActions;
53
53
  options { language = Ruby; }
54
54
 
@@ -92,13 +92,13 @@ class TestActions2 < ANTLR3::Test::Functional
92
92
  parser = AllKindsOfActions::Parser.new lexer
93
93
  parser.prog
94
94
 
95
- parser.output.should == <<-END.fixed_indent(0)
95
+ parser.output.should == <<-END.fixed_indent( 0 )
96
96
  init
97
97
  after
98
98
  finally
99
99
  END
100
100
 
101
- lexer.output.should == <<-END.fixed_indent(0)
101
+ lexer.output.should == <<-END.fixed_indent( 0 )
102
102
  action
103
103
  "foobar" 4 1 0 -1 :default 0 5
104
104
  attribute
@@ -114,7 +114,7 @@ end
114
114
 
115
115
  class TestFinally < ANTLR3::Test::Functional
116
116
 
117
- inline_grammar(<<-'END')
117
+ inline_grammar( <<-'END' )
118
118
  grammar Finally;
119
119
 
120
120
  options {
@@ -148,7 +148,7 @@ end
148
148
 
149
149
  class TestActionScopes < ANTLR3::Test::Functional
150
150
 
151
- inline_grammar(<<-'END')
151
+ inline_grammar( <<-'END' )
152
152
  grammar SpecialActionScopes;
153
153
  options { language=Ruby; }
154
154
 
@@ -216,9 +216,9 @@ class TestActionScopes < ANTLR3::Test::Functional
216
216
  END
217
217
 
218
218
  example 'verifying action scope behavior' do
219
- lexer = SpecialActionScopes::Lexer.new("10 20 30 40 50")
219
+ lexer = SpecialActionScopes::Lexer.new( "10 20 30 40 50" )
220
220
  parser = SpecialActionScopes::Parser.new lexer
221
- parser.nums.should == [10, 20, 30, 40, 50]
221
+ parser.nums.should == [ 10, 20, 30, 40, 50 ]
222
222
  end
223
223
 
224
224
  example 'special action scope locations' do
@@ -5,7 +5,7 @@ require 'antlr3/test/functional'
5
5
 
6
6
  class TestBacktracking < ANTLR3::Test::Functional
7
7
 
8
- inline_grammar(<<-'END')
8
+ inline_grammar( <<-'END' )
9
9
  grammar Backtrack;
10
10
  options {
11
11
  language = Ruby;
@@ -241,4 +241,3 @@ class TestBacktracking < ANTLR3::Test::Functional
241
241
  end
242
242
 
243
243
  end
244
-
@@ -4,7 +4,7 @@
4
4
  require 'antlr3/test/functional'
5
5
 
6
6
  class TestParser001 < ANTLR3::Test::Functional
7
- inline_grammar(<<-'END')
7
+ inline_grammar( <<-'END' )
8
8
  grammar Identifiers;
9
9
  options { language = Ruby; }
10
10
 
@@ -52,7 +52,7 @@ class TestParser001 < ANTLR3::Test::Functional
52
52
  parser = Identifiers::Parser.new( lexer )
53
53
  parser.document
54
54
 
55
- parser.reported_errors.should have(1).thing
55
+ parser.reported_errors.should have( 1 ).thing
56
56
  end
57
57
 
58
58
  example 'automatic input wrapping' do
@@ -71,7 +71,7 @@ class TestParser001 < ANTLR3::Test::Functional
71
71
  end
72
72
 
73
73
  class TestParser002 < ANTLR3::Test::Functional
74
- inline_grammar(<<-'END')
74
+ inline_grammar( <<-'END' )
75
75
  grammar SimpleLanguage;
76
76
  options {
77
77
  language = Ruby;
@@ -119,7 +119,7 @@ class TestParser002 < ANTLR3::Test::Functional
119
119
  parser.document
120
120
 
121
121
  parser.reported_errors.should be_empty
122
- parser.events.should == [
122
+ parser.events.should == [
123
123
  %w(decl foobar),
124
124
  %w(call gnarz),
125
125
  %w(decl blupp),
@@ -133,7 +133,7 @@ class TestParser002 < ANTLR3::Test::Functional
133
133
 
134
134
  parser.document
135
135
 
136
- parser.reported_errors.should have(1).thing
136
+ parser.reported_errors.should have( 1 ).thing
137
137
  parser.events.should be_empty
138
138
  end
139
139
 
@@ -143,8 +143,8 @@ class TestParser002 < ANTLR3::Test::Functional
143
143
 
144
144
  parser.document
145
145
 
146
- parser.reported_errors.should have(1).thing
147
- parser.events.should == [
146
+ parser.reported_errors.should have( 1 ).thing
147
+ parser.events.should == [
148
148
  %w(call gnarz),
149
149
  %w(call flupp)
150
150
  ]
@@ -153,7 +153,7 @@ class TestParser002 < ANTLR3::Test::Functional
153
153
  end
154
154
 
155
155
  class TestParser003 < ANTLR3::Test::Functional
156
- inline_grammar(<<-'END')
156
+ inline_grammar( <<-'END' )
157
157
  grammar MoreComplicated;
158
158
 
159
159
  options { language = Ruby; }
@@ -269,14 +269,14 @@ class TestParser003 < ANTLR3::Test::Functional
269
269
  lexer = MoreComplicated::Lexer.new "int foo() { 1+2 }"
270
270
  parser = MoreComplicated::Parser.new lexer
271
271
  parser.program
272
- parser.reported_errors.should have(1).thing
272
+ parser.reported_errors.should have( 1 ).thing
273
273
  end
274
274
 
275
275
  example "two instances of badly formed input" do
276
276
  lexer = MoreComplicated::Lexer.new "int foo() { 1+; 1+2 }"
277
277
  parser = MoreComplicated::Parser.new lexer
278
278
  parser.program
279
- parser.reported_errors.should have(2).things
279
+ parser.reported_errors.should have( 2 ).things
280
280
  end
281
281
 
282
282
  end