racc 1.7.1 → 1.7.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fba393652c1d3985ab81995a21479b631033fb841e618a841d38599601a3617c
4
- data.tar.gz: f2d149e9c9fc8ba4f477415f0110e14ed50bc81cf541f7b62590569e8625889a
3
+ metadata.gz: 9d623fac3c9d8c7d9a80e7d54b929dfb44258e8769ac96678d46ca472b30a8b5
4
+ data.tar.gz: d7d8a0f43eb48141366ebfd8afecca9577943520a40cf90d1949a08f7e895e2e
5
5
  SHA512:
6
- metadata.gz: d51b4bf2b55ac89e120c5b1c7d7d930c90c8a354c2c067c1d907ae0c00d85d14b7f3964097311bd8eced2f6d803204fc7046367dc64dadff410fa02c9648492b
7
- data.tar.gz: 9f12d87e35b1c3c2f0d8379ac570085b9ebd20716974bc512b5fb7c431a67998e4a09897b6a5cbcbe7d67436bee49f9d63399524df36a722a03293f68526881a
6
+ metadata.gz: e9d8244b3eb371baa11a0694c0367a7042e1df71e5b99f4ab34a63e15c0f0e4351e40766448eb77907ee5e892da60b9c4f3bd388a2655694b4a3a10a58d9bce4
7
+ data.tar.gz: 2c0c07429e141bcacfe9596fd9d759973fa0dbf8cff3748d7cba0e55e6b29af0d41ad110b7cbd5e6f19a422cf8f7088344bbcf0d638cc8ad98bd235ce24e1af4
data/README.ja.rdoc CHANGED
@@ -25,34 +25,6 @@
25
25
 
26
26
  $ gem install racc
27
27
 
