ruby-dcl 1.7.1 → 1.8.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/ChangeLog +1149 -365
- data/LICENSE.txt +1 -1
- data/Rakefile +7 -11
- data/demo/gokuraku/hop/hop.rb +1 -2
- data/demo/gokuraku/jump/jump1.rb +1 -2
- data/demo/gokuraku/jump/jump2.rb +2 -3
- data/demo/gokuraku/layout/lay1.rb +1 -2
- data/demo/gokuraku/layout/lay2.rb +1 -2
- data/demo/gokuraku/step/step0.rb +1 -2
- data/demo/gokuraku/step/step1.rb +1 -2
- data/demo/gokuraku/step/step2.rb +1 -2
- data/demo/gokuraku/u1d/u1d1.rb +1 -2
- data/demo/gokuraku/u1d/u1d2.rb +1 -2
- data/demo/gokuraku/u2d/u2d1.rb +1 -2
- data/demo/gokuraku/u2d/u2d2.rb +1 -2
- data/demo/gokuraku/u2d/u2d3.rb +1 -2
- data/demo/gokuraku/u2d/u2d4.rb +1 -2
- data/demo/grph1/scpack/scpkt2.rb +1 -2
- data/demo/grph1/scpack/scpkt3.rb +1 -2
- data/demo/grph1/scpack/scpkt6.rb +1 -2
- data/demo/grph1/scpack/scpkt7.rb +1 -2
- data/demo/grph1/scpack/scpkt8.rb +1 -2
- data/demo/grph1/sgpack/sgfont.rb +2 -3
- data/demo/grph1/sgpack/sgfonz.rb +2 -3
- data/demo/grph1/sgpack/sgksx1.rb +1 -2
- data/demo/grph1/sgpack/sgksx2.rb +1 -2
- data/demo/grph1/sgpack/sgksx3.rb +1 -2
- data/demo/grph1/sgpack/sglidx.rb +1 -2
- data/demo/grph1/sgpack/sgltyp.rb +1 -2
- data/demo/grph1/sgpack/sgpk01.rb +1 -2
- data/demo/grph1/sgpack/sgpk02.rb +1 -2
- data/demo/grph1/sgpack/sgpk03.rb +1 -2
- data/demo/grph1/sgpack/sgpk04.rb +1 -2
- data/demo/grph1/sgpack/sgpk05.rb +1 -2
- data/demo/grph1/sgpack/sgpk06.rb +1 -2
- data/demo/grph1/sgpack/sgpk07.rb +9 -8
- data/demo/grph1/sgpack/sgpk08.rb +1 -2
- data/demo/grph1/sgpack/sgpk09.rb +1 -2
- data/demo/grph1/sgpack/sgpk10.rb +1 -2
- data/demo/grph1/sgpack/sgtclr.rb +1 -2
- data/demo/grph1/sgpack/sgtone.rb +1 -2
- data/demo/grph1/sgpack/sgtonz.rb +1 -2
- data/demo/grph1/slpack/slpk01.rb +1 -2
- data/demo/grph1/slpack/slpk02.rb +1 -2
- data/demo/grph1/slpack/slpk03.rb +1 -2
- data/demo/grph1/slpack/slpk04.rb +2 -3
- data/demo/grph2/grpack/grpk01.rb +1 -2
- data/demo/grph2/ucpack/ucpk01.rb +1 -2
- data/demo/grph2/ucpack/ucpk02.rb +1 -2
- data/demo/grph2/udegpk/u2df01.rb +1 -2
- data/demo/grph2/udegpk/u2df02.rb +1 -2
- data/demo/grph2/udegpk/u2df03.rb +3 -4
- data/demo/grph2/udegpk/u2df04.rb +1 -2
- data/demo/grph2/udegpk/u2df05.rb +1 -2
- data/demo/grph2/udegpk/u2df06.rb +1 -2
- data/demo/grph2/udegpk/u2df07.rb +1 -2
- data/demo/grph2/udegpk/u2df08.rb +1 -2
- data/demo/grph2/udegpk/u2df09b.rb +0 -1
- data/demo/grph2/udegpk/u2df09c.rb +0 -1
- data/demo/grph2/udegpk/u2df09e.rb +0 -1
- data/demo/grph2/udegpk/u2df09f.rb +0 -1
- data/demo/grph2/uipack/uipk01.rb +1 -2
- data/demo/grph2/uipack/uipk02.rb +26 -18
- data/demo/grph2/uipack/uipk03.rb +50 -0
- data/demo/grph2/ulpack/ulpk01.rb +1 -2
- data/demo/grph2/ulpack/ulpk01n.rb +1 -2
- data/demo/grph2/ulpack/ulpk02.rb +1 -2
- data/demo/grph2/ulpack/ulpk02n.rb +1 -2
- data/demo/grph2/umpack/test01.rb +1 -2
- data/demo/grph2/umpack/test02.rb +1 -2
- data/demo/grph2/umpack/test03.rb +1 -2
- data/demo/grph2/umpack/test04.rb +2 -3
- data/demo/grph2/umpack/test05.rb +1 -2
- data/demo/grph2/umpack/test05r.rb +86 -0
- data/demo/grph2/umpack/test06.rb +1 -2
- data/demo/grph2/umpack/test07.rb +1 -2
- data/demo/grph2/umpack/test08.rb +1 -2
- data/demo/grph2/umpack/test10.rb +0 -1
- data/demo/grph2/umpack/umpk01.rb +1 -2
- data/demo/grph2/umpack/umpk02.rb +1 -2
- data/demo/grph2/umpack/umpk03.rb +1 -2
- data/demo/grph2/umpack/umpk04.rb +1 -2
- data/demo/grph2/umpack/umpk05.rb +1 -2
- data/demo/grph2/uspack/uspk01.rb +1 -2
- data/demo/grph2/uspack/uspk02.rb +1 -2
- data/demo/grph2/uspack/uspk03.rb +1 -2
- data/demo/grph2/uspack/uspk04.rb +1 -2
- data/demo/grph2/uspack/uspk05.rb +1 -2
- data/demo/grph2/uspack/uspk06.rb +2 -3
- data/demo/grph2/uspack/uspk07.rb +1 -2
- data/demo/grph2/uspack/uspk08.rb +2 -3
- data/demo/grph2/uspack/uspk09.rb +1 -2
- data/demo/grph2/uspack/uspk10.rb +1 -2
- data/demo/grph2/uspack/uspk11.rb +1 -2
- data/demo/grph2/uspack/uspk12.rb +1 -2
- data/demo/grph2/uupack/uupk01.rb +1 -2
- data/demo/grph2/uupack/uupk02.rb +1 -2
- data/demo/grph2/uupack/uupk03.rb +1 -2
- data/demo/grph2/uupack/uupk04.rb +1 -2
- data/demo/grph2/uupack/uupk05.rb +1 -2
- data/demo/grph2/uupack/uupk06.rb +1 -2
- data/demo/grph2/uupack/uupk07.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz01.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz02.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz03.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz04.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz05.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz06.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz07.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz08.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz09.rb +1 -2
- data/demo/grph2/uxyzpk/uxyz10.rb +1 -2
- data/demo/grph2/ximage/ximg01.rb +2 -3
- data/demo/math1/clsplib/cslb01.rb +1 -2
- data/demo/math2/fftlib/fftl01.rb +1 -2
- data/demo/math2/fftlib/fftl02.rb +1 -2
- data/demo/math2/intrlib/intr01.rb +1 -2
- data/demo/math2/rnmlib/rnml01.rb +1 -2
- data/demo/math2/vstlib/vstl01.rb +1 -2
- data/demo/math2/vstlib/vstl02.rb +1 -2
- data/demo/misc2/tmpack/tmpk01.rb +46 -0
- data/demo/misc2/tmpack/tmpk02.rb +58 -0
- data/demo/misc2/tmpack/tmpk03.rb +56 -0
- data/demo/rakuraku/color/color1.rb +1 -2
- data/demo/rakuraku/color/color2.rb +5 -5
- data/demo/rakuraku/color/color3.rb +1 -2
- data/demo/rakuraku/kihon/kihon1.rb +1 -2
- data/demo/rakuraku/kihon/kihon2.rb +1 -2
- data/demo/rakuraku/kihon/kihon3.rb +1 -2
- data/demo/rakuraku/kihon/kihon4.rb +1 -2
- data/demo/rakuraku/kihon/kihon5.rb +1 -2
- data/demo/rakuraku/kihon/kihon6.rb +1 -2
- data/demo/rakuraku/kihon/kihon7.rb +10 -5
- data/demo/rakuraku/kihon/kihon8.rb +1 -2
- data/demo/rakuraku/kihon/kihon9.rb +1 -2
- data/demo/rakuraku/kihon/kihona.rb +1 -2
- data/demo/rakuraku/kihon/kihonb.rb +12 -11
- data/demo/rakuraku/kihon/kihonc.rb +1 -2
- data/demo/rakuraku/layout/lay1.rb +1 -2
- data/demo/rakuraku/layout/lay2.rb +1 -2
- data/demo/rakuraku/layout/lay3.rb +1 -2
- data/demo/rakuraku/map3d/map3d1.rb +1 -2
- data/demo/rakuraku/map3d/map3d2.rb +1 -2
- data/demo/rakuraku/map3d/map3d3.rb +1 -2
- data/demo/rakuraku/map3d/map3d4.rb +1 -2
- data/demo/rakuraku/map3d/map3d5.rb +1 -2
- data/demo/rakuraku/map3d/map3d6.rb +0 -1
- data/demo/rakuraku/map3d/map3d7.rb +0 -1
- data/demo/rakuraku/miss/miss1.rb +1 -2
- data/demo/rakuraku/miss/miss2.rb +1 -2
- data/demo/rakuraku/quick/quick1.rb +1 -2
- data/demo/rakuraku/quick/quick2.rb +1 -2
- data/demo/rakuraku/quick/quick3.rb +1 -2
- data/demo/rakuraku/quick/quick4.rb +1 -2
- data/demo/rakuraku/quick/quick5.rb +1 -2
- data/demo/rakuraku/u2d/u2d1.rb +1 -2
- data/demo/rakuraku/u2d/u2d2.rb +1 -2
- data/demo/rakuraku/u2d/u2d3.rb +1 -2
- data/demo/rakuraku/u2d/u2d4.rb +1 -2
- data/demo/rakuraku/u2d/u2d5.rb +1 -2
- data/demo/rakuraku/u2d/u2d6.rb +1 -2
- data/demo/rakuraku/u2d/u2d7.rb +1 -2
- data/demo/rakuraku/uspack/uspac1.rb +2 -3
- data/demo/rakuraku/uspack/uspac2.rb +1 -2
- data/demo/rakuraku/uspack/uspac3.rb +2 -3
- data/demo/rakuraku/uspack/uspac4.rb +1 -2
- data/demo/rakuraku/uxyz/uxyz1.rb +1 -2
- data/demo/rakuraku/uxyz/uxyz2.rb +1 -2
- data/demo/rakuraku/uxyz/uxyz3.rb +1 -2
- data/demo/rakuraku/uxyz/uxyz4.rb +1 -2
- data/demo/rakuraku/uxyz/uxyz5.rb +1 -2
- data/demo/rakuraku/uxyz/uxyz6.rb +1 -2
- data/demo/rakuraku/uxyz/uxyz7.rb +1 -2
- data/demo/rakuraku/uxyz/uxyz8.rb +1 -2
- data/demo/rubydcloriginal/uemrkz1.rb +0 -1
- data/ext/numru/dcl_cary2obj.c +29 -24
- data/ext/numru/dcl_narrayed_funcs.c +21 -21
- data/ext/numru/dcl_obj2cary.c +9 -5
- data/ext/numru/dcl_rubydcloriginal.c +14 -5
- data/ext/numru/extconf.rb +73 -61
- data/ext/numru/grph1_csgi.c +38 -8
- data/ext/numru/grph1_scpack.c +49 -46
- data/ext/numru/grph1_sgpack.c +167 -164
- data/ext/numru/grph1_slpack.c +23 -20
- data/ext/numru/grph1_stpack.c +44 -41
- data/ext/numru/grph1_swpack.c +155 -92
- data/ext/numru/grph2_grpack.c +22 -19
- data/ext/numru/grph2_ucpack.c +55 -52
- data/ext/numru/grph2_udpack.c +61 -58
- data/ext/numru/grph2_uepack.c +60 -57
- data/ext/numru/grph2_ugpack.c +49 -46
- data/ext/numru/grph2_uhpack.c +25 -22
- data/ext/numru/grph2_uipack.c +57 -54
- data/ext/numru/grph2_ulpack.c +59 -56
- data/ext/numru/grph2_umpack.c +75 -72
- data/ext/numru/grph2_uspack.c +97 -94
- data/ext/numru/grph2_uupack.c +78 -75
- data/ext/numru/grph2_uvpack.c +25 -22
- data/ext/numru/grph2_uwpack.c +30 -27
- data/ext/numru/grph2_uxpack.c +23 -20
- data/ext/numru/grph2_uypack.c +23 -20
- data/ext/numru/grph2_uzpack.c +69 -66
- data/ext/numru/init.c.default +6 -2
- data/ext/numru/math1_blklib.c +13 -10
- data/ext/numru/math1_chrlib.c +16 -13
- data/ext/numru/math1_clsplib.c +13 -10
- data/ext/numru/math1_fnclib.c +16 -13
- data/ext/numru/math1_gnmlib.c +21 -18
- data/ext/numru/math1_gt2dlib.c +18 -15
- data/ext/numru/math1_ifalib.c +18 -15
- data/ext/numru/math1_indxlib.c +24 -21
- data/ext/numru/math1_intlib.c +13 -10
- data/ext/numru/math1_lrllib.c +33 -30
- data/ext/numru/math1_maplib.c +14 -11
- data/ext/numru/math1_oslib.c +11 -8
- data/ext/numru/math1_rfalib.c +39 -36
- data/ext/numru/math1_rfblib.c +12 -9
- data/ext/numru/math1_sublib.c +13 -10
- data/ext/numru/math1_syslib.c +82 -79
- data/ext/numru/math1_vialib.c +31 -28
- data/ext/numru/math1_viblib.c +24 -21
- data/ext/numru/math1_vralib.c +31 -28
- data/ext/numru/math1_vrblib.c +24 -21
- data/ext/numru/math1_xfclib.c +12 -9
- data/ext/numru/math2_fftlib.c +28 -25
- data/ext/numru/math2_intrlib.c +11 -8
- data/ext/numru/math2_rnmlib.c +12 -9
- data/ext/numru/math2_shtlib.c +34 -31
- data/ext/numru/math2_vstlib.c +15 -12
- data/ext/numru/misc1_chnlib.c +12 -9
- data/ext/numru/misc1_datelib.c +36 -33
- data/ext/numru/misc1_fmtlib.c +10 -7
- data/ext/numru/misc1_misclib.c +11 -8
- data/ext/numru/misc1_randlib.c +13 -10
- data/ext/numru/misc1_timelib.c +20 -17
- data/ext/numru/misc2_tmpack.c +1200 -0
- data/lib/numru/dcl/dcl.rb +5676 -0
- data/lib/numru/dcl/version.rb +5 -0
- data/lib/numru/dcl.rb +6 -5580
- data/ruby-dcl.gemspec +13 -9
- metadata +25 -99
- data/.gitignore +0 -13
- data/.rspec +0 -2
- data/.travis.yml +0 -3
- data/GenWrapper/Makefile +0 -15
- data/GenWrapper/cproto2init.rb +0 -41
- data/GenWrapper/dcl_narrayed_funcs.rb +0 -181
- data/GenWrapper/dcl_rb_footing +0 -29
- data/GenWrapper/dcl_rb_heading +0 -123
- data/GenWrapper/def.rb +0 -20
- data/GenWrapper/elim_ary_size.rb +0 -398
- data/GenWrapper/etc/p_header +0 -64
- data/GenWrapper/pparse.rb +0 -137
- data/GenWrapper/proto/Makefile +0 -36
- data/GenWrapper/proto/grph1_00 +0 -17
- data/GenWrapper/proto/grph1_csgi.fp +0 -27
- data/GenWrapper/proto/grph1_scpack.fp +0 -442
- data/GenWrapper/proto/grph1_sgpack.fp +0 -1772
- data/GenWrapper/proto/grph1_slpack.fp +0 -316
- data/GenWrapper/proto/grph1_stpack.fp +0 -455
- data/GenWrapper/proto/grph1_swpack.fp +0 -826
- data/GenWrapper/proto/grph2_00 +0 -16
- data/GenWrapper/proto/grph2_grpack.fp +0 -139
- data/GenWrapper/proto/grph2_ucpack.fp +0 -522
- data/GenWrapper/proto/grph2_udpack.fp +0 -692
- data/GenWrapper/proto/grph2_uepack.fp +0 -601
- data/GenWrapper/proto/grph2_ugpack.fp +0 -436
- data/GenWrapper/proto/grph2_uhpack.fp +0 -246
- data/GenWrapper/proto/grph2_uipack.fp +0 -508
- data/GenWrapper/proto/grph2_ulpack.fp +0 -516
- data/GenWrapper/proto/grph2_umpack.fp +0 -676
- data/GenWrapper/proto/grph2_uspack.fp +0 -989
- data/GenWrapper/proto/grph2_uupack.fp +0 -663
- data/GenWrapper/proto/grph2_uvpack.fp +0 -246
- data/GenWrapper/proto/grph2_uwpack.fp +0 -203
- data/GenWrapper/proto/grph2_uxpack.fp +0 -295
- data/GenWrapper/proto/grph2_uypack.fp +0 -295
- data/GenWrapper/proto/grph2_uzpack.fp +0 -574
- data/GenWrapper/proto/math1_00 +0 -12
- data/GenWrapper/proto/math1_blklib.fp +0 -58
- data/GenWrapper/proto/math1_chrlib.fp +0 -83
- data/GenWrapper/proto/math1_clsplib.fp +0 -74
- data/GenWrapper/proto/math1_fnclib.fp +0 -79
- data/GenWrapper/proto/math1_gnmlib.fp +0 -118
- data/GenWrapper/proto/math1_gt2dlib.fp +0 -144
- data/GenWrapper/proto/math1_ifalib.fp +0 -123
- data/GenWrapper/proto/math1_indxlib.fp +0 -222
- data/GenWrapper/proto/math1_intlib.fp +0 -46
- data/GenWrapper/proto/math1_lrllib.fp +0 -276
- data/GenWrapper/proto/math1_maplib.fp +0 -24
- data/GenWrapper/proto/math1_oslib.fp +0 -28
- data/GenWrapper/proto/math1_rfalib.fp +0 -420
- data/GenWrapper/proto/math1_rfblib.fp +0 -51
- data/GenWrapper/proto/math1_sublib.fp +0 -60
- data/GenWrapper/proto/math1_syslib.fp +0 -767
- data/GenWrapper/proto/math1_vialib.fp +0 -339
- data/GenWrapper/proto/math1_viblib.fp +0 -264
- data/GenWrapper/proto/math1_vralib.fp +0 -339
- data/GenWrapper/proto/math1_vrblib.fp +0 -264
- data/GenWrapper/proto/math1_xfclib.fp +0 -68
- data/GenWrapper/proto/math2_00 +0 -12
- data/GenWrapper/proto/math2_fftlib.fp +0 -803
- data/GenWrapper/proto/math2_intrlib.fp +0 -32
- data/GenWrapper/proto/math2_odelib.fp_notused +0 -568
- data/GenWrapper/proto/math2_rnmlib.fp +0 -54
- data/GenWrapper/proto/math2_shtlib.fp +0 -1292
- data/GenWrapper/proto/math2_vstlib.fp +0 -84
- data/GenWrapper/proto/misc1_00 +0 -17
- data/GenWrapper/proto/misc1_chnlib.fp +0 -47
- data/GenWrapper/proto/misc1_datelib.fp +0 -352
- data/GenWrapper/proto/misc1_fmtlib.fp +0 -19
- data/GenWrapper/proto/misc1_misclib.fp +0 -26
- data/GenWrapper/proto/misc1_randlib.fp +0 -50
- data/GenWrapper/proto/misc1_timelib.fp +0 -151
- data/GenWrapper/proto2c.rb +0 -13
- data/GenWrapper/prototype.rb +0 -209
- data/GenWrapper/util.rb +0 -9
- data/GenWrapper/variable.rb +0 -671
- data/README +0 -29
- data/ToDo +0 -2
- data/bin/console +0 -14
- data/bin/setup +0 -7
- data/demo/grph2/ximage/MEMO +0 -23
- data/obsolete/README +0 -2
- data/obsolete/dcl_ext.html +0 -112
- data/obsolete/dcl_ext.rb +0 -313
data/GenWrapper/dcl_rb_heading
DELETED
@@ -1,123 +0,0 @@
|
|
1
|
-
require "narray"
|
2
|
-
require "numru/dcl_raw"
|
3
|
-
|
4
|
-
module NumRu
|
5
|
-
module DCL
|
6
|
-
init_arg($0,ARGV) if DCLVERSION >= "5.3.2"
|
7
|
-
|
8
|
-
#<<< private functions >>>
|
9
|
-
|
10
|
-
def not_nary( na )
|
11
|
-
if defined?(NArrayMiss)
|
12
|
-
!na.is_a?(NArray) && !na.is_a?(NArrayMiss)
|
13
|
-
else
|
14
|
-
!na.is_a?(NArray)
|
15
|
-
end
|
16
|
-
end
|
17
|
-
module_function :not_nary
|
18
|
-
private_class_method :not_nary
|
19
|
-
|
20
|
-
#<<< ??p(set|stx|get) >>>
|
21
|
-
|
22
|
-
%w!gl sl sg uc ud ue ug ui ul um uu uz!.each do |pkg|
|
23
|
-
%w!set stx!.each do |set|
|
24
|
-
eval <<-EOS
|
25
|
-
def #{pkg}p#{set}( name, value )
|
26
|
-
case name
|
27
|
-
when /^l/i
|
28
|
-
DCL.#{pkg}l#{set}(name,value)
|
29
|
-
when /^[i-n]/i
|
30
|
-
DCL.#{pkg}i#{set}(name,value)
|
31
|
-
else
|
32
|
-
DCL.#{pkg}r#{set}(name,value)
|
33
|
-
end
|
34
|
-
end
|
35
|
-
module_function :#{pkg}p#{set}
|
36
|
-
EOS
|
37
|
-
end
|
38
|
-
eval <<-EOS
|
39
|
-
def #{pkg}pget( name )
|
40
|
-
case name
|
41
|
-
when /^l/i
|
42
|
-
DCL.#{pkg}lget(name)
|
43
|
-
when /^[i-n]/i
|
44
|
-
DCL.#{pkg}iget(name)
|
45
|
-
else
|
46
|
-
DCL.#{pkg}rget(name)
|
47
|
-
end
|
48
|
-
end
|
49
|
-
module_function :#{pkg}pget
|
50
|
-
EOS
|
51
|
-
end
|
52
|
-
|
53
|
-
%w!us!.each do |pkg|
|
54
|
-
%w!set stx!.each do |set|
|
55
|
-
eval <<-EOS
|
56
|
-
def #{pkg}p#{set}( name, value )
|
57
|
-
case name
|
58
|
-
when /^c/i
|
59
|
-
DCL.#{pkg}c#{set}(name,value)
|
60
|
-
when /^l/i
|
61
|
-
DCL.#{pkg}l#{set}(name,value)
|
62
|
-
when /^[i-n]/i
|
63
|
-
DCL.#{pkg}i#{set}(name,value)
|
64
|
-
else
|
65
|
-
DCL.#{pkg}r#{set}(name,value)
|
66
|
-
end
|
67
|
-
end
|
68
|
-
module_function :#{pkg}p#{set}
|
69
|
-
EOS
|
70
|
-
end
|
71
|
-
eval <<-EOS
|
72
|
-
def #{pkg}pget( name )
|
73
|
-
case name
|
74
|
-
when /^c/i
|
75
|
-
DCL.#{pkg}cget(name)
|
76
|
-
when /^l/i
|
77
|
-
DCL.#{pkg}lget(name)
|
78
|
-
when /^[i-n]/i
|
79
|
-
DCL.#{pkg}iget(name)
|
80
|
-
else
|
81
|
-
DCL.#{pkg}rget(name)
|
82
|
-
end
|
83
|
-
end
|
84
|
-
module_function :#{pkg}pget
|
85
|
-
EOS
|
86
|
-
end
|
87
|
-
|
88
|
-
@@sw_char_params = [/^WSNAME/i,/^FONT/i,/^CL2TN$/i,/^FNAME$/i,/^TITLE$/i,
|
89
|
-
/^CLRMAP$/i,/^LPR$/i]
|
90
|
-
%w!set stx!.each do |set|
|
91
|
-
eval <<-EOS
|
92
|
-
def swp#{set}(name, value)
|
93
|
-
case name
|
94
|
-
when *@@sw_char_params
|
95
|
-
DCL.swc#{set}(name,value)
|
96
|
-
when /^l/i
|
97
|
-
DCL.swl#{set}(name,value)
|
98
|
-
when /^[i-n]/i
|
99
|
-
DCL.swi#{set}(name,value)
|
100
|
-
else
|
101
|
-
DCL.swr#{set}(name,value)
|
102
|
-
end
|
103
|
-
end
|
104
|
-
module_function :swp#{set}
|
105
|
-
EOS
|
106
|
-
end
|
107
|
-
def swpget( name )
|
108
|
-
case name
|
109
|
-
when *@@sw_char_params
|
110
|
-
DCL.swcget(name)
|
111
|
-
when /^l/i
|
112
|
-
DCL.swlget(name)
|
113
|
-
when /^[i-n]/i
|
114
|
-
DCL.swiget(name)
|
115
|
-
else
|
116
|
-
DCL.swrget(name)
|
117
|
-
end
|
118
|
-
end
|
119
|
-
module_function :swpget
|
120
|
-
|
121
|
-
|
122
|
-
#<<< to eliminate array length arguments >>>
|
123
|
-
|
data/GenWrapper/def.rb
DELETED
@@ -1,20 +0,0 @@
|
|
1
|
-
# def.rb
|
2
|
-
# $Id: def.rb,v 1.1.1.1 2011/02/23 07:21:28 horinout Exp $
|
3
|
-
|
4
|
-
OBJ2CCHARARY = "dcl_obj2ccharary"
|
5
|
-
OBJ2CINTEGERARY = "dcl_obj2cintegerary"
|
6
|
-
OBJ2CREALARY = "dcl_obj2crealary"
|
7
|
-
OBJ2CCOMPLEXARY = "dcl_obj2ccomplexary"
|
8
|
-
OBJ2CLOGICALARY = "dcl_obj2clogicalary"
|
9
|
-
|
10
|
-
CCHARARY2OBJ = "dcl_ccharary2obj"
|
11
|
-
CINTEGERARY2OBJ = "dcl_cintegerary2obj"
|
12
|
-
CREALARY2OBJ = "dcl_crealary2obj"
|
13
|
-
CCOMPLEXARY2OBJ = "dcl_ccomplexary2obj"
|
14
|
-
CLOGICALARY2OBJ = "dcl_clogicalary2obj"
|
15
|
-
|
16
|
-
FREECCHARARY = "dcl_freeccharary"
|
17
|
-
FREECINTEGERARY = "dcl_freecintegerary"
|
18
|
-
FREECREALARY = "dcl_freecrealary"
|
19
|
-
FREECCOMPLEXARY = "dcl_freeccomplexary"
|
20
|
-
FREECLOGICALARY = "dcl_freeclogicalary"
|
data/GenWrapper/elim_ary_size.rb
DELETED
@@ -1,398 +0,0 @@
|
|
1
|
-
# Eliminate array size arguments
|
2
|
-
# May 13, 2002 T. Horinouchi
|
3
|
-
#
|
4
|
-
# Usage:
|
5
|
-
# % ruby generate_new_rbdcl.rb proto_files
|
6
|
-
# where files are grph2_uvpack.fp math2_fftlib.fb etc (in the proto directory)
|
7
|
-
|
8
|
-
class Variable
|
9
|
-
def initialize(decl)
|
10
|
-
name, *tmp = decl.split.reverse
|
11
|
-
tmp.reverse!
|
12
|
-
attr = (tmp[-1] =~ /^[a-z]+$/ ? tmp.pop : "i")
|
13
|
-
ary = (tmp[-1] =~ /^\((.*)\)/ ? (tmp.pop; $1.downcase) : false)
|
14
|
-
vtype = tmp.pop
|
15
|
-
if (/(\d+)|\*\((.*)\)/ =~ vtype)
|
16
|
-
charlen = ($1||$2).downcase # may be charcter length
|
17
|
-
vtype = vtype.scan(/\w+/)[0]
|
18
|
-
else
|
19
|
-
charlen = nil
|
20
|
-
end
|
21
|
-
@name = name.downcase
|
22
|
-
@attr = attr
|
23
|
-
@ary = ary
|
24
|
-
@vtype = vtype.downcase
|
25
|
-
end
|
26
|
-
|
27
|
-
attr_reader(:name, :attr, :ary, :vtype)
|
28
|
-
end
|
29
|
-
|
30
|
-
def pre_filter(decl)
|
31
|
-
case $method_name
|
32
|
-
when /(^ud|^ue|^ui)/
|
33
|
-
# replace MX with NX
|
34
|
-
decl.gsub!('MX','NX')
|
35
|
-
when /^ug/
|
36
|
-
# replace MU & MV with NX
|
37
|
-
decl.gsub!(/(MU|MV)/,'NX')
|
38
|
-
end
|
39
|
-
decl
|
40
|
-
end
|
41
|
-
|
42
|
-
def extract_args(proto)
|
43
|
-
args_org = []
|
44
|
-
while ( decl = proto.gets )
|
45
|
-
break if decl =~ /^ *\)$/
|
46
|
-
decl = pre_filter(decl)
|
47
|
-
if ( decl !~ /^\s*$/ )
|
48
|
-
print decl if $DEBUG
|
49
|
-
var = Variable.new(decl)
|
50
|
-
p var if var.ary if $DEBUG
|
51
|
-
if var.attr != "o" && var.attr != "t"
|
52
|
-
args_org.push(var)
|
53
|
-
else
|
54
|
-
end
|
55
|
-
end
|
56
|
-
end
|
57
|
-
args_org
|
58
|
-
end
|
59
|
-
|
60
|
-
def has_array?( args )
|
61
|
-
args.each do |v|
|
62
|
-
return true if v.ary
|
63
|
-
end
|
64
|
-
false
|
65
|
-
end
|
66
|
-
|
67
|
-
def new_args( args_org )
|
68
|
-
del_argname = []
|
69
|
-
args_org.each do |v|
|
70
|
-
if ( (shape = v.ary) )
|
71
|
-
shape = shape.split(',')
|
72
|
-
shape.each do |lendef|
|
73
|
-
lpos = lendef.index(/([a-z]\w*)/)
|
74
|
-
m = $1
|
75
|
-
if ( lpos )
|
76
|
-
lpos2 = lendef.index(/([a-z]\w*)/,lpos+m.length)
|
77
|
-
if (!lpos2)
|
78
|
-
# to be deleted only when unambiguous
|
79
|
-
del_argname.push(m) if m && !del_argname.include?(m)
|
80
|
-
end
|
81
|
-
end
|
82
|
-
end
|
83
|
-
end
|
84
|
-
end
|
85
|
-
args_new = args_org.clone
|
86
|
-
del_argname.each do |nm|
|
87
|
-
args_new.delete_if {|v|
|
88
|
-
v.name == nm
|
89
|
-
}
|
90
|
-
end
|
91
|
-
print " ORG: ", args_org.collect{|i| i.name}.join(','),"\n" if $DEBUG
|
92
|
-
print " NEW: ", args_new.collect{|i| i.name}.join(','),"\n" if $DEBUG
|
93
|
-
print " args deleted: ",del_argname.join(','),"\n" if $DEBUG
|
94
|
-
[args_new, del_argname]
|
95
|
-
end
|
96
|
-
|
97
|
-
|
98
|
-
def new_def( args_org, args_new, del_argname )
|
99
|
-
method_def = <<-EOS
|
100
|
-
alias __#{$method_name} #{$method_name}
|
101
|
-
def #{$method_name}( #{args_new.collect{|i| i.name}.join(',')} )
|
102
|
-
EOS
|
103
|
-
method_def.concat( del_arg_deriv( args_new, del_argname ) )
|
104
|
-
args_org_names = args_org.collect{|arg| arg.name}
|
105
|
-
method_def.concat( check_array_size( args_new, args_org_names ) )
|
106
|
-
method_def.concat( <<-EOS
|
107
|
-
|
108
|
-
#< call the original method >
|
109
|
-
__#{$method_name}( #{args_org.collect{|i| i.name}.join(',')} )
|
110
|
-
end
|
111
|
-
module_function :#{$method_name}, :__#{$method_name}
|
112
|
-
private_class_method :__#{$method_name}
|
113
|
-
|
114
|
-
EOS
|
115
|
-
)
|
116
|
-
|
117
|
-
#print '*** ',method_def
|
118
|
-
method_def
|
119
|
-
end
|
120
|
-
|
121
|
-
#def wrap_in_rundef_rescue(
|
122
|
-
# if ( #{v.name}.is_a(Float) && x == glrget("RMISS") )
|
123
|
-
#end
|
124
|
-
|
125
|
-
def del_arg_deriv( args_new, del_argname )
|
126
|
-
deriv = ""
|
127
|
-
first = true
|
128
|
-
del_argname.each do |nm|
|
129
|
-
ary = []
|
130
|
-
args_new.each do |v|
|
131
|
-
if v.ary && v.ary =~ /\W*#{nm}\W*/
|
132
|
-
ary.push( [ v.name, inv_deriv(nm, v.ary, v.name) ] )
|
133
|
-
if (!possibly_rundef?(nm, v.name))
|
134
|
-
break
|
135
|
-
end
|
136
|
-
end
|
137
|
-
end
|
138
|
-
if(first)
|
139
|
-
deriv = <<-EOS
|
140
|
-
|
141
|
-
#< extract array size(s) (which was(were) formerly an argument(s)) >
|
142
|
-
EOS
|
143
|
-
first = false
|
144
|
-
end
|
145
|
-
deriv.concat( recursive_join( ary ) )
|
146
|
-
end
|
147
|
-
deriv
|
148
|
-
end
|
149
|
-
|
150
|
-
def possibly_rundef?(argname, varname)
|
151
|
-
case $method_name
|
152
|
-
when /(^usgrph|^usspnt)/
|
153
|
-
if( argname == 'n' && varname == 'x' )
|
154
|
-
return true
|
155
|
-
elsif ( argname == nil )
|
156
|
-
return true
|
157
|
-
end
|
158
|
-
when /(^uulin|^uumrk|^uv|^uh)/
|
159
|
-
if ( argname == 'n' &&
|
160
|
-
( varname == 'upx' || varname == 'upy' ||
|
161
|
-
varname == 'upx1' || varname == 'upx2' ||
|
162
|
-
varname == 'upy1' || varname == 'upy2' ) )
|
163
|
-
return true
|
164
|
-
elsif ( argname == nil )
|
165
|
-
return true
|
166
|
-
end
|
167
|
-
end
|
168
|
-
false
|
169
|
-
end
|
170
|
-
|
171
|
-
def recursive_join( ary )
|
172
|
-
first = ary.shift
|
173
|
-
if( ary.length > 0)
|
174
|
-
str = <<-EOS
|
175
|
-
if ! ( #{first[0]} == nil || #{first[0]}.is_a?(Float) && lreq( #{first[0]}, glrget("RUNDEF") ) )
|
176
|
-
#{first[1].gsub(/^/," ").chop}
|
177
|
-
else
|
178
|
-
EOS
|
179
|
-
str += <<-EOS
|
180
|
-
#{first[0]} = glrget("RUNDEF") if ( #{first[0]} == nil )
|
181
|
-
#{recursive_join(ary).gsub(/^/," ").chop}
|
182
|
-
end
|
183
|
-
EOS
|
184
|
-
else
|
185
|
-
first[1]
|
186
|
-
end
|
187
|
-
end
|
188
|
-
|
189
|
-
|
190
|
-
def inv_arithm(lendef, varname)
|
191
|
-
case lendef
|
192
|
-
when varname
|
193
|
-
form = "LEN"
|
194
|
-
when /^(\w+) *\* *#{varname}$/
|
195
|
-
form = "LEN / #{$1}"
|
196
|
-
when /^#{varname} *\/ *(\w+)$/
|
197
|
-
form = "LEN * #{$1}"
|
198
|
-
when /^#{varname} *\+ *(\w+)$/
|
199
|
-
form = "LEN - #{$1}"
|
200
|
-
when /^\(*(\w+) *\* *#{varname} *\+ *(\w+)\)*$/
|
201
|
-
form = "( LEN - #{$2} ) / #{$1}"
|
202
|
-
else
|
203
|
-
raise 'unsuppoerted dimension specification : '+lendef
|
204
|
-
end
|
205
|
-
form
|
206
|
-
end
|
207
|
-
|
208
|
-
def inv_deriv(argname, shape, aryname)
|
209
|
-
deriv = ""
|
210
|
-
shape = shape.split(',')
|
211
|
-
multiD = ( shape.length > 1 )
|
212
|
-
shape.each_index do |i|
|
213
|
-
if (lendef=shape[i]) =~ /\W*#{argname}\W*/
|
214
|
-
idim = i
|
215
|
-
form = inv_arithm( lendef, argname )
|
216
|
-
form.sub!('LEN',"len_#{aryname}_#{idim}")
|
217
|
-
if multiD
|
218
|
-
deriv = <<-EOS
|
219
|
-
if ( not_nary(#{aryname}) || (#{aryname}.rank < #{idim+1}) )
|
220
|
-
raise "#{aryname} must be a NArray of rank == #{shape.length}"
|
221
|
-
end
|
222
|
-
len_#{aryname}_#{idim} = #{aryname}.shape[#{idim}]
|
223
|
-
EOS
|
224
|
-
else
|
225
|
-
deriv = <<-EOS
|
226
|
-
len_#{aryname}_#{idim} = #{aryname}.length
|
227
|
-
EOS
|
228
|
-
end
|
229
|
-
deriv.concat( <<-EOS
|
230
|
-
#{argname} = #{form}
|
231
|
-
EOS
|
232
|
-
)
|
233
|
-
print deriv if $DEBUG
|
234
|
-
break
|
235
|
-
end
|
236
|
-
end
|
237
|
-
deriv
|
238
|
-
end
|
239
|
-
|
240
|
-
def aster2dimlen_if_possible( varname, dimlen )
|
241
|
-
if $method_name =~ /(^rvmax|^rvmin)/ && varname == 'rx'
|
242
|
-
dimlen.replace('(len=1; ns.each{|i| len*=i}; len)')
|
243
|
-
true
|
244
|
-
else
|
245
|
-
raise $!
|
246
|
-
end
|
247
|
-
end
|
248
|
-
|
249
|
-
def consist_of_names?(str, names)
|
250
|
-
ary = str.split(/\W/).uniq
|
251
|
-
names.each{|str| ary.delete(str)}
|
252
|
-
ary.each do |str|
|
253
|
-
return false if (/^\d*$/ !~ str)
|
254
|
-
end
|
255
|
-
true
|
256
|
-
end
|
257
|
-
|
258
|
-
def check_array_size( args_new, args_org_names )
|
259
|
-
body = <<-EOS
|
260
|
-
|
261
|
-
#< check array size(s) >
|
262
|
-
EOS
|
263
|
-
args_new.each do |v|
|
264
|
-
if ( v.ary )
|
265
|
-
shape = v.ary.split(',')
|
266
|
-
if ( shape.length == 1 )
|
267
|
-
arylen_replaced = false
|
268
|
-
if ( shape[0] == '*' )
|
269
|
-
begin
|
270
|
-
raise "Array #{v.name} is declared using *"
|
271
|
-
rescue
|
272
|
-
arylen_replaced = aster2dimlen_if_possible( v.name, shape[0] )
|
273
|
-
end
|
274
|
-
end
|
275
|
-
if possibly_rundef?(nil, v.name)
|
276
|
-
ins = "\\\n #{v.name}!=nil && !( #{v.name}.is_a?(Float) && lreq(#{v.name},glrget(\"RUNDEF\")) ) && "
|
277
|
-
else
|
278
|
-
ins = ""
|
279
|
-
end
|
280
|
-
if arylen_replaced || consist_of_names?(shape[0], args_org_names )
|
281
|
-
body.concat( <<-EOS
|
282
|
-
raise "Invalid array length: #{v.name}.length != #{shape[0]}" if #{ins}#{v.name}.length != (#{shape[0]})
|
283
|
-
EOS
|
284
|
-
)
|
285
|
-
end
|
286
|
-
else
|
287
|
-
shape.each_index do |i|
|
288
|
-
if ( shape[i] == '*' )
|
289
|
-
raise "Array #{v.name}'s #{i}-th dim is declared using *"
|
290
|
-
end
|
291
|
-
body.concat( <<-EOS
|
292
|
-
raise "Invalid array shape: #{v.name}.shape[#{i}] != #{shape[i]}" if #{v.name}.shape[#{i}] != (#{shape[i]})
|
293
|
-
EOS
|
294
|
-
)
|
295
|
-
end
|
296
|
-
end
|
297
|
-
end
|
298
|
-
end
|
299
|
-
body
|
300
|
-
end
|
301
|
-
|
302
|
-
def head
|
303
|
-
f = File.open('dcl_rb_heading')
|
304
|
-
heading = f .readlines
|
305
|
-
f.close
|
306
|
-
heading
|
307
|
-
end
|
308
|
-
|
309
|
-
def foot
|
310
|
-
f = File.open('dcl_rb_footing')
|
311
|
-
footing = f .readlines
|
312
|
-
f.close
|
313
|
-
footing
|
314
|
-
end
|
315
|
-
|
316
|
-
def close
|
317
|
-
return <<-EOS
|
318
|
-
end
|
319
|
-
end
|
320
|
-
EOS
|
321
|
-
end
|
322
|
-
|
323
|
-
def post_filter( ndf )
|
324
|
-
if $method_name == 'udcntz'
|
325
|
-
ndf.sub!(/,nbr2/,'')
|
326
|
-
add = <<-EOS
|
327
|
-
# derivation of nbr2 is provied aditionally in the method post_filter:
|
328
|
-
nbr2 = (nx+2)*(ny+2)*6/32+4
|
329
|
-
|
330
|
-
EOS
|
331
|
-
ndf =~ /(^ *\#.*check array size.*$)/
|
332
|
-
ndf[$1] = add + $1
|
333
|
-
end
|
334
|
-
end
|
335
|
-
|
336
|
-
def delete_comment(src) # [ruby-list:32030] [ruby-list:32049]
|
337
|
-
src.gsub(%r@ ([\'\"])(\\.|.)*?\1
|
338
|
-
| (/\*.*?\*/)
|
339
|
-
| (//)[^\n]*$
|
340
|
-
@mx) {
|
341
|
-
if $3
|
342
|
-
s = $3.delete("^\n")
|
343
|
-
s = ' ' if s.empty?
|
344
|
-
s
|
345
|
-
elsif $4
|
346
|
-
''
|
347
|
-
else
|
348
|
-
$&
|
349
|
-
end
|
350
|
-
}
|
351
|
-
end
|
352
|
-
|
353
|
-
##################### (main) ###########################
|
354
|
-
require "tempfile"
|
355
|
-
files = ARGV
|
356
|
-
ofilename = "../lib/dcl.rb"
|
357
|
-
ofile = open( ofilename, "w+" )
|
358
|
-
ofile.puts( head() )
|
359
|
-
for f in files
|
360
|
-
print "processing file #{f}\n"
|
361
|
-
#proto = open("| cat #{f} | gcc -E -", "r+")
|
362
|
-
#proto.close_write
|
363
|
-
fl = File.open(f)
|
364
|
-
proto = Tempfile.new('proto', '.')
|
365
|
-
proto.print( delete_comment(fl.read) )
|
366
|
-
proto.sync
|
367
|
-
proto.rewind
|
368
|
-
fl.close
|
369
|
-
while ( line = proto.gets )
|
370
|
-
case line
|
371
|
-
when /^ *SUBROUTINE *(\w+)|^ *\w+ *FUNCTION *(\w+)/
|
372
|
-
$method_name = ( $1 || $2 ).downcase
|
373
|
-
print $method_name+"\n" if $DEBUG
|
374
|
-
args_org = extract_args(proto)
|
375
|
-
if ( has_array?(args_org) )
|
376
|
-
# redefine the method
|
377
|
-
args_new, del_argname = new_args( args_org )
|
378
|
-
ndf = new_def( args_org, args_new, del_argname )
|
379
|
-
post_filter( ndf )
|
380
|
-
ofile.puts( ndf )
|
381
|
-
end
|
382
|
-
when /^#if *DCLVER *([<=>]+) *(\d\d\d)/
|
383
|
-
op = $1
|
384
|
-
ver = "'"+$2.split(//).join('.')+"'" # "'5.3.1'" etc
|
385
|
-
ver.sub!(/\.0/,'')
|
386
|
-
ofile.print(" if DCLVERSION #{op} #{ver}\n")
|
387
|
-
when /^#endif/
|
388
|
-
ofile.print(" end\n\n")
|
389
|
-
end
|
390
|
-
end
|
391
|
-
proto.close
|
392
|
-
end
|
393
|
-
|
394
|
-
ofile.puts( foot() )
|
395
|
-
ofile.puts( close() )
|
396
|
-
ofile.close
|
397
|
-
|
398
|
-
print "generated the DCL module file #{ofilename}\n"
|
data/GenWrapper/etc/p_header
DELETED
@@ -1,64 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
* $Id: p_header,v 1.3 2015/03/18 03:27:42 horinout Exp $
|
3
|
-
*/
|
4
|
-
|
5
|
-
#include <stdio.h>
|
6
|
-
#include "ruby.h"
|
7
|
-
#include "libtinyf2c.h"
|
8
|
-
#include "narray.h"
|
9
|
-
#include "cdcl.h"
|
10
|
-
|
11
|
-
/* for compatibility with ruby 1.6 */
|
12
|
-
#ifndef StringValuePtr
|
13
|
-
#define StringValuePtr(s) STR2CSTR(s)
|
14
|
-
#endif
|
15
|
-
|
16
|
-
#define DFLT_SIZE 32
|
17
|
-
|
18
|
-
extern char *dcl_obj2ccharary(VALUE, int, int);
|
19
|
-
extern integer *dcl_obj2cintegerary(VALUE);
|
20
|
-
extern real *dcl_obj2crealary(VALUE);
|
21
|
-
extern complex *dcl_obj2ccomplexary(VALUE);
|
22
|
-
extern logical *dcl_obj2clogicalary(VALUE);
|
23
|
-
|
24
|
-
extern VALUE dcl_ccharary2obj(char *, int, int);
|
25
|
-
extern VALUE dcl_cintegerary2obj(integer *, int, int, int *);
|
26
|
-
extern VALUE dcl_crealary2obj(real *, int, int, int *);
|
27
|
-
extern VALUE dcl_ccomplexary2obj(complex *, int, char *);
|
28
|
-
extern VALUE dcl_clogicalary2obj(logical *, int, int, int *);
|
29
|
-
|
30
|
-
extern void dcl_freeccharary(char *);
|
31
|
-
extern void dcl_freecintegerary(integer *);
|
32
|
-
extern void dcl_freecrealary(real *);
|
33
|
-
extern void dcl_freeccomplexary(complex *);
|
34
|
-
extern void dcl_freeclogicalary(logical *);
|
35
|
-
|
36
|
-
/* for functions which return real */
|
37
|
-
/* fnclib */
|
38
|
-
extern real rd2r_(real *);
|
39
|
-
extern real rr2d_(real *);
|
40
|
-
extern real rexp_(real *, integer *, integer *);
|
41
|
-
extern real rfpi_(void);
|
42
|
-
extern real rmod_(real *, real *);
|
43
|
-
/* gnmlib */
|
44
|
-
extern real rgnlt_(real *);
|
45
|
-
extern real rgnle_(real *);
|
46
|
-
extern real rgngt_(real *);
|
47
|
-
extern real rgnge_(real *);
|
48
|
-
/* rfalib */
|
49
|
-
extern real rmax_(real *, integer *, integer *);
|
50
|
-
extern real rmin_(real *, integer *, integer *);
|
51
|
-
extern real rsum_(real *, integer *, integer *);
|
52
|
-
extern real rave_(real *, integer *, integer *);
|
53
|
-
extern real rvar_(real *, integer *, integer *);
|
54
|
-
extern real rstd_(real *, integer *, integer *);
|
55
|
-
extern real rrms_(real *, integer *, integer *);
|
56
|
-
extern real ramp_(real *, integer *, integer *);
|
57
|
-
/* rfblib */
|
58
|
-
extern real rprd_(real *, real *, integer *, integer *, integer *);
|
59
|
-
extern real rcov_(real *, real *, integer *, integer *, integer *);
|
60
|
-
extern real rcor_(real *, real *, integer *, integer *, integer *);
|
61
|
-
|
62
|
-
|
63
|
-
extern VALUE mDCL;
|
64
|
-
|