carray 1.1.4 → 1.1.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (231) hide show
  1. checksums.yaml +4 -4
  2. data/COPYING +56 -0
  3. data/GPL +340 -0
  4. data/Gemfile +9 -0
  5. data/Gemfile.lock +33 -0
  6. data/LEGAL +50 -0
  7. data/NOTE +73 -0
  8. data/Rakefile +20 -0
  9. data/TODO +5 -0
  10. data/ca_iter_block.c +242 -0
  11. data/ca_iter_dimension.c +287 -0
  12. data/ca_iter_window.c +202 -0
  13. data/ca_obj_array.c +1189 -0
  14. data/ca_obj_bitarray.c +523 -0
  15. data/ca_obj_bitfield.c +636 -0
  16. data/ca_obj_block.c +885 -0
  17. data/ca_obj_fake.c +405 -0
  18. data/ca_obj_farray.c +482 -0
  19. data/ca_obj_field.c +625 -0
  20. data/ca_obj_grid.c +738 -0
  21. data/ca_obj_mapping.c +614 -0
  22. data/ca_obj_object.c +777 -0
  23. data/ca_obj_reduce.c +299 -0
  24. data/ca_obj_refer.c +627 -0
  25. data/ca_obj_repeat.c +640 -0
  26. data/ca_obj_select.c +558 -0
  27. data/ca_obj_shift.c +952 -0
  28. data/ca_obj_transpose.c +582 -0
  29. data/ca_obj_unbound_repeat.c +557 -0
  30. data/ca_obj_window.c +1023 -0
  31. data/carray.h +1381 -0
  32. data/carray_access.c +1798 -0
  33. data/carray_attribute.c +903 -0
  34. data/carray_call_cfunc.c +1107 -0
  35. data/carray_cast.c +1155 -0
  36. data/carray_cast_func.rb +498 -0
  37. data/carray_class.c +132 -0
  38. data/carray_conversion.c +518 -0
  39. data/carray_copy.c +453 -0
  40. data/carray_core.c +1307 -0
  41. data/carray_element.c +572 -0
  42. data/carray_generate.c +681 -0
  43. data/carray_iterator.c +630 -0
  44. data/carray_loop.c +462 -0
  45. data/carray_mask.c +1174 -0
  46. data/carray_math.rb +834 -0
  47. data/carray_numeric.c +257 -0
  48. data/carray_operator.c +582 -0
  49. data/carray_order.c +1040 -0
  50. data/carray_random.c +529 -0
  51. data/carray_sort_addr.c +261 -0
  52. data/carray_stat.c +2102 -0
  53. data/carray_stat_proc.rb +1990 -0
  54. data/carray_test.c +602 -0
  55. data/carray_undef.c +69 -0
  56. data/carray_utils.c +740 -0
  57. data/ext/calculus/carray_calculus.c +792 -0
  58. data/ext/calculus/carray_interp.c +355 -0
  59. data/ext/calculus/extconf.rb +12 -0
  60. data/ext/calculus/lib/autoload/autoload_math_calculus.rb +2 -0
  61. data/ext/calculus/lib/math/calculus.rb +119 -0
  62. data/ext/calculus/lib/math/interp/adapter_interp1d.rb +31 -0
  63. data/ext/dataframe/API.txt +11 -0
  64. data/ext/dataframe/extconf.rb +3 -0
  65. data/ext/dataframe/lib/carray/autoload/autoload_dataframe_dataframe.rb +14 -0
  66. data/ext/dataframe/lib/carray/dataframe/dataframe.rb +1104 -0
  67. data/ext/dataframe/sample/test_uniq_sort.rb +5 -0
  68. data/ext/fortio/extconf.rb +3 -0
  69. data/ext/fortio/lib/carray/autoload/autoload_fortran_format.rb +5 -0
  70. data/ext/fortio/lib/carray/io/fortran_format.rb +43 -0
  71. data/ext/fortio/lib/fortio.rb +3 -0
  72. data/ext/fortio/lib/fortio/fortran_format.rb +603 -0
  73. data/ext/fortio/lib/fortio/fortran_format.tab.rb +536 -0
  74. data/ext/fortio/lib/fortio/fortran_format.y +215 -0
  75. data/ext/fortio/lib/fortio/fortran_namelist.rb +151 -0
  76. data/ext/fortio/lib/fortio/fortran_namelist.tab.rb +470 -0
  77. data/ext/fortio/lib/fortio/fortran_namelist.y +213 -0
  78. data/ext/fortio/lib/fortio/fortran_sequential.rb +345 -0
  79. data/ext/fortio/ruby_fortio.c +182 -0
  80. data/ext/fortio/test/test_H.rb +5 -0
  81. data/ext/fortio/test/test_T.rb +7 -0
  82. data/ext/fortio/test/test_fortran_format.rb +86 -0
  83. data/ext/fortio/test/test_namelist.rb +25 -0
  84. data/ext/fortio/test/test_sequential.rb +13 -0
  85. data/ext/fortio/test/test_sequential2.rb +13 -0
  86. data/ext/fortio/work/test.rb +10 -0
  87. data/ext/fortio/work/test_e.rb +19 -0
  88. data/ext/fortio/work/test_ep.rb +10 -0
  89. data/ext/fortio/work/test_parse.rb +12 -0
  90. data/ext/imagemap/carray_imagemap.c +495 -0
  91. data/ext/imagemap/doc/call_graph.dot +28 -0
  92. data/ext/imagemap/draw.c +567 -0
  93. data/ext/imagemap/extconf.rb +13 -0
  94. data/ext/imagemap/lib/autoload/autoload_graphics_imagemap.rb +1 -0
  95. data/ext/imagemap/lib/graphics/imagemap.rb +273 -0
  96. data/ext/imagemap/lib/image_map.rb +4 -0
  97. data/ext/imagemap/test/swath_index.rb +83 -0
  98. data/ext/imagemap/test/swath_warp.rb +99 -0
  99. data/ext/imagemap/test/test.rb +23 -0
  100. data/ext/imagemap/test/test_image.rb +42 -0
  101. data/ext/imagemap/test/test_line.rb +14 -0
  102. data/ext/imagemap/test/test_rotate.rb +17 -0
  103. data/ext/imagemap/test/test_triangle.rb +20 -0
  104. data/ext/imagemap/test/test_warp.rb +26 -0
  105. data/ext/mathfunc/carray_mathfunc.c +321 -0
  106. data/ext/mathfunc/extconf.rb +18 -0
  107. data/ext/mathfunc/lib/autoload/autoload_math_mathfunc.rb +1 -0
  108. data/ext/mathfunc/lib/math/mathfunc.rb +15 -0
  109. data/ext/mathfunc/test/test_hypot.rb +5 -0
  110. data/ext/mathfunc/test/test_j0.rb +22 -0
  111. data/ext/mathfunc/test/test_jn.rb +8 -0
  112. data/ext/mathfunc/test/test_sph.rb +9 -0
  113. data/ext/narray/README +22 -0
  114. data/ext/narray/ca_wrap_narray.c +491 -0
  115. data/ext/narray/carray_narray.c +21 -0
  116. data/ext/narray/extconf.rb +57 -0
  117. data/ext/narray/lib/autoload/autoload_math_narray.rb +1 -0
  118. data/ext/narray/lib/autoload/autoload_math_narray_miss.rb +11 -0
  119. data/ext/narray/lib/math/narray.rb +17 -0
  120. data/ext/narray/lib/math/narray_miss.rb +45 -0
  121. data/extconf.rb +3 -25
  122. data/lib/carray.rb +28 -0
  123. data/lib/carray/autoload/autoload_base.rb +23 -0
  124. data/lib/carray/autoload/autoload_graphics_gnuplot.rb +2 -0
  125. data/lib/carray/autoload/autoload_io_csv.rb +14 -0
  126. data/lib/carray/autoload/autoload_io_excel.rb +5 -0
  127. data/lib/carray/autoload/autoload_io_imagemagick.rb +6 -0
  128. data/lib/carray/autoload/autoload_io_pg.rb +6 -0
  129. data/lib/carray/autoload/autoload_io_sqlite3.rb +12 -0
  130. data/lib/carray/autoload/autoload_io_table.rb +1 -0
  131. data/lib/carray/autoload/autoload_math_histogram.rb +5 -0
  132. data/lib/carray/autoload/autoload_math_interp.rb +4 -0
  133. data/lib/carray/autoload/autoload_math_recurrence.rb +6 -0
  134. data/lib/carray/autoload/autoload_object_iterator.rb +1 -0
  135. data/lib/carray/autoload/autoload_object_link.rb +1 -0
  136. data/lib/carray/autoload/autoload_object_pack.rb +2 -0
  137. data/lib/carray/base/autoload.rb +94 -0
  138. data/lib/carray/base/basic.rb +1051 -0
  139. data/lib/carray/base/inspect.rb +252 -0
  140. data/lib/carray/base/iterator.rb +367 -0
  141. data/lib/carray/base/math.rb +403 -0
  142. data/lib/carray/base/obsolete.rb +93 -0
  143. data/lib/carray/base/serialize.rb +260 -0
  144. data/lib/carray/base/struct.rb +634 -0
  145. data/lib/carray/graphics/gnuplot.rb +2116 -0
  146. data/lib/carray/info.rb +112 -0
  147. data/lib/carray/io/csv.rb +560 -0
  148. data/lib/carray/io/excel.rb +26 -0
  149. data/lib/carray/io/imagemagick.rb +231 -0
  150. data/lib/carray/io/pg.rb +101 -0
  151. data/lib/carray/io/sqlite3.rb +202 -0
  152. data/lib/carray/io/table.rb +77 -0
  153. data/lib/carray/math/histogram.rb +179 -0
  154. data/lib/carray/math/interp.rb +57 -0
  155. data/lib/carray/math/interp/adapter_gsl_spline.rb +47 -0
  156. data/lib/carray/math/recurrence.rb +95 -0
  157. data/lib/carray/mkmf.rb +145 -0
  158. data/lib/carray/object/ca_obj_iterator.rb +52 -0
  159. data/lib/carray/object/ca_obj_link.rb +52 -0
  160. data/lib/carray/object/ca_obj_pack.rb +101 -0
  161. data/mkmath.rb +731 -0
  162. data/mt19937ar.c +182 -0
  163. data/mt19937ar.h +86 -0
  164. data/rdoc_main.rb +27 -0
  165. data/rdoc_math.rb +5 -0
  166. data/rdoc_stat.rb +31 -0
  167. data/ruby_carray.c +242 -0
  168. data/ruby_ccomplex.c +497 -0
  169. data/ruby_float_func.c +83 -0
  170. data/spec/CABlockIterator/CABlockIterator_spec.rb +113 -0
  171. data/spec/CArray/bug/store_spec.rb +27 -0
  172. data/spec/CArray/index/repeat_spec.rb +10 -0
  173. data/spec/CArray/method/eq_spec.rb +80 -0
  174. data/spec/CArray/method/is_nan_spec.rb +12 -0
  175. data/spec/CArray/method/ne_spec.rb +18 -0
  176. data/spec/CArray/method/round_spec.rb +11 -0
  177. data/spec/CArray/object/_attribute_spec.rb +32 -0
  178. data/spec/CArray/object/s_new_spec.rb +31 -0
  179. data/spec/CArray/serialize/Serialization_spec.rb +89 -0
  180. data/spec/spec_all.rb +11 -0
  181. data/test/test_ALL.rb +50 -0
  182. data/test/test_CABitfield.rb +59 -0
  183. data/test/test_CABlock.rb +208 -0
  184. data/test/test_CAField.rb +40 -0
  185. data/test/test_CAGrid.rb +76 -0
  186. data/test/test_CAMapping.rb +106 -0
  187. data/test/test_CAMmap.rb +11 -0
  188. data/test/test_CARefer.rb +94 -0
  189. data/test/test_CARepeat.rb +66 -0
  190. data/test/test_CASelect.rb +23 -0
  191. data/test/test_CAShift.rb +17 -0
  192. data/test/test_CATranspose.rb +61 -0
  193. data/test/test_CAVirtual.rb +214 -0
  194. data/test/test_CAWindow.rb +55 -0
  195. data/test/test_CAWrap.rb +9 -0
  196. data/test/test_CArray.rb +228 -0
  197. data/test/test_CComplex.rb +83 -0
  198. data/test/test_CScalar.rb +91 -0
  199. data/test/test_attribute.rb +281 -0
  200. data/test/test_block_iterator.rb +17 -0
  201. data/test/test_boolean.rb +99 -0
  202. data/test/test_cast.rb +33 -0
  203. data/test/test_class.rb +85 -0
  204. data/test/test_complex.rb +43 -0
  205. data/test/test_composite.rb +125 -0
  206. data/test/test_convert.rb +79 -0
  207. data/test/test_copy.rb +141 -0
  208. data/test/test_creation.rb +85 -0
  209. data/test/test_element.rb +146 -0
  210. data/test/test_extream.rb +55 -0
  211. data/test/test_generate.rb +75 -0
  212. data/test/test_index.rb +71 -0
  213. data/test/test_mask.rb +578 -0
  214. data/test/test_math.rb +98 -0
  215. data/test/test_narray.rb +64 -0
  216. data/test/test_order.rb +147 -0
  217. data/test/test_random.rb +15 -0
  218. data/test/test_ref_store.rb +211 -0
  219. data/test/test_stat.rb +414 -0
  220. data/test/test_struct.rb +72 -0
  221. data/test/test_virtual.rb +49 -0
  222. data/utils/ca_ase.rb +21 -0
  223. data/utils/ca_methods.rb +15 -0
  224. data/utils/cast_checker.rb +30 -0
  225. data/utils/create_rdoc.sh +9 -0
  226. data/utils/diff_method.rb +52 -0
  227. data/utils/extract_rdoc.rb +27 -0
  228. data/utils/make_tgz.sh +3 -0
  229. data/utils/remove_resource_fork.sh +5 -0
  230. data/version.h +3 -3
  231. metadata +266 -1