28
- setup.rb インストル:
29
-
30
- パッケージのトップディレクトリで次のように入力してください。
31
- ($ は通常ユーザ、# はルートのプロンプトです)
32
-
33
- $ ruby setup.rb config
34
- $ ruby setup.rb setup
35
- ($ su)
36
- # ruby setup.rb install
37
-
38
- これで通常のパスに Racc がインストールされます。自分の好き
39
- なディレクトリにインストールしたいときは、setup.rb config に
40
- 各種オプションをつけて実行してください。オプションのリストは
41
-
42
- $ ruby setup.rb --help
43
-
44
- で見られます。
45
-
46
-
47
- コンパイラがない場合
48
- --------------------
49
-
50
- config を以下のようにすれば、拡張モジュールなしで
51
- インストールできます。
52
-
53
- $ ruby setup.rb config --without-ext
54
-
55
-
56
28
  == テスト
57
29
 
58
30
  sample/ 以下にいくつか Racc の文法ファイルのサンプルが用意
data/README.rdoc CHANGED
@@ -17,32 +17,6 @@
17
17
 
18
18
  $ gem install racc
19
19
 
20
- setup.rb install:
21
-
22
- Type this in the top directory of the extracted archive:
23
-
24
- $ ruby setup.rb config
25
- $ ruby setup.rb setup
26
- ($ su)
27
- # ruby setup.rb install
28
-
29
- You can install Racc into your favorite directory by giving
30
- options to setup.rb. e.g.
31
-
32
- $ ruby setup.rb config --prefix=/usr
33
-
34
- For details, try "ruby setup.rb --help".
35
-
36
-
37
- If you don't have C Compiler
38
- ----------------------------
39
-
40
- You can install Racc without C compilers. Type following
41
- command in config phase.
42
-
43
- $ ruby setup.rb config --without-ext
44
-
45
-
46
20
  == Testing Racc
47
21
 
48
22
  Racc comes with simple calculator. To compile this, on shell:
@@ -57,6 +31,13 @@
57
31
  For details of Racc, see HTML documents placed under 'doc/en/'
58
32
  and sample grammar files under 'sample/'.
59
33
 
34
+ == Release flow
35
+
36
+ * Update VERSION number of these files
37
+ * <code>RACC_VERSION</code> in "ext/racc/com/headius/racc/Cparse.java"
38
+ * <code>VERSION</code> in "lib/racc/info.rb"
39
+ * Release as a gem by <code>rake release</code> with CRuby and JRuby because Racc gem provides 2 packages
40
+ * Create new release on {GitHub}[https://github.com/ruby/racc/releases]
60
41
 
61
42
  == License
62
43
 
data/TODO CHANGED
@@ -1,5 +1,5 @@
1
1
  * check 'error' token handling.
2
2
  * interactive transition table monitor.
3
3
  * support backtracking.
4
- * output Ruby extention library?
4
+ * output Ruby extension library?
5
5
  * LL(k)? (But it should not be called Racc)
data/bin/racc CHANGED
@@ -19,6 +19,7 @@ def main
19
19
  make_executable = false
20
20
  rubypath = nil
21
21
  embed_runtime = false
22
+ frozen_strings = false
22
23
  debug_flags = Racc::DebugFlags.new
23
24
  line_convert = true
24
25
  line_convert_all = false
@@ -57,6 +58,9 @@ def main
57
58
  parser.on('-E', '--embedded', "Embeds Racc runtime in output.") {
58
59
  embed_runtime = true
59
60
  }
61
+ parser.on('-F', '--frozen', "Add frozen_string_literals: true.") {
62
+ frozen_strings = true
63
+ }
60
64
  parser.on('--line-convert-all', 'Converts line numbers of user codes.') {
61
65
  line_convert_all = true
62
66
  }
@@ -150,6 +154,7 @@ def main
150
154
 
151
155
  $stderr.puts 'Creating parser file...' if verbose
152
156
  params = result.params.dup
157
+ params.filename = File.basename(input)
153
158
  # Overwrites parameters given by a grammar file with command line options.
154
159
  params.superclass = superclass if superclass
155
160
  params.omit_action_call = true if omit_action_call
@@ -162,6 +167,7 @@ def main
162
167
  params.convert_line = line_convert
163
168
  params.convert_line_all = line_convert_all
164
169
  params.embed_runtime = embed_runtime
170
+ params.frozen_strings = frozen_strings
165
171
  profiler.section('generation') {
166
172
  generator = Racc::ParserFileGenerator.new(states, params)
167
173
  generator.generate_parser_file(output || make_filename(input, '.tab.rb'))
@@ -6,6 +6,7 @@ racc [-o<var>filename</var>] [--output-file=<var>filename</var>]
6
6
  [-O<var>filename</var>] [--log-file=<var>filename</var>]
7
7
  [-g] [--debug]
8
8
  [-E] [--embedded]
9
+ [-F] [--frozen]
9
10
  [-l] [--no-line-convert]
10
11
  [-c] [--line-convert-all]
11
12
  [-a] [--no-omit-actions]
@@ -50,6 +51,10 @@ Ruby のパスを使用します。
50
51
  ランタイムルーチンをすべて含んだコードを生成します。
51
52
  つまり、このオプションをつけて生成したコードは Ruby さえあれば動きます。
52
53
  </dd>
54
+ <dt>-F, --frozen
55
+ <dd>
56
+ Add frozen_string_literals: true.
57
+ </dd>
53
58
  <dt>-C, --check-only
54
59
  <dd>
55
60
  (文法ファイルの) 文法のチェックだけをして終了します。
@@ -173,7 +173,7 @@ target: TERM_A nonterm_a TERM_B nonterm_b
173
173
  --
174
174
  prechigh
175
175
  nonassoc PLUSPLUS
176
- left MULTI DEVIDE
176
+ left MULTI DIVIDE
177
177
  left PLUS MINUS
178
178
  right '='
179
179
  preclow
@@ -96,7 +96,7 @@ Object
96
96
  このメソッドから正常に戻った場合、パーサはエラー回復モード
97
97
  に移行します。
98
98
 
99
- error_token はパースエラーを起こした記号の内部表現 (整数) です。
99
+ error_token_id はパースエラーを起こした記号の内部表現 (整数) です。
100
100
  #token_to_str で文法ファイル上の文字列表現に直せます。
101
101
 
102
102
  error_value はその値です。
@@ -22,7 +22,7 @@
22
22
  Important Constants
23
23
  ----------------------------------------------------------------------- */
24
24
 
25
- #define RACC_VERSION "1.7.1"
25
+ #define RACC_VERSION STRINGIZE(RACC_INFO_VERSION)
26
26
 
27
27
  #define DEFAULT_TOKEN -1
28
28
  #define ERROR_TOKEN 1
@@ -70,12 +70,8 @@ static ID id_d_e_pop;
70
70
  # define LONG2NUM(i) INT2NUM(i)
71
71
  #endif
72
72
 
73
- #ifndef HAVE_RB_ARY_SUBSEQ
74
- # define rb_ary_subseq(ary, beg, len) rb_ary_new4(len, RARRAY_PTR(ary) + beg)
75
- #endif
76
-
77
- static ID value_to_id _((VALUE v));
78
- static inline long num_to_long _((VALUE n));
73
+ static ID value_to_id(VALUE v);
74
+ static inline long num_to_long(VALUE n);
79
75
 
80
76
  static ID
81
77
  value_to_id(VALUE v)
@@ -99,8 +95,8 @@ num_to_long(VALUE n)
99
95
  Parser Stack Interfaces
100
96
  ----------------------------------------------------------------------- */
101
97
 
102
- static VALUE get_stack_tail _((VALUE stack, long len));
103
- static void cut_stack_tail _((VALUE stack, long len));
98
+ static VALUE get_stack_tail(VALUE stack, long len);
99
+ static void cut_stack_tail(VALUE stack, long len);
104
100
 
105
101
  static VALUE
106
102
  get_stack_tail(VALUE stack, long len)
@@ -189,27 +185,27 @@ struct cparse_params {
189
185
  Parser Main Routines
190
186
  ----------------------------------------------------------------------- */
191
187
 
192
- static VALUE racc_cparse _((VALUE parser, VALUE arg, VALUE sysdebug));
193
- static VALUE racc_yyparse _((VALUE parser, VALUE lexer, VALUE lexmid,
194
- VALUE arg, VALUE sysdebug));
195
-
196
- static void call_lexer _((struct cparse_params *v));
197
- static VALUE lexer_i _((RB_BLOCK_CALL_FUNC_ARGLIST(block_args, data)));
198
-
199
- static VALUE assert_array _((VALUE a));
200
- static long assert_integer _((VALUE n));
201
- static VALUE assert_hash _((VALUE h));
202
- static VALUE initialize_params _((VALUE vparams, VALUE parser, VALUE arg,
203
- VALUE lexer, VALUE lexmid));
204
- static void cparse_params_mark _((void *ptr));
205
- static size_t cparse_params_memsize _((const void *ptr));
206
-
207
- static void parse_main _((struct cparse_params *v,
208
- VALUE tok, VALUE val, int resume));
209
- static void extract_user_token _((struct cparse_params *v,
210
- VALUE block_args, VALUE *tok, VALUE *val));
211
- static void shift _((struct cparse_params* v, long act, VALUE tok, VALUE val));
212
- static int reduce _((struct cparse_params* v, long act));
188
+ static VALUE racc_cparse(VALUE parser, VALUE arg, VALUE sysdebug);
189
+ static VALUE racc_yyparse(VALUE parser, VALUE lexer, VALUE lexmid,
190
+ VALUE arg, VALUE sysdebug);
191
+
192
+ static void call_lexer(struct cparse_params *v);
193
+ static VALUE lexer_i(RB_BLOCK_CALL_FUNC_ARGLIST(block_args, data));
194
+
195
+ static VALUE assert_array(VALUE a);
196
+ static long assert_integer(VALUE n);
197
+ static VALUE assert_hash(VALUE h);
198
+ static VALUE initialize_params(VALUE vparams, VALUE parser, VALUE arg,
199
+ VALUE lexer, VALUE lexmid);
200
+ static void cparse_params_mark(void *ptr);
201
+ static size_t cparse_params_memsize(const void *ptr);
202
+
203
+ static void parse_main(struct cparse_params *v,
204
+ VALUE tok, VALUE val, int resume);
205
+ static void extract_user_token(struct cparse_params *v,
206
+ VALUE block_args, VALUE *tok, VALUE *val);
207
+ static void shift(struct cparse_params* v, long act, VALUE tok, VALUE val);
208
+ static int reduce(struct cparse_params* v, long act);
213
209
  static rb_block_call_func reduce0;
214
210
 
215
211
  #ifdef DEBUG
@@ -278,28 +274,11 @@ racc_yyparse(VALUE parser, VALUE lexer, VALUE lexmid, VALUE arg, VALUE sysdebug)
278
274
  return v->retval;
279
275
  }
280
276
 
281
- #ifdef HAVE_RB_BLOCK_CALL
282
277
  static void
283
278
  call_lexer(struct cparse_params *v)
284
279
  {
285
280
  rb_block_call(v->lexer, v->lexmid, 0, NULL, lexer_i, v->value_v);
286
281
  }
287
- #else
288
- static VALUE
289
- lexer_iter(VALUE data)
290
- {
291
- struct cparse_params *v = rb_check_typeddata(data, &cparse_params_type);
292
-
293
- rb_funcall(v->lexer, v->lexmid, 0);
294
- return Qnil;
295
- }
296
-
297
- static void
298
- call_lexer(struct cparse_params *v)
299
- {
300
- rb_iterate(lexer_iter, v->value_v, lexer_i, v->value_v);
301
- }
302
- #endif
303
282
 
304
283
  static VALUE
305
284
  lexer_i(RB_BLOCK_CALL_FUNC_ARGLIST(block_args, data))
@@ -1,9 +1,8 @@
1
- # frozen_string_literal: false
1
+ # frozen_string_literal: true
2
2
  #
3
3
 
4
4
  require 'mkmf'
5
+ require_relative '../../../lib/racc/info'
5
6
 
6
- have_func('rb_block_call')
7
- have_func('rb_ary_subseq')
8
-
7
+ $defs << "-D""RACC_INFO_VERSION=#{Racc::VERSION}"
9
8
  create_makefile 'racc/cparse'
data/lib/racc/info.rb CHANGED
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  #--
2
3
  #
3
4
  #
@@ -11,7 +12,7 @@
11
12
  #++
12
13
 
13
14
  module Racc
14
- VERSION = '1.7.1'
15
+ VERSION = '1.7.2'
15
16
  Version = VERSION
16
17
  Copyright = 'Copyright (c) 1999-2006 Minero Aoki'
17
18
  end
@@ -1,6 +1,5 @@
1
1
  module Racc
2
2
  PARSER_TEXT = <<'__end_of_file__'
3
- # frozen_string_literal: false
4
3
  #--
5
4
  # Copyright (c) 1999-2006 Minero Aoki
6
5
  #
@@ -14,17 +13,6 @@ module Racc
14
13
 
15
14
  unless $".find {|p| p.end_with?('/racc/info.rb')}
16
15
  $".push "#{__dir__}/racc/info.rb"
17
- #--
18
- #
19
- #
20
- #
21
- # Copyright (c) 1999-2006 Minero Aoki
22
- #
23
- # This program is free software.
24
- # You can distribute/modify this program under the same terms of ruby.
25
- # see the file "COPYING".
26
- #
27
- #++
28
16
 
29
17
  module Racc
30
18
  VERSION = '1.7.1'
@@ -76,10 +64,12 @@ end
76
64
  # [-v, --verbose]
77
65
  # verbose mode. create +filename+.output file, like yacc's y.output file.
78
66
  # [-g, --debug]
79
- # add debug code to parser class. To display debuggin information,
67
+ # add debug code to parser class. To display debugging information,
80
68
  # use this '-g' option and set @yydebug true in parser class.
81
69
  # [-E, --embedded]
82
70
  # Output parser which doesn't need runtime files (racc/parser.rb).
71
+ # [-F, --frozen]
72
+ # Output parser which declares frozen_string_literals: true
83
73
  # [-C, --check-only]
84
74
  # Check syntax of racc grammar file and quit.
85
75
  # [-S, --output-status]
@@ -558,7 +548,7 @@ module Racc
558
548
  #
559
549
  # If this method returns, parsers enter "error recovering mode".
560
550
  def on_error(t, val, vstack)
561
- raise ParseError, sprintf("\nparse error on value %s (%s)",
551
+ raise ParseError, sprintf("parse error on value %s (%s)",
562
552
  val.inspect, token_to_str(t) || '?')
563
553
  end
564
554
 
data/lib/racc/parser.rb CHANGED
@@ -1,4 +1,4 @@
1
- # frozen_string_literal: false
1
+ # frozen_string_literal: true
2
2
  #--
3
3
  # Copyright (c) 1999-2006 Minero Aoki
4
4
  #
@@ -53,10 +53,12 @@ end
53
53
  # [-v, --verbose]
54
54
  # verbose mode. create +filename+.output file, like yacc's y.output file.
55
55
  # [-g, --debug]
56
- # add debug code to parser class. To display debuggin information,
56
+ # add debug code to parser class. To display debugging information,
57
57
  # use this '-g' option and set @yydebug true in parser class.
58
58
  # [-E, --embedded]
59
59
  # Output parser which doesn't need runtime files (racc/parser.rb).
60
+ # [-F, --frozen]
61
+ # Output parser which declares frozen_string_literals: true
60
62
  # [-C, --check-only]
61
63
  # Check syntax of racc grammar file and quit.
62
64
  # [-S, --output-status]
@@ -535,7 +537,7 @@ module Racc
535
537
  #
536
538
  # If this method returns, parsers enter "error recovering mode".
537
539
  def on_error(t, val, vstack)
538
- raise ParseError, sprintf("\nparse error on value %s (%s)",
540
+ raise ParseError, sprintf("parse error on value %s (%s)",
539
541
  val.inspect, token_to_str(t) || '?')
540
542
  end
541
543
 
@@ -45,6 +45,7 @@ module Racc
45
45
  bool_attr :convert_line
46
46
  bool_attr :convert_line_all
47
47
  bool_attr :embed_runtime
48
+ bool_attr :frozen_strings
48
49
  bool_attr :make_executable
49
50
  attr_accessor :interpreter
50
51
 
@@ -64,6 +65,7 @@ module Racc
64
65
  self.convert_line = true
65
66
  self.convert_line_all = false
66
67
  self.embed_runtime = false
68
+ self.frozen_strings = false
67
69
  self.make_executable = false
68
70
  self.interpreter = nil
69
71
  end
@@ -122,6 +124,7 @@ module Racc
122
124
  end
123
125
 
124
126
  def notice
127
+ line %q[# frozen_string_literal: true] if @params.frozen_strings?
125
128
  line %q[#]
126
129
  line %q[# DO NOT MODIFY!!!!]
127
130
  line %Q[# This file is automatically generated by Racc #{Racc::Version}]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: racc
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.1
4
+ version: 1.7.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Minero Aoki
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2023-06-14 00:00:00.000000000 Z
12
+ date: 2023-11-01 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: |
15
15
  Racc is a LALR(1) parser generator.
@@ -35,17 +35,14 @@ files:
35
35
  - README.rdoc
36
36
  - TODO
37
37
  - bin/racc
38
- - doc/en/NEWS.en.rdoc
39
38
  - doc/en/grammar.en.rdoc
40
39
  - doc/en/grammar2.en.rdoc
41
- - doc/ja/NEWS.ja.rdoc
42
40
  - doc/ja/command.ja.html
43
41
  - doc/ja/debug.ja.rdoc
44
42
  - doc/ja/grammar.ja.rdoc
45
43
  - doc/ja/index.ja.html
46
44
  - doc/ja/parser.ja.rdoc
47
45
  - doc/ja/usage.ja.html
48
- - ext/racc/MANIFEST
49
46
  - ext/racc/cparse/cparse.c
50
47
  - ext/racc/cparse/extconf.rb
51
48
  - lib/racc.rb
@@ -86,7 +83,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
86
83
  - !ruby/object:Gem::Version
87
84
  version: '0'
88
85
  requirements: []
89
- rubygems_version: 3.5.0.dev
86
+ rubygems_version: 3.4.10
90
87
  signing_key:
91
88
  specification_version: 4
92
89
  summary: Racc is a LALR(1) parser generator
data/doc/en/NEWS.en.rdoc DELETED
@@ -1,282 +0,0 @@
1
- = NEWS
2
-
3
- === 1.4.6
4
-
5
- * Bugfixes
6
-
7
- * bin/racc -g option renamed to -t
8
- * racc/compiler.rb is removed
9
- * '|' is allowed with meta rules
10
- * Ruby 1.8.7 compatibility fixes
11
- * Ruby 1.9 compatibility fixes
12
-
13
- === 1.4.5 (2005-11-21)
14
- * [FEATURE CHANGE] --no-extensions option was removed.
15
- * [fix] racc command should not depend on `raccrt' package.
16
- * [fix] --no-omit-actions did not work.
17
- * setup.rb 3.4.1.
18
-
19
- === 1.4.4 (2003-10-12)
20
- * document changed.
21
- * -all packages does not include amstd and strscan.
22
- * setup.rb 3.2.1.
23
-
24
- === 1.4.3 (2002-11-14)
25
- * [fix] reduce ruby 1.8 warnings.
26
-
27
- === 1.4.2 (2002-01-29)
28
- * [new] new option --no-extentions
29
-
30
- === 1.4.1 (2001-12-02)
31
- * now Racc does not depend on amstd library.
32
- * update y2racc and racc2y for racc 1.4.1
33
-
34
- === 1.4.0 (2001-11-30)
35
- * minor version up for checking in runtime library into ruby CVS repositry.
36
- * RaccParser, RaccScanner -&gt; GrammarFileParser, GrammarFileScanner
37
- * modify typo (grammer -&gt; grammar)
38
-
39
- === 1.3.12 (2001-11-22)
40
- * modify installer bug (thanks Tanaka Akira)
41
- * enhance regexp/%-strings/gvar detection in action block
42
-
43
- === 1.3.11 (2001-08-28)
44
- * modify scan error on $' $` $/ etc.
45
-
46
- === 1.3.10 (2001-08-12)
47
- * modify prototype missmatch in cparse.c
48
-
49
- === 1.3.9 (2001-04-07)
50
- * support Ruby 1.4 again.
51
-
52
- === 1.3.8 (2001-03-17)
53
- * output symbol name when error
54
- * Racc::Parser#token_to_str
55
-
56
- === 1.3.7 (2001-02-04)
57
- * allow nil for EndOfInput (experimental)
58
- * more sample grammar files
59
-
60
- === 1.3.6 (2001-01-22)
61
- * modify cparse.so for static link
62
-
63
- === 1.3.5 (2001-01-18)
64
- * %-string scanning was wrong
65
- * new directive "expect"
66
-
67
- === 1.3.4 (2001-01-11)
68
- * cparse: add type checks
69
- * cparse: rm depend
70
- * cparse: does not pass non-VALUE object to rb_iterate()
71
-
72
- === 1.3.3 (2000-12-25)
73
- * <em>critical bug</em> in generator (from 1.3.1)
74
- * racc --runtime-version
75
-
76
- === 1.3.2 (2000-12-21)
77
- * bug with racc -E
78
- * package strscan togather (again)
79
-
80
- === 1.3.1 (2000-12-17)
81
- * dynamically determine RE_DUP_MAX
82
- * ruby version routine was used always
83
-
84
- === 1.3.0 (2000-11-30)
85
- * can yield(sym,val) from scanner (Parser#yyparse)
86
-
87
- === 1.2.6 (2000-11-28)
88
- * class M::C
89
-
90
- === 1.2.5 (2000-11-20)
91
- * big changes in option; -h -f -p -i -n -c -A are incompatible
92
- * support long options
93
- * y2racc, racc2y leaves actions as default
94
-
95
- === 1.2.4 (2000-09-13)
96
- * updates installer and documents
97
-
98
- === 1.2.3 (2000-08-14)
99
- * output useless rules and nonterminals (version 2)
100
- * nonassoc makes error (never shift/reduce)
101
-
102
- === 1.2.2 (2000-08-12)
103
- * internal changes
104
-
105
- === 1.2.1 (2000-08-05)
106
- * racc2y, y2racc
107
-
108
- === 1.2.0 (2000-08-02)
109
- * uses bison's lookahead algorithm
110
-
111
- === 1.1.6 (2000-07-25)
112
- * new keyword "options" and its parameter "no_result_var"
113
-
114
- === 1.1.5 (2000-07-21)
115
- * [IMPORTANT] change keyword "token" to "convert"
116
- * NEW keyword "token" for token declearation
117
-
118
- === 1.1.4 (2000-07-13)
119
- * update installer
120
- * samples had bugs
121
-
122
- === 1.1.3 (2000-06-30)
123
- * new option -a; does not omit void action call
124
-
125
- === 1.1.2 (2000-06-29)
126
- * now racc does not use strscan.so
127
- * ScanError -&gt; Racc::ScanError, ParseError -&gt; Racc::ParseError
128
- * more friendly error messages
129
-
130
- === 1.1.1 (2000-06-15)
131
- * require miss
132
- * conflicts were not reported with -v
133
-
134
- === 1.1.0 (2000-06-12)
135
- * use other algolithm for generating state table
136
-
137
- === 1.0.4 (2000-06-04)
138
- * S/R conflict & -v flag causes unexpected exception (reported by Tosh)
139
- * output useless nonterminals/rules
140
-
141
- === 1.0.3 (2000-06-03)
142
- * use Array#collect! instead of #filter.
143
-
144
- === 1.0.2 (2000-05-16)
145
- * update installer (setup.rb)
146
-
147
- === 1.0.1 (2000-05-12)
148
- * state.rb: faster lookahead & debug lalr code
149
- * refine code
150
- * update amstd package (1.7.0)
151
-
152
- === 1.0.0 (2000-05-06)
153
- * version 1.0
154
-
155
- === 0.14.6 (2000-05-05)
156
- * much more debug output
157
-
158
- === 0.14.5 (2000-05-01)
159
-
160
- === 0.14.4 (2000-04-09)
161
- * Racc_* are included in Racc_arg
162
- * faster state generation (a little)
163
-
164
- === 0.14.3 (2000-04-04)
165
- * check both of SYM2ID and ID2SYM (thanks Katsuyuki Komatsu)
166
-
167
- === 0.14.2 (2000-04-03)
168
- * "class" on first line causes parse error (thanks Yoshiki Wada)
169
- * new option "racc -V"
170
-
171
- === 0.14.1 (2000-03-31)
172
-
173
- === 0.14.0 (2000-03-21)
174
- * implement "fast" table (same to bison)
175
- * stop line no. conversion temporaliry because of ruby bug
176
-
177
- === 0.13.1 (2000-03-21)
178
- * racc --version --copyright did not work (thanks Tadayoshi Funaba)
179
-
180
- === 0.13.0 (2000-03-20)
181
- * implement yyerror/yyerrok/yyaccept
182
-
183
- === 0.12.2 (2000-03-19)
184
- * -E flag had bug
185
-
186
- === 0.12.1 (2000-03-16)
187
- * modify the way to decide default action
188
-
189
- === 0.12.0 (2000-03-15)
190
- * implement real LALR
191
- * use both SLR and LALR to resolve conflicts
192
-
193
- === 0.11.3 (2000-03-09)
194
- * modify lookahead routine again
195
-
196
- === 0.11.2 (2000-03-09)
197
- * bug in lookahead routine
198
- * modify cparse.so for Symbol class of ruby 1.5
199
-
200
- === 0.11.1 (2000-03-08)
201
- * modify for Symbol
202
- * update strscan
203
-
204
- === 0.11.0 (2000-02-19)
205
- * if error is occured in action, ruby print line number of grammar file
206
-
207
- === 0.10.9 (2000-01-19)
208
- * change package/setup
209
-
210
- === 0.10.8 (2000-01-03)
211
- * (1-17 re-packed) add/modify documents
212
-
213
- === 0.10.7 (2000-01-03)
214
- * modify setup.rb, compile.rb, amstd/inst. (thanks: Koji Arai)
215
-
216
- === 0.10.6 (1999-12-24)
217
- * racc -e ruby
218
- * omit void action call
219
-
220
- === 0.10.5 (1999-12-21)
221
- * critical bug in embedded action implement
222
- * bug in setup.rb
223
- * modify calc[2].y for 0.10
224
-
225
- === 0.10.4 (1999-12-19)
226
- * support error recover ('error' token)
227
- * can embed runtime by "racc -E"
228
- * Racc is module
229
-
230
- === 0.10.3 (1999-12-01)
231
- * support embedded action
232
- * modify .output bug
233
-
234
- === 0.10.2 (1999-11-27)
235
- * update document
236
- * separate libracc.rb
237
-
238
- === 0.10.1 (1999-11-19)
239
- * rewrite runtime routine in C
240
- * once next_token returns [false, *], not call next_token
241
- * action is only default, not call next_token
242
- * $end is obsolute
243
- * LALRactionTable
244
-
245
- === 0.10.0 (1999-11-06)
246
- * next_value, peep_token is obsolute
247
- * @__debug__ -&gt; @yydebug
248
- * class...rule...end
249
- * refine libracc.rb
250
- * unify strscan library
251
- * *.rb are installed in lib/ruby/VERSION/racc/
252
-
253
- === 0.9.5 (1999-10-03)
254
- * too few arguments for __show_stack__
255
- * could not scan $end
256
- * typo in d.format.rb
257
-
258
- === 0.9.4 (1999-09-??)
259
-
260
- === 0.9.3 (1999-09-03)
261
-
262
- === 0.9.2 (1999-06-26)
263
-
264
- === 0.9.1 (1999-06-08)
265
-
266
- === 0.9.0 (1999-06-03)
267
-
268
- === 0.8.11 (?)
269
-
270
- === 0.8.10 (?)
271
-
272
- === 0.8.9 (1999-03-21)
273
-
274
- === 0.8.8 (1999-03-20)
275
-
276
- === 0.8.7 (1999-03-01)
277
-
278
- === 0.8.0 (1999-01-16)
279
-
280
- === 0.5.0 (1999-01-07)
281
-
282
- === 0.1.0 (1999-01-01)
data/doc/ja/NEWS.ja.rdoc DELETED
@@ -1,307 +0,0 @@
1
- = NEWS
2
-
3
- === 1.4.6
4
-
5
- * バグの修正
6
-
7
- * bin/racc -g オプションを -t に改名
8
- * racc/compiler.rb を削除
9
- * '|' が meta rules によって許可
10
- * Ruby 1.8.7 互換性を修正
11
- * Ruby 1.9 互換性を修正
12
-
13
- === 1.4.5 (2005-11-21)
14
- * [FEATURE CHANGE] --no-extensions オプションを削除
15
- * [fix] racc パッケージのみで -E を使えるように修正
16
- * [fix] --no-omit-actions が動作していなかったのを修正
17
- * setup.rb 3.4.1.
18
-
19
- === 1.4.4 (2003-10-12)
20
- * Ruby 1.8.0 に対応するリリース。本体に変更はなし
21
- * -all パッケージに strscan, amstd の同梱するのをやめた
22
- * setup.rb 3.2.1
23
-
24
- === 1.4.3 (2002-11-14)
25
- * [fix] ruby 1.8 の警告を消した
26
-
27
- === 1.4.2 (2002-01-29)
28
- * [new] 新しいオプション --no-extentions
29
-
30
- === 1.4.1 (2001-12-02)
31
- * amstd 非依存になった (ただし -all パッケージへバンドルは継続)
32
- * y2racc racc2y を 1.4 対応にした
33
-
34
- === 1.4.0 (2001-11-30)
35
- * ランタイムを Ruby の CVS に入れたのにあわせてマイナーバージョンアップ
36
- * RaccParser, RaccScanner → GrammarFileParser, GrammarFileScanner
37
- * ハズい typo を修正 (grammer → grammar)
38
-
39
- === 1.3.12 (2001-11-22)
40
- * インストーラのバグを修正 (thanks Tanaka Akira)
41
- * アクション中の正規表現や % 文字列、グローバル変数の検出を向上させた
42
-
43
- === 1.3.11 (2001-08-28)
44
- * アクション中の $' $` $/ などを正しくスキャン
45
-
46
- === 1.3.10 (2001-08-12)
47
- * cparse.c のプロトタイプ違いを直した
48
-
49
- === 1.3.9 (2001-04-07)
50
- * Ruby 1.4 に(再び)対応した
51
-
52
- === 1.3.8 (2001-03-17)
53
- * パースエラーの時に記号名も出力するようにした
54
- * Racc::Parser#token_to_s
55
-
56
- === 1.3.7 (2001-02-04)
57
- * サンプルを増やした
58
-
59
- === 1.3.6 (2001-01-22)
60
- * cparse がスタティックリンクされても動くようにした
61
-
62
- === 1.3.5 (2001-01-18)
63
- * % 文字列のスキャンがバグってた
64
- * 新しい命令 expect
65
-
66
- === 1.3.4 (2001-01-11)
67
- * cparse: シンボルのタイプチェックを入れた
68
- * cparse: depend を消した
69
- * cparse: rb_iterate 中の GC で落ちるバグを修正
70
-
71
- === 1.3.3 (2000-12-25)
72
- * ジェネレータに致命的なバグ。1.3.1 から混入 (format.rb)
73
- * racc --runtime-version
74
-
75
- === 1.3.2 (2000-12-21)
76
- * -E が失敗するのを直した
77
- * 再度 strscan を同梱 (y2racc/racc2y に必要)
78
-
79
- === 1.3.1 (2000-12-17)
80
- * 正規表現の繰り返し指定の上限を動的に決定する (RE_DUP_MAX)
81
- * パースルーチンが常に Ruby 版になっていた (消し忘れ)
82
-
83
- === 1.3.0 (2000-11-30)
84
- * スキャナから yield でトークンを渡せるようになった
85
-
86
- === 1.2.6 (2000-11-28)
87
- * class M::C を許した
88
-
89
- === 1.2.5 (2000-11-20)
90
- * オプションに大変動。非互換オプションは -h -f -p -i -n -c -A
91
- * ロングオプションをサポート
92
- * y2racc, racc2y はデフォルトでアクションを残すようにした
93
-
94
- === 1.2.4 (2000-09-13)
95
- * インストーラとドキュメントを更新
96
-
97
- === 1.2.3 (2000-08-14)
98
- * 使われない規則と非終端記号を出力 (強力版)
99
- * S/R conflict の時 nonassoc で解決するならばエラー
100
-
101
- === 1.2.2 (2000-08-12)
102
- * 内部の変更
103
-
104
- === 1.2.1 (2000-08-05)
105
- * yacc との変換コマンド racc2y・y2racc を添付
106
-
107
- === 1.2.0 (2000-08-02)
108
- * 先読みアルゴリズムを bison のものに変更
109
-
110
- === 1.1.6 (2000-07-25)
111
- * 新たなキーワード options とその引数 no_result_var
112
-
113
- === 1.1.5 (2000-07-21)
114
- * [重要] token を convert に変更
115
- * 「新たな」キーワード token (終端記号の宣言)
116
-
117
- === 1.1.4 (2000-07-13)
118
- * サンプルがバグってた
119
-
120
- === 1.1.3 (2000-06-30)
121
- * 空アクションの呼び出しを省略しないようにするオプション -a
122
-
123
- === 1.1.2 (2000-06-29)
124
- * スキャナで strscan を使わないようにした
125
- * ScanError -&gt; Racc::ScanError, ParseError -&gt; Racc::ParseError
126
- * エラーメッセージを強化
127
-
128
- === 1.1.1 (2000-06-15)
129
- * requireミス (thanks Toshさん)
130
- * -v をつけるとconflictが報告されなくなっていた
131
-
132
- === 1.1.0 (2000-06-12)
133
- * 新しい 状態遷移表生成アルゴリズム
134
-
135
- === 1.0.4 (2000-06-04)
136
- * S/R conflict がおきると .output 出力で落ちるバグ修正 (Tosh さんの報告)
137
- * 使われない非終端記号・規則を表示
138
-
139
- === 1.0.3 (2000-06-03)
140
- * filter -&gt; collect!
141
-
142
- === 1.0.2 (2000-05-16)
143
- * インストーラをアップデート
144
-
145
- === 1.0.1 (2000-05-12)
146
- * state.rb: 先読みルーチンをちょっとだけ高速化 && 追加デバッグ
147
- * コードを整理した。著作権表示全体を全部のファイルにつけた。
148
- * amstd アップデート (1.7.0)
149
-
150
- === 1.0.0 (2000-05-06)
151
- * バージョン 1.0
152
-
153
- === 0.14.6 (2000-05-05)
154
- * デバッグ出力を詳細にした
155
-
156
- === 0.14.5 (2000-05-01)
157
- * インストーラを ruby 1.4.4 系の新しいパスに対応させた
158
-
159
- === 0.14.4 (2000-04-09)
160
- * パーサの定数を削減(Racc_arg にまとめた)
161
- * state 生成を微妙に高速化(コアを文字列に変換)
162
-
163
- === 0.14.3 (2000-04-04)
164
- * cparse の SYM2ID と ID2SYM のチェックを分離 (thanks 小松さん)
165
-
166
- === 0.14.2 (2000-04-03)
167
- * 一行目の class がパースエラーになっていた (thanks 和田さん)
168
- * 新しいフラグ racc -V
169
-
170
- === 0.14.1 (2000-03-31)
171
-
172
- === 0.14.0 (2000-03-21)
173
- * 高速テーブルを実装
174
- * 一時的にファイル名/行番号の変換をやめた(Rubyのバグのため。)
175
-
176
- === 0.13.1 (2000-03-21)
177
- * --version --copyright などがうまく働いてなかった (thanks ふなばさん)
178
-
179
- === 0.13.0 (2000-03-20)
180
- * yyerror/yyerrok/yyaccept を実装
181
-
182
- === 0.12.2 (2000-03-19)
183
- * -E フラグがバグってた (thanks ふなばさん)
184
-
185
- === 0.12.1 (2000-03-16)
186
- * デフォルトアクションの決め方をちょっと修正(元に戻しただけ)
187
-
188
- === 0.12.0 (2000-03-15)
189
- * 完全な LALR を実装したら遅くなったので SLR も併用するようにした。効果絶大。
190
-
191
- === 0.11.3 (2000-03-09)
192
- * 状態遷移表生成のバグの修正がまだ甘かった。さらに別のバグもあるようだ。
193
-
194
- === 0.11.2 (2000-03-09)
195
- * cparse が Symbol に対応できてなかった
196
-
197
- === 0.11.1 (2000-03-08)
198
- * ruby 1.5 の Symbol に対応
199
- * strscan を最新に
200
-
201
- === 0.11.0 (2000-02-19)
202
- * 例外のとき、元のファイルの行番号が出るようにした
203
-
204
- === 0.10.9 (2000-01-19)
205
- * セットアップ方法など細かな変更
206
-
207
- === 0.10.8 (2000-01-03)
208
- * 忘れてしまったけどたしかインストーラ関係の修正
209
- * (1/17 repacked) ドキュメントの追加と修正
210
-
211
- === 0.10.7 (2000-01-03)
212
- * setup.rb compile.rb amstd/inst などのバグ修正
213
-
214
- === 0.10.6 (1999-12-24)
215
- * racc -e ruby でデフォルトパスを使用
216
- * 空のアクションの呼びだしは省略するようにした
217
-
218
- === 0.10.5 (1999-12-21)
219
- * 埋めこみアクションの実装がすさまじくバグってた
220
- * setup.rb が inst.rb の変化に追従してなかった
221
- * calc.y calc2.y を 0.10 用に修正
222
-
223
- === 0.10.4 (1999-12-19)
224
- * エラー回復モードを実装
225
- * racc -E で単体で動作するパーサを生成
226
- * Racc は class から module になった
227
-
228
- === 0.10.3 (1999-12-01)
229
- * 埋めこみアクションをサポート
230
- * .output の出力内容にバグがあったのを修正
231
-
232
- === 0.10.2 (1999-11-27)
233
- * ドキュメントの訂正と更新
234
- * libracc.rb を分割
235
-
236
- === 0.10.1 (1999-11-19)
237
- * C でランタイムを書きなおした
238
- * next_token が false を返したらもう読みこまない
239
- * アクションがトークンによらず決まるときは next_token を呼ばない
240
- * $end 廃止
241
- * LALRactionTable
242
-
243
- === 0.10.0 (1999-11-06)
244
- * next_* を next_token に一本化、peep_token 廃止
245
- * @__debug__ -&lt; @yydebug など変数名を大幅変更
246
- * 文法ファイルの構造が class...rule...end に変わった
247
- * コアのコードを一新、高速化
248
- * strscan を併合
249
- * ライブラリを racc/ ディレクトリに移動
250
-
251
- === 0.9.5 (1999-10-03)
252
- * 0.9.4 の変更がすごくバグってた
253
- * $end が通らなかったのを修正
254
- * __show_stack__ の引数が違ってた
255
-
256
- === 0.9.4 (1999-09-??)
257
- * Parser::Reporter をなくしてメソッドに戻した
258
- * d.format.rb を再編成
259
-
260
- === 0.9.3 (1999-09-03)
261
- * racc.rb -> racc
262
-
263
- === 0.9.2 (1999-06-26)
264
- * strscan使用
265
-
266
- === 0.9.1 (1999-06-08)
267
- * アクション中の正規表現に対応 ( /= にも注意だ)
268
- * アクション中の # コメントに対応
269
-
270
- === 0.9.0 (1999-06-03)
271
- * アクションを { } 形式にした
272
- * ユーザーコードを '----' を使う形式にした
273
-
274
- === 0.8.11 (?)
275
- * -g の出力をわかりやすくした
276
-
277
- === 0.8.10 (?)
278
- * アクションからreturnできるようにした
279
-
280
- === 0.8.9 (1999-03-21)
281
- * -g + @__debug__をつかったデバッグメッセージ操作
282
- * エラー発生時のバグを修正
283
- * TOKEN_TO_S_TABLEを付加するようにした
284
-
285
- === 0.8.8 (1999-03-20)
286
- * 100倍程度の高速化
287
- * defaultトークンを加えた
288
- * デバッグ用ソースを出力するオプション-gをくわえた
289
- * user_initializeを廃止し、普通にinitializeを使えるようにした
290
- * parse_initialize/finalize,parseメソッドを廃止
291
- * next_token,next_value,peep_tokenのデフォルトを廃止
292
- * %precと同等の機能を加えた
293
-
294
- === 0.8.7 (1999-03-01)
295
- * 内部構造が大幅に変化
296
- * マニュアルがHTMLになった
297
-
298
- === 0.8.0 (1999-01-16)
299
- * 文法がブロック型に変化
300
-
301
- === 0.5.0 (1999-01-07)
302
- * 演算子優先順位が実装されたようだ
303
- * スタート規則が実装されたようだ
304
- * トークン値の置換が実装されたようだ(後に致命的なバグ発見)
305
-
306
- === 0.1.0 (1999-01-01)
307
- * とにかく動くようになった
data/ext/racc/MANIFEST DELETED
@@ -1,4 +0,0 @@
1
- MANIFEST
2
- cparse.c
3
- depend
4
- extconf.rb