carray 1.3.7 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +0 -7
  3. data/Rakefile +31 -0
  4. data/carray.gemspec +9 -14
  5. data/carray.h +4 -0
  6. data/carray_access.c +50 -8
  7. data/carray_conversion.c +3 -3
  8. data/carray_generate.c +67 -1
  9. data/carray_math.rb +22 -22
  10. data/carray_operator.c +23 -0
  11. data/devel/im2col.rb +17 -0
  12. data/lib/carray.rb +32 -1
  13. data/lib/carray/autoload/autoload_base.rb +0 -4
  14. data/lib/carray/autoload/autoload_gem_cairo.rb +9 -0
  15. data/lib/carray/autoload/autoload_gem_ffi.rb +9 -0
  16. data/lib/carray/autoload/autoload_gem_gnuplot.rb +2 -0
  17. data/lib/carray/autoload/autoload_gem_io_csv.rb +14 -0
  18. data/lib/carray/autoload/autoload_gem_io_pg.rb +6 -0
  19. data/lib/carray/autoload/autoload_gem_io_sqlite3.rb +12 -0
  20. data/lib/carray/autoload/autoload_gem_narray.rb +10 -0
  21. data/lib/carray/autoload/autoload_gem_numo_narray.rb +14 -0
  22. data/lib/carray/autoload/autoload_gem_opencv.rb +16 -0
  23. data/lib/carray/autoload/autoload_gem_rmagick.rb +23 -0
  24. data/lib/carray/autoload/{autoload_graphics_zimg.rb → autoload_gem_zimg.rb} +0 -0
  25. data/lib/carray/base/autoload.rb +47 -5
  26. data/lib/carray/base/basic.rb +58 -2
  27. data/lib/carray/base/math.rb +1 -1
  28. data/lib/carray/base/string.rb +242 -0
  29. data/mkmath.rb +12 -2
  30. data/version.h +5 -5
  31. metadata +29 -109
  32. data/Gemfile +0 -8
  33. data/Gemfile.lock +0 -33
  34. data/ext/calculus/lib/autoload/autoload_math_calculus.rb +0 -2
  35. data/ext/fortio/extconf.rb +0 -3
  36. data/ext/fortio/lib/carray/autoload/autoload_fortran_format.rb +0 -5
  37. data/ext/fortio/lib/carray/io/fortran_format.rb +0 -43
  38. data/ext/fortio/lib/fortio.rb +0 -3
  39. data/ext/fortio/lib/fortio/fortran_format.rb +0 -605
  40. data/ext/fortio/lib/fortio/fortran_format.tab.rb +0 -536
  41. data/ext/fortio/lib/fortio/fortran_format.y +0 -215
  42. data/ext/fortio/lib/fortio/fortran_namelist.rb +0 -151
  43. data/ext/fortio/lib/fortio/fortran_namelist.tab.rb +0 -470
  44. data/ext/fortio/lib/fortio/fortran_namelist.y +0 -213
  45. data/ext/fortio/lib/fortio/fortran_sequential.rb +0 -345
  46. data/ext/fortio/ruby_fortio.c +0 -182
  47. data/ext/fortio/test/test_H.rb +0 -5
  48. data/ext/fortio/test/test_T.rb +0 -7
  49. data/ext/fortio/test/test_fortran_format.rb +0 -86
  50. data/ext/fortio/test/test_namelist.rb +0 -25
  51. data/ext/fortio/test/test_namelist_write.rb +0 -10
  52. data/ext/fortio/test/test_sequential.rb +0 -13
  53. data/ext/fortio/test/test_sequential2.rb +0 -13
  54. data/ext/fortio/work/test.rb +0 -10
  55. data/ext/fortio/work/test_e.rb +0 -19
  56. data/ext/fortio/work/test_ep.rb +0 -10
  57. data/ext/fortio/work/test_parse.rb +0 -12
  58. data/ext/mathfunc/lib/autoload/autoload_math_mathfunc.rb +0 -1
  59. data/ext/mathfunc/lib/math/mathfunc.rb +0 -15
  60. data/ext/narray/README +0 -22
  61. data/ext/narray/ca_wrap_narray.c +0 -500
  62. data/ext/narray/carray_narray.c +0 -21
  63. data/ext/narray/extconf.rb +0 -57
  64. data/ext/narray/lib/autoload/autoload_math_narray.rb +0 -1
  65. data/ext/narray/lib/autoload/autoload_math_narray_miss.rb +0 -11
  66. data/ext/narray/lib/math/narray.rb +0 -17
  67. data/ext/narray/lib/math/narray_miss.rb +0 -45
  68. data/lib/carray/autoload/autoload_graphics_gnuplot.rb +0 -2
  69. data/lib/carray/autoload/autoload_io_csv.rb +0 -14
  70. data/lib/carray/autoload/autoload_io_numo.rb +0 -9
  71. data/lib/carray/autoload/autoload_io_pg.rb +0 -6
  72. data/lib/carray/autoload/autoload_io_sqlite3.rb +0 -12
  73. data/lib/carray/graphics/gnuplot.rb +0 -2141
  74. data/lib/carray/graphics/zimg.rb +0 -296
  75. data/lib/carray/io/csv.rb +0 -572
  76. data/lib/carray/io/numo.rb +0 -52
  77. data/lib/carray/io/pg.rb +0 -101
  78. data/lib/carray/io/sqlite3.rb +0 -215
@@ -1,536 +0,0 @@
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
-