@@ -0,0 +1,536 @@
1
+ #
2
+ # DO NOT MODIFY!!!!
3
+ # This file is automatically generated by Racc 1.4.6
4
+ # from Racc grammer file "".
5
+ #
6
+
7
+ require 'racc/parser.rb'
8
+
9
+
10
+ require "strscan"
11
+
12
+ class FortranFormatScanner
13
+
14
+ def initialize (text)
15
+ @s = StringScanner.new(text)
16
+ end
17
+
18
+ def yylex
19
+ while @s.rest?
20
+ case
21
+ when @s.scan(/\A(ES|[FEDG])(\d+)\.(\d+)/i) ### {F|E|D|G|ES}w.d
22
+ return [
23
+ @s[1].upcase.to_sym,
24
+ [
25
+ @s[2].to_i,
26
+ @s[3].to_i
27
+ ]
28
+ ]
29
+ when @s.scan(/\AE(\d+)/i) ### Ed (for exponential)
30
+ return [
31
+ :EXP,
32
+ @s[1].to_i
33
+ ]
34
+ when @s.scan(/\AI(\d+)(\.(\d+))?/i) ### Iw(.d)
35
+ return [
36
+ :I,
37
+ [
38
+ @s[1].to_i,
39
+ @s[3] ? @s[3].to_i : nil
40
+ ]
41
+ ]
42
+ when @s.scan(/\AL(\d+)?/i) ### L(w)
43
+ return [
44
+ :L,
45
+ @s[1] ? @s[1].to_i : nil
46
+ ]
47
+ when @s.scan(/\AA(\d+)?/i) ### A(w)
48
+ return [
49
+ :A,
50
+ @s[1] ? @s[1].to_i : nil
51
+ ]
52
+ when @s.scan(/\AX/i) ### X
53
+ return [
54
+ :X,
55
+ nil
56
+ ]
57
+ when @s.scan(/\ATL(\d+)?/i) ### TLw
58
+ return [
59
+ :TL,
60
+ @s[1] ? @s[1].to_i : 1
61
+ ]
62
+ when @s.scan(/\ATR(\d+)?/i) ### TRw
63
+ return [
64
+ :TR,
65
+ @s[1] ? @s[1].to_i : 1
66
+ ]
67
+ when @s.scan(/\AT(\d+)?/i) ### Tw
68
+ return [
69
+ :T,
70
+ @s[1] ? @s[1].to_i : 1
71
+ ]
72
+ when @s.scan(/\A([+-]?\d+)P/i) ### {+|-|}P
73
+ return [
74
+ :P,
75
+ @s[1].to_i
76
+ ]
77
+ when @s.scan(/\AS[PS]?/i) ### S,SP,SS
78
+ return [
79
+ :Sp,
80
+ @s[0] =~ /SP/i ? true : false
81
+ ]
82
+ when @s.scan(/\AB[NZ]/i) ### BN,BZ
83
+ return [
84
+ :B,
85
+ @s[0] =~ /BZ/i ? true : false
86
+ ]
87
+ when @s.match?(/\A(\d+)?H/i) ### Hollerith
88
+ count = @s[1] ? @s[1].to_i : 1
89
+ if @s.scan(/\A(\d+)?H(.{#{count}})/)
90
+ return [
91
+ :H,
92
+ [count, @s[2]]
93
+ ]
94
+ else
95
+ raise "invalid horeris descriptor"
96
+ end
97
+ when @s.scan(/\A'((?:''|[^'])*)'/) ### 'quoted string'
98
+ return [
99
+ :STRING,
100
+ @s[1].gsub(/''/, "'")
101
+ ]
102
+ when @s.scan(/\A"((?:""|[^"])*)"/) ### 'double-quoted string'
103
+ return [
104
+ :STRING,
105
+ @s[1].gsub(/""/, '"')
106
+ ]
107
+ when @s.scan(/\A(\d+)/) ### digits
108
+ return [
109
+ :DIGITS,
110
+ @s[1].to_i
111
+ ]
112
+ when @s.scan(/\A([\(\)\/\$\:])/) ### {(|)|/|$}
113
+ return [
114
+ @s[1],
115
+ nil
116
+ ]
117
+ when @s.scan(/:/)
118
+ raise("format descriptor ':' is not supported.")
119
+ when @s.scan(/\A,/) ### blank
120
+ next
121
+ when @s.scan(/\A\s+/) ### blank
122
+ next
123
+ else
124
+ raise "FortranFormat parse error\n\t#{@s.string}\n\t#{' '*@s.pos}^"
125
+ end
126
+ end
127
+ end
128
+
129
+ end
130
+
131
+ class FortranFormatParser < Racc::Parser
132
+
133
+ module_eval(<<'...end fortran_format.y/module_eval...', 'fortran_format.y', 79)
134
+
135
+ def parse (str)
136
+ @scan = FortranFormatScanner.new(str)
137
+ @scale = 0
138
+ @continue = false
139
+ do_parse
140
+ end
141
+
142
+ def next_token
143
+ return @scan.yylex
144
+ end
145
+
146
+ ...end fortran_format.y/module_eval...
147
+ ##### State transition tables begin ###
148
+
149
+ racc_action_table = [
150
+ 6, 8, 10, 13, 16, 19, 22, 25, 29, 3,
151
+ 5, 33, 7, 9, 12, 15, 18, 21, 24, 27,
152
+ 1, 4, 6, 8, 10, 13, 16, 19, 22, 25,
153
+ 29, 3, 5, 35, 7, 9, 12, 15, 18, 21,
154
+ 24, 27, 1, 4, 6, 8, 10, 13, 16, 19,
155
+ 22, 25, 29, 3, 5, 30, 7, 9, 12, 15,
156
+ 18, 21, 24, 27, 1, 4, 6, 8, 10, 13,
157
+ 16, 19, 22, 25, 29, 3, 5, 36, 7, 9,
158
+ 12, 15, 18, 21, 24, 27, 1, 4, 5, nil,
159
+ 7, 9, 12, 15, 18, 21, 24, 27, 1, 4 ]
160
+
161
+ racc_action_check = [
162
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
163
+ 0, 11, 0, 0, 0, 0, 0, 0, 0, 0,
164
+ 0, 0, 31, 31, 31, 31, 31, 31, 31, 31,
165
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
166
+ 31, 31, 31, 31, 14, 14, 14, 14, 14, 14,
167
+ 14, 14, 14, 14, 14, 2, 14, 14, 14, 14,
168
+ 14, 14, 14, 14, 14, 14, 5, 5, 5, 5,
169
+ 5, 5, 5, 5, 5, 5, 5, 33, 5, 5,
170
+ 5, 5, 5, 5, 5, 5, 5, 5, 6, nil,
171
+ 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 ]
172
+
173
+ racc_action_pointer = [
174
+ -2, nil, 31, nil, nil, 64, 76, nil, nil, nil,
175
+ nil, 11, nil, nil, 42, nil, nil, nil, nil, nil,
176
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
177
+ nil, 20, nil, 77, nil, nil, nil ]
178
+
179
+ racc_action_default = [
180
+ -31, -28, -19, -16, -29, -31, -31, -20, -8, -21,
181
+ -9, -31, -22, -10, -1, -23, -11, -2, -24, -12,
182
+ -4, -25, -13, -5, -26, -14, -6, -27, -18, -15,
183
+ -30, -31, -7, -31, -3, -17, 37 ]
184
+
185
+ racc_goto_table = [
186
+ 34, 14, 11, 32, nil, nil, 31, nil, nil, nil,
187
+ nil, nil, nil, nil, nil, nil, nil, 34 ]
188
+
189
+ racc_goto_check = [
190
+ 3, 2, 1, 6, nil, nil, 2, nil, nil, nil,
191
+ nil, nil, nil, nil, nil, nil, nil, 3 ]
192
+
193
+ racc_goto_pointer = [
194
+ nil, 2, 1, -14, nil, nil, -3, nil, nil ]
195
+
196
+ racc_goto_default = [
197
+ nil, nil, nil, 17, 20, 23, 26, 28, 2 ]
198
+
199
+ racc_reduce_table = [
200
+ 0, 0, :racc_error,
201
+ 1, 26, :_reduce_1,
202
+ 1, 27, :_reduce_2,
203
+ 2, 27, :_reduce_3,
204
+ 1, 28, :_reduce_4,
205
+ 1, 28, :_reduce_5,
206
+ 1, 28, :_reduce_6,
207
+ 2, 28, :_reduce_7,
208
+ 1, 29, :_reduce_8,
209
+ 1, 30, :_reduce_9,
210
+ 1, 30, :_reduce_10,
211
+ 1, 30, :_reduce_11,
212
+ 1, 30, :_reduce_12,
213
+ 1, 30, :_reduce_13,
214
+ 1, 30, :_reduce_14,
215
+ 1, 30, :_reduce_15,
216
+ 1, 30, :_reduce_16,
217
+ 3, 31, :_reduce_17,
218
+ 1, 31, :_reduce_none,
219
+ 1, 31, :_reduce_none,
220
+ 1, 31, :_reduce_20,
221
+ 1, 32, :_reduce_21,
222
+ 1, 32, :_reduce_22,
223
+ 1, 32, :_reduce_23,
224
+ 1, 32, :_reduce_24,
225
+ 1, 32, :_reduce_25,
226
+ 1, 33, :_reduce_26,
227
+ 1, 33, :_reduce_27,
228
+ 1, 33, :_reduce_28,
229
+ 1, 33, :_reduce_29,
230
+ 2, 33, :_reduce_30 ]
231
+
232
+ racc_reduce_n = 31
233
+
234
+ racc_shift_n = 37
235
+
236
+ racc_token_table = {
237
+ false => 0,
238
+ :error => 1,
239
+ :DIGITS => 2,
240
+ :H => 3,
241
+ :STRING => 4,
242
+ :P => 5,
243
+ :Sp => 6,
244
+ :B => 7,
245
+ :T => 8,
246
+ :TR => 9,
247
+ :TL => 10,
248
+ "$" => 11,
249
+ "(" => 12,
250
+ ")" => 13,
251
+ "/" => 14,
252
+ :X => 15,
253
+ :A => 16,
254
+ :I => 17,
255
+ :L => 18,
256
+ :F => 19,
257
+ :E => 20,
258
+ :ES => 21,
259
+ :D => 22,
260
+ :G => 23,
261
+ :EXP => 24 }
262
+
263
+ racc_nt_base = 25
264
+
265
+ racc_use_result_var = true
266
+
267
+ Racc_arg = [
268
+ racc_action_table,
269
+ racc_action_check,
270
+ racc_action_default,
271
+ racc_action_pointer,
272
+ racc_goto_table,
273
+ racc_goto_check,
274
+ racc_goto_default,
275
+ racc_goto_pointer,
276
+ racc_nt_base,
277
+ racc_reduce_table,
278
+ racc_token_table,
279
+ racc_shift_n,
280
+ racc_reduce_n,
281
+ racc_use_result_var ]
282
+
283
+ Racc_token_to_s_table = [
284
+ "$end",
285
+ "error",
286
+ "DIGITS",
287
+ "H",
288
+ "STRING",
289
+ "P",
290
+ "Sp",
291
+ "B",
292
+ "T",
293
+ "TR",
294
+ "TL",
295
+ "\"$\"",
296
+ "\"(\"",
297
+ "\")\"",
298
+ "\"/\"",
299
+ "X",
300
+ "A",
301
+ "I",
302
+ "L",
303
+ "F",
304
+ "E",
305
+ "ES",
306
+ "D",
307
+ "G",
308
+ "EXP",
309
+ "$start",
310
+ "format",
311
+ "format_string",
312
+ "format_spec",
313
+ "hollerith",
314
+ "unrepeatable",
315
+ "repeatable",
316
+ "fixed_point",
317
+ "floating_point" ]
318
+
319
+ Racc_debug_parser = false
320
+
321
+ ##### State transition tables end #####
322
+
323
+ # reduce 0 omitted
324
+
325
+ module_eval(<<'.,.,', 'fortran_format.y', 22)
326
+ def _reduce_1(val, _values, result)
327
+ if val[0].size == 1 and val[0].first.is_a?(Group)
328
+ result = val[0].first
329
+ else
330
+ result = Group.new(1,val[0])
331
+ end
332
+
333
+ result
334
+ end
335
+ .,.,
336
+
337
+ module_eval(<<'.,.,', 'fortran_format.y', 30)
338
+ def _reduce_2(val, _values, result)
339
+ result = [val[0]]
340
+ result
341
+ end
342
+ .,.,
343
+
344
+ module_eval(<<'.,.,', 'fortran_format.y', 32)
345
+ def _reduce_3(val, _values, result)
346
+ result = val[0] + [val[1]]
347
+ result
348
+ end
349
+ .,.,
350
+
351
+ module_eval(<<'.,.,', 'fortran_format.y', 35)
352
+ def _reduce_4(val, _values, result)
353
+ result = val[0]
354
+ result
355
+ end
356
+ .,.,
357
+
358
+ module_eval(<<'.,.,', 'fortran_format.y', 36)
359
+ def _reduce_5(val, _values, result)
360
+ result = val[0]
361
+ result
362
+ end
363
+ .,.,
364
+
365
+ module_eval(<<'.,.,', 'fortran_format.y', 37)
366
+ def _reduce_6(val, _values, result)
367
+ result = val[0]
368
+ result
369
+ end
370
+ .,.,
371
+
372
+ module_eval(<<'.,.,', 'fortran_format.y', 39)
373
+ def _reduce_7(val, _values, result)
374
+ val[1].count = val[0]; result = val[1]
375
+ result
376
+ end
377
+ .,.,
378
+
379
+ module_eval(<<'.,.,', 'fortran_format.y', 41)
380
+ def _reduce_8(val, _values, result)
381
+ result = NodeH.new(*val[0])
382
+ result
383
+ end
384
+ .,.,
385
+
386
+ module_eval(<<'.,.,', 'fortran_format.y', 44)
387
+ def _reduce_9(val, _values, result)
388
+ result = NodeS.new(val[0])
389
+ result
390
+ end
391
+ .,.,
392
+
393
+ module_eval(<<'.,.,', 'fortran_format.y', 45)
394
+ def _reduce_10(val, _values, result)
395
+ result = NodeP.new(val[0])
396
+ result
397
+ end
398
+ .,.,
399
+
400
+ module_eval(<<'.,.,', 'fortran_format.y', 46)
401
+ def _reduce_11(val, _values, result)
402
+ result = NodeSp.new(val[0])
403
+ result
404
+ end
405
+ .,.,
406
+
407
+ module_eval(<<'.,.,', 'fortran_format.y', 47)
408
+ def _reduce_12(val, _values, result)
409
+ result = NodeB.new(val[0])
410
+ result
411
+ end
412
+ .,.,
413
+
414
+ module_eval(<<'.,.,', 'fortran_format.y', 48)
415
+ def _reduce_13(val, _values, result)
416
+ result = NodeT.new(val[0])
417
+ result
418
+ end
419
+ .,.,
420
+
421
+ module_eval(<<'.,.,', 'fortran_format.y', 49)
422
+ def _reduce_14(val, _values, result)
423
+ result = NodeTR.new(val[0])
424
+ result
425
+ end
426
+ .,.,
427
+
428
+ module_eval(<<'.,.,', 'fortran_format.y', 50)
429
+ def _reduce_15(val, _values, result)
430
+ result = NodeTL.new(val[0])
431
+ result
432
+ end
433
+ .,.,
434
+
435
+ module_eval(<<'.,.,', 'fortran_format.y', 51)
436
+ def _reduce_16(val, _values, result)
437
+ result = Continue.new
438
+ result
439
+ end
440
+ .,.,
441
+
442
+ module_eval(<<'.,.,', 'fortran_format.y', 55)
443
+ def _reduce_17(val, _values, result)
444
+ result = Group.new(1,val[1])
445
+ result
446
+ end
447
+ .,.,
448
+
449
+ # reduce 18 omitted
450
+
451
+ # reduce 19 omitted
452
+
453
+ module_eval(<<'.,.,', 'fortran_format.y', 58)
454
+ def _reduce_20(val, _values, result)
455
+ result = Flush.new(1)
456
+ result
457
+ end
458
+ .,.,
459
+
460
+ module_eval(<<'.,.,', 'fortran_format.y', 61)
461
+ def _reduce_21(val, _values, result)
462
+ result = NodeX.new(1)
463
+ result
464
+ end
465
+ .,.,
466
+
467
+ module_eval(<<'.,.,', 'fortran_format.y', 62)
468
+ def _reduce_22(val, _values, result)
469
+ result = NodeA.new(1, val[0])
470
+ result
471
+ end
472
+ .,.,
473
+
474
+ module_eval(<<'.,.,', 'fortran_format.y', 63)
475
+ def _reduce_23(val, _values, result)
476
+ result = NodeI.new(1, *val[0])
477
+ result
478
+ end
479
+ .,.,
480
+
481
+ module_eval(<<'.,.,', 'fortran_format.y', 64)
482
+ def _reduce_24(val, _values, result)
483
+ result = NodeL.new(1, *val[0])
484
+ result
485
+ end
486
+ .,.,
487
+
488
+ module_eval(<<'.,.,', 'fortran_format.y', 65)
489
+ def _reduce_25(val, _values, result)
490
+ result = NodeF.new(1, *val[0])
491
+ result
492
+ end
493
+ .,.,
494
+
495
+ module_eval(<<'.,.,', 'fortran_format.y', 68)
496
+ def _reduce_26(val, _values, result)
497
+ result = NodeE.new(1, *val[0])
498
+ result
499
+ end
500
+ .,.,
501
+
502
+ module_eval(<<'.,.,', 'fortran_format.y', 69)
503
+ def _reduce_27(val, _values, result)
504
+ result = NodeES.new(1, *val[0])
505
+ result
506
+ end
507
+ .,.,
508
+
509
+ module_eval(<<'.,.,', 'fortran_format.y', 70)
510
+ def _reduce_28(val, _values, result)
511
+ result = NodeE.new(1, *val[0])
512
+ result
513
+ end
514
+ .,.,
515
+
516
+ module_eval(<<'.,.,', 'fortran_format.y', 71)
517
+ def _reduce_29(val, _values, result)
518
+ result = NodeG.new(1, *val[0])
519
+ result
520
+ end
521
+ .,.,
522
+
523
+ module_eval(<<'.,.,', 'fortran_format.y', 73)
524
+ def _reduce_30(val, _values, result)
525
+ result = val[0]; result.exp = val[1]
526
+ result
527
+ end
528
+ .,.,
529
+
530
+ def _reduce_none(val, _values, result)
531
+ val[0]
532
+ end
533
+
534
+ end # class FortranFormatParser
535
+
536
+