ruby-dcl 1.6.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (319) hide show
  1. data/ChangeLog +321 -0
  2. data/GenWrapper/Makefile +14 -0
  3. data/GenWrapper/cproto2init.rb +41 -0
  4. data/GenWrapper/dcl_narrayed_funcs.rb +181 -0
  5. data/GenWrapper/dcl_rb_footing +29 -0
  6. data/GenWrapper/dcl_rb_heading +129 -0
  7. data/GenWrapper/def.rb +20 -0
  8. data/GenWrapper/elim_ary_size.rb +398 -0
  9. data/GenWrapper/etc/Mk_proto +375 -0
  10. data/GenWrapper/etc/dcl_gen +13 -0
  11. data/GenWrapper/etc/p_header +63 -0
  12. data/GenWrapper/etc/p_init +410 -0
  13. data/GenWrapper/pparse.rb +137 -0
  14. data/GenWrapper/proto/Makefile +35 -0
  15. data/GenWrapper/proto/grph1_00 +17 -0
  16. data/GenWrapper/proto/grph1_csgi.fp +27 -0
  17. data/GenWrapper/proto/grph1_scpack.fp +442 -0
  18. data/GenWrapper/proto/grph1_sgpack.fp +1406 -0
  19. data/GenWrapper/proto/grph1_slpack.fp +316 -0
  20. data/GenWrapper/proto/grph1_stpack.fp +411 -0
  21. data/GenWrapper/proto/grph1_swpack.fp +746 -0
  22. data/GenWrapper/proto/grph2_00 +16 -0
  23. data/GenWrapper/proto/grph2_grpack.fp +139 -0
  24. data/GenWrapper/proto/grph2_ucpack.fp +522 -0
  25. data/GenWrapper/proto/grph2_udpack.fp +692 -0
  26. data/GenWrapper/proto/grph2_uepack.fp +601 -0
  27. data/GenWrapper/proto/grph2_ugpack.fp +436 -0
  28. data/GenWrapper/proto/grph2_uhpack.fp +246 -0
  29. data/GenWrapper/proto/grph2_ulpack.fp +516 -0
  30. data/GenWrapper/proto/grph2_umpack.fp +676 -0
  31. data/GenWrapper/proto/grph2_uspack.fp +989 -0
  32. data/GenWrapper/proto/grph2_uupack.fp +663 -0
  33. data/GenWrapper/proto/grph2_uvpack.fp +246 -0
  34. data/GenWrapper/proto/grph2_uwpack.fp +203 -0
  35. data/GenWrapper/proto/grph2_uxpack.fp +295 -0
  36. data/GenWrapper/proto/grph2_uypack.fp +295 -0
  37. data/GenWrapper/proto/grph2_uzpack.fp +574 -0
  38. data/GenWrapper/proto/math1_00 +12 -0
  39. data/GenWrapper/proto/math1_blklib.fp +58 -0
  40. data/GenWrapper/proto/math1_chrlib.fp +83 -0
  41. data/GenWrapper/proto/math1_fnclib.fp +79 -0
  42. data/GenWrapper/proto/math1_gnmlib.fp +118 -0
  43. data/GenWrapper/proto/math1_gt2dlib.fp +144 -0
  44. data/GenWrapper/proto/math1_ifalib.fp +123 -0
  45. data/GenWrapper/proto/math1_indxlib.fp +222 -0
  46. data/GenWrapper/proto/math1_intlib.fp +46 -0
  47. data/GenWrapper/proto/math1_lrllib.fp +276 -0
  48. data/GenWrapper/proto/math1_maplib.fp +24 -0
  49. data/GenWrapper/proto/math1_oslib.fp +28 -0
  50. data/GenWrapper/proto/math1_rfalib.fp +420 -0
  51. data/GenWrapper/proto/math1_rfblib.fp +51 -0
  52. data/GenWrapper/proto/math1_sublib.fp +60 -0
  53. data/GenWrapper/proto/math1_syslib.fp +767 -0
  54. data/GenWrapper/proto/math1_vialib.fp +339 -0
  55. data/GenWrapper/proto/math1_viblib.fp +264 -0
  56. data/GenWrapper/proto/math1_vralib.fp +339 -0
  57. data/GenWrapper/proto/math1_vrblib.fp +264 -0
  58. data/GenWrapper/proto/math1_xfclib.fp +68 -0
  59. data/GenWrapper/proto/math2_00 +12 -0
  60. data/GenWrapper/proto/math2_fftlib.fp +803 -0
  61. data/GenWrapper/proto/math2_intrlib.fp +32 -0
  62. data/GenWrapper/proto/math2_odelib.fp_notused +568 -0
  63. data/GenWrapper/proto/math2_rnmlib.fp +54 -0
  64. data/GenWrapper/proto/math2_shtlib.fp +1292 -0
  65. data/GenWrapper/proto/math2_shtlib.fp_old +1294 -0
  66. data/GenWrapper/proto/math2_vstlib.fp +84 -0
  67. data/GenWrapper/proto/misc1_00 +17 -0
  68. data/GenWrapper/proto/misc1_chnlib.fp +47 -0
  69. data/GenWrapper/proto/misc1_datelib.fp +352 -0
  70. data/GenWrapper/proto/misc1_fmtlib.fp +19 -0
  71. data/GenWrapper/proto/misc1_misclib.fp +26 -0
  72. data/GenWrapper/proto/misc1_randlib.fp +36 -0
  73. data/GenWrapper/proto/misc1_timelib.fp +151 -0
  74. data/GenWrapper/proto2c.rb +13 -0
  75. data/GenWrapper/prototype.rb +209 -0
  76. data/GenWrapper/util.rb +9 -0
  77. data/GenWrapper/variable.rb +671 -0
  78. data/README +29 -0
  79. data/Rakefile +44 -0
  80. data/ToDo +2 -0
  81. data/dcl_cary2obj.c +354 -0
  82. data/dcl_narrayed_funcs.c +518 -0
  83. data/dcl_obj2cary.c +512 -0
  84. data/dcl_rubydcloriginal.c +129 -0
  85. data/demo/gokuraku/hop/hop.rb +26 -0
  86. data/demo/gokuraku/jump/jump1.rb +64 -0
  87. data/demo/gokuraku/jump/jump2.rb +50 -0
  88. data/demo/gokuraku/layout/lay1.rb +46 -0
  89. data/demo/gokuraku/layout/lay2.rb +44 -0
  90. data/demo/gokuraku/step/step0.rb +34 -0
  91. data/demo/gokuraku/step/step1.rb +84 -0
  92. data/demo/gokuraku/step/step2.rb +62 -0
  93. data/demo/gokuraku/u1d/u1d1.rb +37 -0
  94. data/demo/gokuraku/u1d/u1d2.rb +50 -0
  95. data/demo/gokuraku/u2d/u2d1.rb +46 -0
  96. data/demo/gokuraku/u2d/u2d2.rb +49 -0
  97. data/demo/gokuraku/u2d/u2d3.rb +45 -0
  98. data/demo/gokuraku/u2d/u2d4.rb +61 -0
  99. data/demo/grph1/scpack/scpkt2.rb +40 -0
  100. data/demo/grph1/scpack/scpkt3.rb +102 -0
  101. data/demo/grph1/scpack/scpkt6.rb +84 -0
  102. data/demo/grph1/scpack/scpkt7.rb +59 -0
  103. data/demo/grph1/scpack/scpkt8.rb +60 -0
  104. data/demo/grph1/scpack/t810630.dat +296 -0
  105. data/demo/grph1/scpack/t811231.dat +296 -0
  106. data/demo/grph1/sgpack/sgfont.rb +52 -0
  107. data/demo/grph1/sgpack/sgfonz.rb +53 -0
  108. data/demo/grph1/sgpack/sgksx1.rb +44 -0
  109. data/demo/grph1/sgpack/sgksx2.rb +90 -0
  110. data/demo/grph1/sgpack/sgksx3.rb +75 -0
  111. data/demo/grph1/sgpack/sglidx.rb +40 -0
  112. data/demo/grph1/sgpack/sgltyp.rb +48 -0
  113. data/demo/grph1/sgpack/sgpk01.rb +39 -0
  114. data/demo/grph1/sgpack/sgpk02.rb +79 -0
  115. data/demo/grph1/sgpack/sgpk03.rb +107 -0
  116. data/demo/grph1/sgpack/sgpk04.rb +86 -0
  117. data/demo/grph1/sgpack/sgpk05.rb +66 -0
  118. data/demo/grph1/sgpack/sgpk06.rb +91 -0
  119. data/demo/grph1/sgpack/sgpk07.rb +66 -0
  120. data/demo/grph1/sgpack/sgpk08.rb +67 -0
  121. data/demo/grph1/sgpack/sgpk09.rb +61 -0
  122. data/demo/grph1/sgpack/sgpk10.rb +58 -0
  123. data/demo/grph1/sgpack/sgtclr.rb +59 -0
  124. data/demo/grph1/sgpack/sgtone.rb +70 -0
  125. data/demo/grph1/sgpack/sgtonz.rb +66 -0
  126. data/demo/grph1/slpack/slpk01.rb +37 -0
  127. data/demo/grph1/slpack/slpk02.rb +29 -0
  128. data/demo/grph1/slpack/slpk03.rb +36 -0
  129. data/demo/grph1/slpack/slpk04.rb +36 -0
  130. data/demo/grph2/g2pack/g2pk01.rb +78 -0
  131. data/demo/grph2/g2pack/g2pk02.rb +75 -0
  132. data/demo/grph2/grpack/grpk01.rb +65 -0
  133. data/demo/grph2/ucpack/ucpk01.rb +95 -0
  134. data/demo/grph2/ucpack/ucpk02.rb +95 -0
  135. data/demo/grph2/udegpk/u2df01.rb +50 -0
  136. data/demo/grph2/udegpk/u2df02.rb +76 -0
  137. data/demo/grph2/udegpk/u2df03.rb +80 -0
  138. data/demo/grph2/udegpk/u2df04.rb +52 -0
  139. data/demo/grph2/udegpk/u2df05.rb +70 -0
  140. data/demo/grph2/udegpk/u2df06.rb +59 -0
  141. data/demo/grph2/udegpk/u2df07.rb +68 -0
  142. data/demo/grph2/udegpk/u2df08.rb +91 -0
  143. data/demo/grph2/udegpk/u2df09b.rb +88 -0
  144. data/demo/grph2/udegpk/u2df09c.rb +89 -0
  145. data/demo/grph2/udegpk/u2df09e.rb +88 -0
  146. data/demo/grph2/udegpk/u2df09f.rb +89 -0
  147. data/demo/grph2/ulpack/ulpk01.rb +111 -0
  148. data/demo/grph2/ulpack/ulpk01n.rb +111 -0
  149. data/demo/grph2/ulpack/ulpk02.rb +111 -0
  150. data/demo/grph2/ulpack/ulpk02n.rb +111 -0
  151. data/demo/grph2/umpack/t811231.dat +296 -0
  152. data/demo/grph2/umpack/test01.rb +69 -0
  153. data/demo/grph2/umpack/test02.rb +64 -0
  154. data/demo/grph2/umpack/test03.rb +84 -0
  155. data/demo/grph2/umpack/test04.rb +54 -0
  156. data/demo/grph2/umpack/test05.rb +85 -0
  157. data/demo/grph2/umpack/test06.rb +44 -0
  158. data/demo/grph2/umpack/test07.rb +43 -0
  159. data/demo/grph2/umpack/test08.rb +37 -0
  160. data/demo/grph2/umpack/test09.rb +86 -0
  161. data/demo/grph2/umpack/test10.rb +52 -0
  162. data/demo/grph2/umpack/umpk01.rb +65 -0
  163. data/demo/grph2/umpack/umpk02.rb +54 -0
  164. data/demo/grph2/umpack/umpk03.rb +46 -0
  165. data/demo/grph2/umpack/umpk04.rb +65 -0
  166. data/demo/grph2/umpack/umpk05.rb +84 -0
  167. data/demo/grph2/uspack/uspk01.rb +39 -0
  168. data/demo/grph2/uspack/uspk02.rb +47 -0
  169. data/demo/grph2/uspack/uspk03.rb +38 -0
  170. data/demo/grph2/uspack/uspk04.rb +64 -0
  171. data/demo/grph2/uspack/uspk05.rb +68 -0
  172. data/demo/grph2/uspack/uspk06.rb +43 -0
  173. data/demo/grph2/uspack/uspk07.rb +62 -0
  174. data/demo/grph2/uspack/uspk08.rb +46 -0
  175. data/demo/grph2/uspack/uspk09.rb +89 -0
  176. data/demo/grph2/uspack/uspk10.rb +48 -0
  177. data/demo/grph2/uspack/uspk11.rb +71 -0
  178. data/demo/grph2/uspack/uspk12.rb +51 -0
  179. data/demo/grph2/uupack/uupk01.rb +50 -0
  180. data/demo/grph2/uupack/uupk02.rb +74 -0
  181. data/demo/grph2/uupack/uupk03.rb +56 -0
  182. data/demo/grph2/uupack/uupk04.rb +84 -0
  183. data/demo/grph2/uupack/uupk05.rb +74 -0
  184. data/demo/grph2/uupack/uupk06.rb +77 -0
  185. data/demo/grph2/uupack/uupk07.rb +88 -0
  186. data/demo/grph2/uxyzpk/uxyz01.rb +38 -0
  187. data/demo/grph2/uxyzpk/uxyz02.rb +36 -0
  188. data/demo/grph2/uxyzpk/uxyz03.rb +37 -0
  189. data/demo/grph2/uxyzpk/uxyz04.rb +54 -0
  190. data/demo/grph2/uxyzpk/uxyz05.rb +41 -0
  191. data/demo/grph2/uxyzpk/uxyz06.rb +42 -0
  192. data/demo/grph2/uxyzpk/uxyz07.rb +38 -0
  193. data/demo/grph2/uxyzpk/uxyz08.rb +60 -0
  194. data/demo/grph2/uxyzpk/uxyz09.rb +52 -0
  195. data/demo/grph2/uxyzpk/uxyz10.rb +57 -0
  196. data/demo/grph2/ximage/MEMO +23 -0
  197. data/demo/grph2/ximage/tomsclm.dat +1344 -0
  198. data/demo/grph2/ximage/ximg01.rb +145 -0
  199. data/demo/math1/gt2dlib/gt2d01.rb +33 -0
  200. data/demo/math2/fftlib/fftl01.rb +28 -0
  201. data/demo/math2/fftlib/fftl02.rb +224 -0
  202. data/demo/math2/intrlib/intr01.rb +22 -0
  203. data/demo/math2/rnmlib/rnml01.rb +21 -0
  204. data/demo/math2/vstlib/vstl01.rb +29 -0
  205. data/demo/math2/vstlib/vstl02.rb +38 -0
  206. data/demo/rakuraku/color/color1.rb +61 -0
  207. data/demo/rakuraku/color/color2.rb +57 -0
  208. data/demo/rakuraku/color/color3.rb +81 -0
  209. data/demo/rakuraku/kihon/kihon1.rb +39 -0
  210. data/demo/rakuraku/kihon/kihon2.rb +56 -0
  211. data/demo/rakuraku/kihon/kihon3.rb +57 -0
  212. data/demo/rakuraku/kihon/kihon4.rb +70 -0
  213. data/demo/rakuraku/kihon/kihon5.rb +56 -0
  214. data/demo/rakuraku/kihon/kihon6.rb +40 -0
  215. data/demo/rakuraku/kihon/kihon7.rb +98 -0
  216. data/demo/rakuraku/kihon/kihon8.rb +93 -0
  217. data/demo/rakuraku/kihon/kihon9.rb +77 -0
  218. data/demo/rakuraku/kihon/kihona.rb +123 -0
  219. data/demo/rakuraku/kihon/kihonb.rb +73 -0
  220. data/demo/rakuraku/kihon/kihonc.rb +110 -0
  221. data/demo/rakuraku/layout/lay1.rb +29 -0
  222. data/demo/rakuraku/layout/lay2.rb +28 -0
  223. data/demo/rakuraku/layout/lay3.rb +29 -0
  224. data/demo/rakuraku/map3d/map3d1.rb +68 -0
  225. data/demo/rakuraku/map3d/map3d2.rb +67 -0
  226. data/demo/rakuraku/map3d/map3d3.rb +66 -0
  227. data/demo/rakuraku/map3d/map3d4.rb +107 -0
  228. data/demo/rakuraku/map3d/map3d5.rb +118 -0
  229. data/demo/rakuraku/map3d/map3d6.rb +96 -0
  230. data/demo/rakuraku/map3d/map3d7.rb +98 -0
  231. data/demo/rakuraku/miss/miss1.rb +76 -0
  232. data/demo/rakuraku/miss/miss2.rb +60 -0
  233. data/demo/rakuraku/quick/quick1.rb +35 -0
  234. data/demo/rakuraku/quick/quick2.rb +33 -0
  235. data/demo/rakuraku/quick/quick3.rb +46 -0
  236. data/demo/rakuraku/quick/quick4.rb +47 -0
  237. data/demo/rakuraku/quick/quick5.rb +46 -0
  238. data/demo/rakuraku/u2d/u2d1.rb +50 -0
  239. data/demo/rakuraku/u2d/u2d2.rb +51 -0
  240. data/demo/rakuraku/u2d/u2d3.rb +70 -0
  241. data/demo/rakuraku/u2d/u2d4.rb +59 -0
  242. data/demo/rakuraku/u2d/u2d5.rb +61 -0
  243. data/demo/rakuraku/u2d/u2d6.rb +57 -0
  244. data/demo/rakuraku/u2d/u2d7.rb +103 -0
  245. data/demo/rakuraku/uspack/uspac1.rb +35 -0
  246. data/demo/rakuraku/uspack/uspac2.rb +66 -0
  247. data/demo/rakuraku/uspack/uspac3.rb +37 -0
  248. data/demo/rakuraku/uspack/uspac4.rb +49 -0
  249. data/demo/rakuraku/uxyz/uxyz1.rb +37 -0
  250. data/demo/rakuraku/uxyz/uxyz2.rb +35 -0
  251. data/demo/rakuraku/uxyz/uxyz3.rb +38 -0
  252. data/demo/rakuraku/uxyz/uxyz4.rb +36 -0
  253. data/demo/rakuraku/uxyz/uxyz5.rb +57 -0
  254. data/demo/rakuraku/uxyz/uxyz6.rb +43 -0
  255. data/demo/rakuraku/uxyz/uxyz7.rb +39 -0
  256. data/demo/rakuraku/uxyz/uxyz8.rb +56 -0
  257. data/demo/rubydcloriginal/uemrkz1.rb +37 -0
  258. data/dummy.c +9 -0
  259. data/extconf.rb +133 -0
  260. data/grph1_csgi.c +119 -0
  261. data/grph1_scpack.c +1388 -0
  262. data/grph1_sgpack.c +3876 -0
  263. data/grph1_slpack.c +432 -0
  264. data/grph1_stpack.c +1044 -0
  265. data/grph1_swpack.c +1922 -0
  266. data/grph1_zgpack.c.org +141 -0
  267. data/grph2_grpack.c +368 -0
  268. data/grph2_ucpack.c +1232 -0
  269. data/grph2_udpack.c +1404 -0
  270. data/grph2_uepack.c +1443 -0
  271. data/grph2_ugpack.c +1073 -0
  272. data/grph2_uhpack.c +943 -0
  273. data/grph2_ulpack.c +1304 -0
  274. data/grph2_umpack.c +1540 -0
  275. data/grph2_uspack.c +2481 -0
  276. data/grph2_uupack.c +1689 -0
  277. data/grph2_uvpack.c +943 -0
  278. data/grph2_uwpack.c +552 -0
  279. data/grph2_uxpack.c +555 -0
  280. data/grph2_uypack.c +555 -0
  281. data/grph2_uzpack.c +1455 -0
  282. data/init.c.default +187 -0
  283. data/init.c.gtk +189 -0
  284. data/lib/dcl.rb +5084 -0
  285. data/math1_blklib.c +227 -0
  286. data/math1_chrlib.c +239 -0
  287. data/math1_fnclib.c +254 -0
  288. data/math1_gnmlib.c +356 -0
  289. data/math1_gt2dlib.c +514 -0
  290. data/math1_ifalib.c +427 -0
  291. data/math1_indxlib.c +709 -0
  292. data/math1_intlib.c +167 -0
  293. data/math1_lrllib.c +817 -0
  294. data/math1_maplib.c +172 -0
  295. data/math1_oslib.c +111 -0
  296. data/math1_rfalib.c +1417 -0
  297. data/math1_rfblib.c +232 -0
  298. data/math1_sublib.c +221 -0
  299. data/math1_syslib.c +2025 -0
  300. data/math1_vialib.c +1156 -0
  301. data/math1_viblib.c +1027 -0
  302. data/math1_vralib.c +1156 -0
  303. data/math1_vrblib.c +1027 -0
  304. data/math1_xfclib.c +142 -0
  305. data/math2_fftlib.c +833 -0
  306. data/math2_intrlib.c +138 -0
  307. data/math2_rnmlib.c +226 -0
  308. data/math2_shtlib.c +1568 -0
  309. data/math2_vstlib.c +366 -0
  310. data/misc1_chnlib.c +179 -0
  311. data/misc1_datelib.c +953 -0
  312. data/misc1_fmtlib.c +99 -0
  313. data/misc1_misclib.c +118 -0
  314. data/misc1_randlib.c +142 -0
  315. data/misc1_timelib.c +380 -0
  316. data/obsolete/README +2 -0
  317. data/obsolete/dcl_ext.html +112 -0
  318. data/obsolete/dcl_ext.rb +313 -0
  319. metadata +433 -0
data/grph2_ucpack.c ADDED
@@ -0,0 +1,1232 @@
1
+ /*
2
+ * $Id: p_header,v 1.2 2011-02-23 17:47:10 koshiro Exp $
3
+ */
4
+
5
+ #include <stdio.h>
6
+ #include "ruby.h"
7
+ #include "libtinyf2c.h"
8
+ #include "narray.h"
9
+
10
+ /* for compatibility with ruby 1.6 */
11
+ #ifndef StringValuePtr
12
+ #define StringValuePtr(s) STR2CSTR(s)
13
+ #endif
14
+
15
+ #define DFLT_SIZE 32
16
+
17
+ extern char *dcl_obj2ccharary(VALUE, int, int);
18
+ extern integer *dcl_obj2cintegerary(VALUE);
19
+ extern real *dcl_obj2crealary(VALUE);
20
+ extern complex *dcl_obj2ccomplexary(VALUE);
21
+ extern logical *dcl_obj2clogicalary(VALUE);
22
+
23
+ extern VALUE dcl_ccharary2obj(char *, int, int);
24
+ extern VALUE dcl_cintegerary2obj(integer *, int, int, int *);
25
+ extern VALUE dcl_crealary2obj(real *, int, int, int *);
26
+ extern VALUE dcl_ccomplexary2obj(complex *, int, char *);
27
+ extern VALUE dcl_clogicalary2obj(logical *, int, int, int *);
28
+
29
+ extern void dcl_freeccharary(char *);
30
+ extern void dcl_freecintegerary(integer *);
31
+ extern void dcl_freecrealary(real *);
32
+ extern void dcl_freeccomplexary(complex *);
33
+ extern void dcl_freeclogicalary(logical *);
34
+
35
+ /* for functions which return real */
36
+ /* fnclib */
37
+ extern real rd2r_(real *);
38
+ extern real rr2d_(real *);
39
+ extern real rexp_(real *, integer *, integer *);
40
+ extern real rfpi_(void);
41
+ extern real rmod_(real *, real *);
42
+ /* gnmlib */
43
+ extern real rgnlt_(real *);
44
+ extern real rgnle_(real *);
45
+ extern real rgngt_(real *);
46
+ extern real rgnge_(real *);
47
+ /* rfalib */
48
+ extern real rmax_(real *, integer *, integer *);
49
+ extern real rmin_(real *, integer *, integer *);
50
+ extern real rsum_(real *, integer *, integer *);
51
+ extern real rave_(real *, integer *, integer *);
52
+ extern real rvar_(real *, integer *, integer *);
53
+ extern real rstd_(real *, integer *, integer *);
54
+ extern real rrms_(real *, integer *, integer *);
55
+ extern real ramp_(real *, integer *, integer *);
56
+ /* rfblib */
57
+ extern real rprd_(real *, real *, integer *, integer *, integer *);
58
+ extern real rcov_(real *, real *, integer *, integer *, integer *);
59
+ extern real rcor_(real *, real *, integer *, integer *, integer *);
60
+
61
+
62
+ extern VALUE mDCL;
63
+
64
+ static VALUE
65
+ dcl_ucpqnp(obj)
66
+ VALUE obj;
67
+ {
68
+ integer o_ncp;
69
+ VALUE ncp;
70
+
71
+ ucpqnp_(&o_ncp);
72
+
73
+ ncp = INT2NUM(o_ncp);
74
+
75
+
76
+ return ncp;
77
+
78
+ }
79
+
80
+ static VALUE
81
+ dcl_ucpqid(obj, cp)
82
+ VALUE obj, cp;
83
+ {
84
+ char *i_cp;
85
+ integer o_idx;
86
+ VALUE idx;
87
+
88
+ if (TYPE(cp) != T_STRING) {
89
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
90
+ }
91
+
92
+ i_cp = StringValuePtr(cp);
93
+
94
+
95
+ ucpqid_(i_cp, &o_idx, (ftnlen)strlen(i_cp));
96
+
97
+ idx = INT2NUM(o_idx);
98
+
99
+
100
+ return idx;
101
+
102
+ }
103
+
104
+ static VALUE
105
+ dcl_ucpqcp(obj, idx)
106
+ VALUE obj, idx;
107
+ {
108
+ integer i_idx;
109
+ char *o_cp;
110
+ VALUE cp;
111
+
112
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
113
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
114
+ }
115
+
116
+ i_idx = NUM2INT(idx);
117
+
118
+ o_cp= ALLOCA_N(char, (DFLT_SIZE+1));
119
+ memset(o_cp, '\0', DFLT_SIZE+1);
120
+
121
+ ucpqcp_(&i_idx, o_cp, (ftnlen)DFLT_SIZE);
122
+
123
+ cp = rb_str_new2(o_cp);
124
+
125
+
126
+ return cp;
127
+
128
+ }
129
+
130
+ static VALUE
131
+ dcl_ucpqcl(obj, idx)
132
+ VALUE obj, idx;
133
+ {
134
+ integer i_idx;
135
+ char *o_cp;
136
+ VALUE cp;
137
+
138
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
139
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
140
+ }
141
+
142
+ i_idx = NUM2INT(idx);
143
+
144
+ o_cp= ALLOCA_N(char, (DFLT_SIZE+1));
145
+ memset(o_cp, '\0', DFLT_SIZE+1);
146
+
147
+ ucpqcl_(&i_idx, o_cp, (ftnlen)DFLT_SIZE);
148
+
149
+ cp = rb_str_new2(o_cp);
150
+
151
+
152
+ return cp;
153
+
154
+ }
155
+
156
+ static VALUE
157
+ dcl_ucpqit(obj, idx)
158
+ VALUE obj, idx;
159
+ {
160
+ integer i_idx;
161
+ integer o_itp;
162
+ VALUE itp;
163
+
164
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
165
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
166
+ }
167
+
168
+ i_idx = NUM2INT(idx);
169
+
170
+
171
+ ucpqit_(&i_idx, &o_itp);
172
+
173
+ itp = INT2NUM(o_itp);
174
+
175
+
176
+ return itp;
177
+
178
+ }
179
+
180
+ static VALUE
181
+ dcl_ucpqvl(obj, idx)
182
+ VALUE obj, idx;
183
+ {
184
+ integer i_idx;
185
+ integer o_ipara;
186
+ VALUE ipara;
187
+
188
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
189
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
190
+ }
191
+
192
+ i_idx = NUM2INT(idx);
193
+
194
+
195
+ ucpqvl_(&i_idx, &o_ipara);
196
+
197
+ ipara = INT2NUM(o_ipara);
198
+
199
+
200
+ return ipara;
201
+
202
+ }
203
+
204
+ static VALUE
205
+ dcl_ucpsvl(obj, idx, ipara)
206
+ VALUE obj, idx, ipara;
207
+ {
208
+ integer i_idx;
209
+ integer i_ipara;
210
+
211
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
212
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
213
+ }
214
+ if ((TYPE(ipara) != T_BIGNUM) || (TYPE(ipara) != T_FIXNUM)) {
215
+ ipara = rb_funcall(ipara, rb_intern("to_i"), 0);
216
+ }
217
+
218
+ i_idx = NUM2INT(idx);
219
+ i_ipara = NUM2INT(ipara);
220
+
221
+
222
+ ucpsvl_(&i_idx, &i_ipara);
223
+
224
+ return Qnil;
225
+
226
+ }
227
+
228
+ static VALUE
229
+ dcl_ucpqin(obj, cp)
230
+ VALUE obj, cp;
231
+ {
232
+ char *i_cp;
233
+ integer o_in;
234
+ VALUE in;
235
+
236
+ if (TYPE(cp) != T_STRING) {
237
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
238
+ }
239
+
240
+ i_cp = StringValuePtr(cp);
241
+
242
+
243
+ ucpqin_(i_cp, &o_in, (ftnlen)strlen(i_cp));
244
+
245
+ in = INT2NUM(o_in);
246
+
247
+
248
+ return in;
249
+
250
+ }
251
+
252
+ static VALUE
253
+ dcl_ucxacl(obj, cside, jd0, nd)
254
+ VALUE obj, cside, jd0, nd;
255
+ {
256
+ char *i_cside;
257
+ integer i_jd0;
258
+ integer i_nd;
259
+
260
+ if (TYPE(cside) != T_STRING) {
261
+ cside = rb_funcall(cside, rb_intern("to_str"), 0);
262
+ }
263
+ if ((TYPE(jd0) != T_BIGNUM) || (TYPE(jd0) != T_FIXNUM)) {
264
+ jd0 = rb_funcall(jd0, rb_intern("to_i"), 0);
265
+ }
266
+ if ((TYPE(nd) != T_BIGNUM) || (TYPE(nd) != T_FIXNUM)) {
267
+ nd = rb_funcall(nd, rb_intern("to_i"), 0);
268
+ }
269
+
270
+ i_cside = StringValuePtr(cside);
271
+ i_jd0 = NUM2INT(jd0);
272
+ i_nd = NUM2INT(nd);
273
+
274
+
275
+ ucxacl_(i_cside, &i_jd0, &i_nd, (ftnlen)strlen(i_cside));
276
+
277
+ return Qnil;
278
+
279
+ }
280
+
281
+ static VALUE
282
+ dcl_ucxady(obj, cside, jd0, nd)
283
+ VALUE obj, cside, jd0, nd;
284
+ {
285
+ char *i_cside;
286
+ integer i_jd0;
287
+ integer i_nd;
288
+
289
+ if (TYPE(cside) != T_STRING) {
290
+ cside = rb_funcall(cside, rb_intern("to_str"), 0);
291
+ }
292
+ if ((TYPE(jd0) != T_BIGNUM) || (TYPE(jd0) != T_FIXNUM)) {
293
+ jd0 = rb_funcall(jd0, rb_intern("to_i"), 0);
294
+ }
295
+ if ((TYPE(nd) != T_BIGNUM) || (TYPE(nd) != T_FIXNUM)) {
296
+ nd = rb_funcall(nd, rb_intern("to_i"), 0);
297
+ }
298
+
299
+ i_cside = StringValuePtr(cside);
300
+ i_jd0 = NUM2INT(jd0);
301
+ i_nd = NUM2INT(nd);
302
+
303
+
304
+ ucxady_(i_cside, &i_jd0, &i_nd, (ftnlen)strlen(i_cside));
305
+
306
+ return Qnil;
307
+
308
+ }
309
+
310
+ static VALUE
311
+ dcl_ucxamn(obj, cside, jd0, nd)
312
+ VALUE obj, cside, jd0, nd;
313
+ {
314
+ char *i_cside;
315
+ integer i_jd0;
316
+ integer i_nd;
317
+
318
+ if (TYPE(cside) != T_STRING) {
319
+ cside = rb_funcall(cside, rb_intern("to_str"), 0);
320
+ }
321
+ if ((TYPE(jd0) != T_BIGNUM) || (TYPE(jd0) != T_FIXNUM)) {
322
+ jd0 = rb_funcall(jd0, rb_intern("to_i"), 0);
323
+ }
324
+ if ((TYPE(nd) != T_BIGNUM) || (TYPE(nd) != T_FIXNUM)) {
325
+ nd = rb_funcall(nd, rb_intern("to_i"), 0);
326
+ }
327
+
328
+ i_cside = StringValuePtr(cside);
329
+ i_jd0 = NUM2INT(jd0);
330
+ i_nd = NUM2INT(nd);
331
+
332
+
333
+ ucxamn_(i_cside, &i_jd0, &i_nd, (ftnlen)strlen(i_cside));
334
+
335
+ return Qnil;
336
+
337
+ }
338
+
339
+ static VALUE
340
+ dcl_ucxayr(obj, cside, jd0, nd)
341
+ VALUE obj, cside, jd0, nd;
342
+ {
343
+ char *i_cside;
344
+ integer i_jd0;
345
+ integer i_nd;
346
+
347
+ if (TYPE(cside) != T_STRING) {
348
+ cside = rb_funcall(cside, rb_intern("to_str"), 0);
349
+ }
350
+ if ((TYPE(jd0) != T_BIGNUM) || (TYPE(jd0) != T_FIXNUM)) {
351
+ jd0 = rb_funcall(jd0, rb_intern("to_i"), 0);
352
+ }
353
+ if ((TYPE(nd) != T_BIGNUM) || (TYPE(nd) != T_FIXNUM)) {
354
+ nd = rb_funcall(nd, rb_intern("to_i"), 0);
355
+ }
356
+
357
+ i_cside = StringValuePtr(cside);
358
+ i_jd0 = NUM2INT(jd0);
359
+ i_nd = NUM2INT(nd);
360
+
361
+
362
+ ucxayr_(i_cside, &i_jd0, &i_nd, (ftnlen)strlen(i_cside));
363
+
364
+ return Qnil;
365
+
366
+ }
367
+
368
+ static VALUE
369
+ dcl_ucyacl(obj, cside, jd0, nd)
370
+ VALUE obj, cside, jd0, nd;
371
+ {
372
+ char *i_cside;
373
+ integer i_jd0;
374
+ integer i_nd;
375
+
376
+ if (TYPE(cside) != T_STRING) {
377
+ cside = rb_funcall(cside, rb_intern("to_str"), 0);
378
+ }
379
+ if ((TYPE(jd0) != T_BIGNUM) || (TYPE(jd0) != T_FIXNUM)) {
380
+ jd0 = rb_funcall(jd0, rb_intern("to_i"), 0);
381
+ }
382
+ if ((TYPE(nd) != T_BIGNUM) || (TYPE(nd) != T_FIXNUM)) {
383
+ nd = rb_funcall(nd, rb_intern("to_i"), 0);
384
+ }
385
+
386
+ i_cside = StringValuePtr(cside);
387
+ i_jd0 = NUM2INT(jd0);
388
+ i_nd = NUM2INT(nd);
389
+
390
+
391
+ ucyacl_(i_cside, &i_jd0, &i_nd, (ftnlen)strlen(i_cside));
392
+
393
+ return Qnil;
394
+
395
+ }
396
+
397
+ static VALUE
398
+ dcl_ucyady(obj, cside, jd0, nd)
399
+ VALUE obj, cside, jd0, nd;
400
+ {
401
+ char *i_cside;
402
+ integer i_jd0;
403
+ integer i_nd;
404
+
405
+ if (TYPE(cside) != T_STRING) {
406
+ cside = rb_funcall(cside, rb_intern("to_str"), 0);
407
+ }
408
+ if ((TYPE(jd0) != T_BIGNUM) || (TYPE(jd0) != T_FIXNUM)) {
409
+ jd0 = rb_funcall(jd0, rb_intern("to_i"), 0);
410
+ }
411
+ if ((TYPE(nd) != T_BIGNUM) || (TYPE(nd) != T_FIXNUM)) {
412
+ nd = rb_funcall(nd, rb_intern("to_i"), 0);
413
+ }
414
+
415
+ i_cside = StringValuePtr(cside);
416
+ i_jd0 = NUM2INT(jd0);
417
+ i_nd = NUM2INT(nd);
418
+
419
+
420
+ ucyady_(i_cside, &i_jd0, &i_nd, (ftnlen)strlen(i_cside));
421
+
422
+ return Qnil;
423
+
424
+ }
425
+
426
+ static VALUE
427
+ dcl_ucyamn(obj, cside, jd0, nd)
428
+ VALUE obj, cside, jd0, nd;
429
+ {
430
+ char *i_cside;
431
+ integer i_jd0;
432
+ integer i_nd;
433
+
434
+ if (TYPE(cside) != T_STRING) {
435
+ cside = rb_funcall(cside, rb_intern("to_str"), 0);
436
+ }
437
+ if ((TYPE(jd0) != T_BIGNUM) || (TYPE(jd0) != T_FIXNUM)) {
438
+ jd0 = rb_funcall(jd0, rb_intern("to_i"), 0);
439
+ }
440
+ if ((TYPE(nd) != T_BIGNUM) || (TYPE(nd) != T_FIXNUM)) {
441
+ nd = rb_funcall(nd, rb_intern("to_i"), 0);
442
+ }
443
+
444
+ i_cside = StringValuePtr(cside);
445
+ i_jd0 = NUM2INT(jd0);
446
+ i_nd = NUM2INT(nd);
447
+
448
+
449
+ ucyamn_(i_cside, &i_jd0, &i_nd, (ftnlen)strlen(i_cside));
450
+
451
+ return Qnil;
452
+
453
+ }
454
+
455
+ static VALUE
456
+ dcl_ucyayr(obj, cside, jd0, nd)
457
+ VALUE obj, cside, jd0, nd;
458
+ {
459
+ char *i_cside;
460
+ integer i_jd0;
461
+ integer i_nd;
462
+
463
+ if (TYPE(cside) != T_STRING) {
464
+ cside = rb_funcall(cside, rb_intern("to_str"), 0);
465
+ }
466
+ if ((TYPE(jd0) != T_BIGNUM) || (TYPE(jd0) != T_FIXNUM)) {
467
+ jd0 = rb_funcall(jd0, rb_intern("to_i"), 0);
468
+ }
469
+ if ((TYPE(nd) != T_BIGNUM) || (TYPE(nd) != T_FIXNUM)) {
470
+ nd = rb_funcall(nd, rb_intern("to_i"), 0);
471
+ }
472
+
473
+ i_cside = StringValuePtr(cside);
474
+ i_jd0 = NUM2INT(jd0);
475
+ i_nd = NUM2INT(nd);
476
+
477
+
478
+ ucyayr_(i_cside, &i_jd0, &i_nd, (ftnlen)strlen(i_cside));
479
+
480
+ return Qnil;
481
+
482
+ }
483
+
484
+ static VALUE
485
+ dcl_uciget(obj, cp)
486
+ VALUE obj, cp;
487
+ {
488
+ char *i_cp;
489
+ integer o_ipara;
490
+ VALUE ipara;
491
+
492
+ if (TYPE(cp) != T_STRING) {
493
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
494
+ }
495
+
496
+ i_cp = StringValuePtr(cp);
497
+
498
+
499
+ uciget_(i_cp, &o_ipara, (ftnlen)strlen(i_cp));
500
+
501
+ ipara = INT2NUM(o_ipara);
502
+
503
+
504
+ return ipara;
505
+
506
+ }
507
+
508
+ static VALUE
509
+ dcl_uciset(obj, cp, ipara)
510
+ VALUE obj, cp, ipara;
511
+ {
512
+ char *i_cp;
513
+ integer i_ipara;
514
+
515
+ if (TYPE(cp) != T_STRING) {
516
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
517
+ }
518
+ if ((TYPE(ipara) != T_BIGNUM) || (TYPE(ipara) != T_FIXNUM)) {
519
+ ipara = rb_funcall(ipara, rb_intern("to_i"), 0);
520
+ }
521
+
522
+ i_cp = StringValuePtr(cp);
523
+ i_ipara = NUM2INT(ipara);
524
+
525
+
526
+ uciset_(i_cp, &i_ipara, (ftnlen)strlen(i_cp));
527
+
528
+ return Qnil;
529
+
530
+ }
531
+
532
+ static VALUE
533
+ dcl_ucistx(obj, cp, ipara)
534
+ VALUE obj, cp, ipara;
535
+ {
536
+ char *i_cp;
537
+ integer i_ipara;
538
+
539
+ if (TYPE(cp) != T_STRING) {
540
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
541
+ }
542
+ if ((TYPE(ipara) != T_BIGNUM) || (TYPE(ipara) != T_FIXNUM)) {
543
+ ipara = rb_funcall(ipara, rb_intern("to_i"), 0);
544
+ }
545
+
546
+ i_cp = StringValuePtr(cp);
547
+ i_ipara = NUM2INT(ipara);
548
+
549
+
550
+ ucistx_(i_cp, &i_ipara, (ftnlen)strlen(i_cp));
551
+
552
+ return Qnil;
553
+
554
+ }
555
+
556
+ static VALUE
557
+ dcl_uciqnp(obj)
558
+ VALUE obj;
559
+ {
560
+ integer o_ncp;
561
+ VALUE ncp;
562
+
563
+ uciqnp_(&o_ncp);
564
+
565
+ ncp = INT2NUM(o_ncp);
566
+
567
+
568
+ return ncp;
569
+
570
+ }
571
+
572
+ static VALUE
573
+ dcl_uciqid(obj, cp)
574
+ VALUE obj, cp;
575
+ {
576
+ char *i_cp;
577
+ integer o_idx;
578
+ VALUE idx;
579
+
580
+ if (TYPE(cp) != T_STRING) {
581
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
582
+ }
583
+
584
+ i_cp = StringValuePtr(cp);
585
+
586
+
587
+ uciqid_(i_cp, &o_idx, (ftnlen)strlen(i_cp));
588
+
589
+ idx = INT2NUM(o_idx);
590
+
591
+
592
+ return idx;
593
+
594
+ }
595
+
596
+ static VALUE
597
+ dcl_uciqcp(obj, idx)
598
+ VALUE obj, idx;
599
+ {
600
+ integer i_idx;
601
+ char *o_cp;
602
+ VALUE cp;
603
+
604
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
605
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
606
+ }
607
+
608
+ i_idx = NUM2INT(idx);
609
+
610
+ o_cp= ALLOCA_N(char, (DFLT_SIZE+1));
611
+ memset(o_cp, '\0', DFLT_SIZE+1);
612
+
613
+ uciqcp_(&i_idx, o_cp, (ftnlen)DFLT_SIZE);
614
+
615
+ cp = rb_str_new2(o_cp);
616
+
617
+
618
+ return cp;
619
+
620
+ }
621
+
622
+ static VALUE
623
+ dcl_uciqcl(obj, idx)
624
+ VALUE obj, idx;
625
+ {
626
+ integer i_idx;
627
+ char *o_cp;
628
+ VALUE cp;
629
+
630
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
631
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
632
+ }
633
+
634
+ i_idx = NUM2INT(idx);
635
+
636
+ o_cp= ALLOCA_N(char, (DFLT_SIZE+1));
637
+ memset(o_cp, '\0', DFLT_SIZE+1);
638
+
639
+ uciqcl_(&i_idx, o_cp, (ftnlen)DFLT_SIZE);
640
+
641
+ cp = rb_str_new2(o_cp);
642
+
643
+
644
+ return cp;
645
+
646
+ }
647
+
648
+ static VALUE
649
+ dcl_uciqvl(obj, idx)
650
+ VALUE obj, idx;
651
+ {
652
+ integer i_idx;
653
+ integer o_ipara;
654
+ VALUE ipara;
655
+
656
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
657
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
658
+ }
659
+
660
+ i_idx = NUM2INT(idx);
661
+
662
+
663
+ uciqvl_(&i_idx, &o_ipara);
664
+
665
+ ipara = INT2NUM(o_ipara);
666
+
667
+
668
+ return ipara;
669
+
670
+ }
671
+
672
+ static VALUE
673
+ dcl_ucisvl(obj, idx, ipara)
674
+ VALUE obj, idx, ipara;
675
+ {
676
+ integer i_idx;
677
+ integer i_ipara;
678
+
679
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
680
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
681
+ }
682
+ if ((TYPE(ipara) != T_BIGNUM) || (TYPE(ipara) != T_FIXNUM)) {
683
+ ipara = rb_funcall(ipara, rb_intern("to_i"), 0);
684
+ }
685
+
686
+ i_idx = NUM2INT(idx);
687
+ i_ipara = NUM2INT(ipara);
688
+
689
+
690
+ ucisvl_(&i_idx, &i_ipara);
691
+
692
+ return Qnil;
693
+
694
+ }
695
+
696
+ static VALUE
697
+ dcl_uciqin(obj, cp)
698
+ VALUE obj, cp;
699
+ {
700
+ char *i_cp;
701
+ integer o_in;
702
+ VALUE in;
703
+
704
+ if (TYPE(cp) != T_STRING) {
705
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
706
+ }
707
+
708
+ i_cp = StringValuePtr(cp);
709
+
710
+
711
+ uciqin_(i_cp, &o_in, (ftnlen)strlen(i_cp));
712
+
713
+ in = INT2NUM(o_in);
714
+
715
+
716
+ return in;
717
+
718
+ }
719
+
720
+ static VALUE
721
+ dcl_uclget(obj, cp)
722
+ VALUE obj, cp;
723
+ {
724
+ char *i_cp;
725
+ logical o_lpara;
726
+ VALUE lpara;
727
+
728
+ if (TYPE(cp) != T_STRING) {
729
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
730
+ }
731
+
732
+ i_cp = StringValuePtr(cp);
733
+
734
+
735
+ uclget_(i_cp, &o_lpara, (ftnlen)strlen(i_cp));
736
+
737
+ lpara = (o_lpara == FALSE_) ? Qfalse : Qtrue;
738
+
739
+
740
+ return lpara;
741
+
742
+ }
743
+
744
+ static VALUE
745
+ dcl_uclset(obj, cp, lpara)
746
+ VALUE obj, cp, lpara;
747
+ {
748
+ char *i_cp;
749
+ logical i_lpara;
750
+
751
+ if (TYPE(cp) != T_STRING) {
752
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
753
+ }
754
+
755
+ i_cp = StringValuePtr(cp);
756
+ i_lpara = ((lpara == Qnil)||(lpara == Qfalse)) ? FALSE_ : TRUE_;
757
+
758
+
759
+ uclset_(i_cp, &i_lpara, (ftnlen)strlen(i_cp));
760
+
761
+ return Qnil;
762
+
763
+ }
764
+
765
+ static VALUE
766
+ dcl_uclstx(obj, cp, lpara)
767
+ VALUE obj, cp, lpara;
768
+ {
769
+ char *i_cp;
770
+ logical i_lpara;
771
+
772
+ if (TYPE(cp) != T_STRING) {
773
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
774
+ }
775
+
776
+ i_cp = StringValuePtr(cp);
777
+ i_lpara = ((lpara == Qnil)||(lpara == Qfalse)) ? FALSE_ : TRUE_;
778
+
779
+
780
+ uclstx_(i_cp, &i_lpara, (ftnlen)strlen(i_cp));
781
+
782
+ return Qnil;
783
+
784
+ }
785
+
786
+ static VALUE
787
+ dcl_uclqnp(obj)
788
+ VALUE obj;
789
+ {
790
+ integer o_ncp;
791
+ VALUE ncp;
792
+
793
+ uclqnp_(&o_ncp);
794
+
795
+ ncp = INT2NUM(o_ncp);
796
+
797
+
798
+ return ncp;
799
+
800
+ }
801
+
802
+ static VALUE
803
+ dcl_uclqid(obj, cp)
804
+ VALUE obj, cp;
805
+ {
806
+ char *i_cp;
807
+ integer o_idx;
808
+ VALUE idx;
809
+
810
+ if (TYPE(cp) != T_STRING) {
811
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
812
+ }
813
+
814
+ i_cp = StringValuePtr(cp);
815
+
816
+
817
+ uclqid_(i_cp, &o_idx, (ftnlen)strlen(i_cp));
818
+
819
+ idx = INT2NUM(o_idx);
820
+
821
+
822
+ return idx;
823
+
824
+ }
825
+
826
+ static VALUE
827
+ dcl_uclqcp(obj, idx)
828
+ VALUE obj, idx;
829
+ {
830
+ integer i_idx;
831
+ char *o_cp;
832
+ VALUE cp;
833
+
834
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
835
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
836
+ }
837
+
838
+ i_idx = NUM2INT(idx);
839
+
840
+ o_cp= ALLOCA_N(char, (DFLT_SIZE+1));
841
+ memset(o_cp, '\0', DFLT_SIZE+1);
842
+
843
+ uclqcp_(&i_idx, o_cp, (ftnlen)DFLT_SIZE);
844
+
845
+ cp = rb_str_new2(o_cp);
846
+
847
+
848
+ return cp;
849
+
850
+ }
851
+
852
+ static VALUE
853
+ dcl_uclqcl(obj, idx)
854
+ VALUE obj, idx;
855
+ {
856
+ integer i_idx;
857
+ char *o_cp;
858
+ VALUE cp;
859
+
860
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
861
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
862
+ }
863
+
864
+ i_idx = NUM2INT(idx);
865
+
866
+ o_cp= ALLOCA_N(char, (DFLT_SIZE+1));
867
+ memset(o_cp, '\0', DFLT_SIZE+1);
868
+
869
+ uclqcl_(&i_idx, o_cp, (ftnlen)DFLT_SIZE);
870
+
871
+ cp = rb_str_new2(o_cp);
872
+
873
+
874
+ return cp;
875
+
876
+ }
877
+
878
+ static VALUE
879
+ dcl_uclqvl(obj, idx)
880
+ VALUE obj, idx;
881
+ {
882
+ integer i_idx;
883
+ logical o_lpara;
884
+ VALUE lpara;
885
+
886
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
887
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
888
+ }
889
+
890
+ i_idx = NUM2INT(idx);
891
+
892
+
893
+ uclqvl_(&i_idx, &o_lpara);
894
+
895
+ lpara = (o_lpara == FALSE_) ? Qfalse : Qtrue;
896
+
897
+
898
+ return lpara;
899
+
900
+ }
901
+
902
+ static VALUE
903
+ dcl_uclsvl(obj, idx, lpara)
904
+ VALUE obj, idx, lpara;
905
+ {
906
+ integer i_idx;
907
+ logical i_lpara;
908
+
909
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
910
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
911
+ }
912
+
913
+ i_idx = NUM2INT(idx);
914
+ i_lpara = ((lpara == Qnil)||(lpara == Qfalse)) ? FALSE_ : TRUE_;
915
+
916
+
917
+ uclsvl_(&i_idx, &i_lpara);
918
+
919
+ return Qnil;
920
+
921
+ }
922
+
923
+ static VALUE
924
+ dcl_uclqin(obj, cp)
925
+ VALUE obj, cp;
926
+ {
927
+ char *i_cp;
928
+ integer o_in;
929
+ VALUE in;
930
+
931
+ if (TYPE(cp) != T_STRING) {
932
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
933
+ }
934
+
935
+ i_cp = StringValuePtr(cp);
936
+
937
+
938
+ uclqin_(i_cp, &o_in, (ftnlen)strlen(i_cp));
939
+
940
+ in = INT2NUM(o_in);
941
+
942
+
943
+ return in;
944
+
945
+ }
946
+
947
+ static VALUE
948
+ dcl_ucrget(obj, cp)
949
+ VALUE obj, cp;
950
+ {
951
+ char *i_cp;
952
+ real o_rpara;
953
+ VALUE rpara;
954
+
955
+ if (TYPE(cp) != T_STRING) {
956
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
957
+ }
958
+
959
+ i_cp = StringValuePtr(cp);
960
+
961
+
962
+ ucrget_(i_cp, &o_rpara, (ftnlen)strlen(i_cp));
963
+
964
+ rpara = rb_float_new((double)o_rpara);
965
+
966
+
967
+ return rpara;
968
+
969
+ }
970
+
971
+ static VALUE
972
+ dcl_ucrset(obj, cp, rpara)
973
+ VALUE obj, cp, rpara;
974
+ {
975
+ char *i_cp;
976
+ real i_rpara;
977
+
978
+ if (TYPE(cp) != T_STRING) {
979
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
980
+ }
981
+ if (TYPE(rpara) != T_FLOAT) {
982
+ rpara = rb_funcall(rpara, rb_intern("to_f"), 0);
983
+ }
984
+
985
+ i_cp = StringValuePtr(cp);
986
+ i_rpara = (real)NUM2DBL(rpara);
987
+
988
+
989
+ ucrset_(i_cp, &i_rpara, (ftnlen)strlen(i_cp));
990
+
991
+ return Qnil;
992
+
993
+ }
994
+
995
+ static VALUE
996
+ dcl_ucrstx(obj, cp, rpara)
997
+ VALUE obj, cp, rpara;
998
+ {
999
+ char *i_cp;
1000
+ real i_rpara;
1001
+
1002
+ if (TYPE(cp) != T_STRING) {
1003
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
1004
+ }
1005
+ if (TYPE(rpara) != T_FLOAT) {
1006
+ rpara = rb_funcall(rpara, rb_intern("to_f"), 0);
1007
+ }
1008
+
1009
+ i_cp = StringValuePtr(cp);
1010
+ i_rpara = (real)NUM2DBL(rpara);
1011
+
1012
+
1013
+ ucrstx_(i_cp, &i_rpara, (ftnlen)strlen(i_cp));
1014
+
1015
+ return Qnil;
1016
+
1017
+ }
1018
+
1019
+ static VALUE
1020
+ dcl_ucrqnp(obj)
1021
+ VALUE obj;
1022
+ {
1023
+ integer o_ncp;
1024
+ VALUE ncp;
1025
+
1026
+ ucrqnp_(&o_ncp);
1027
+
1028
+ ncp = INT2NUM(o_ncp);
1029
+
1030
+
1031
+ return ncp;
1032
+
1033
+ }
1034
+
1035
+ static VALUE
1036
+ dcl_ucrqid(obj, cp)
1037
+ VALUE obj, cp;
1038
+ {
1039
+ char *i_cp;
1040
+ integer o_idx;
1041
+ VALUE idx;
1042
+
1043
+ if (TYPE(cp) != T_STRING) {
1044
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
1045
+ }
1046
+
1047
+ i_cp = StringValuePtr(cp);
1048
+
1049
+
1050
+ ucrqid_(i_cp, &o_idx, (ftnlen)strlen(i_cp));
1051
+
1052
+ idx = INT2NUM(o_idx);
1053
+
1054
+
1055
+ return idx;
1056
+
1057
+ }
1058
+
1059
+ static VALUE
1060
+ dcl_ucrqcp(obj, idx)
1061
+ VALUE obj, idx;
1062
+ {
1063
+ integer i_idx;
1064
+ char *o_cp;
1065
+ VALUE cp;
1066
+
1067
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
1068
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
1069
+ }
1070
+
1071
+ i_idx = NUM2INT(idx);
1072
+
1073
+ o_cp= ALLOCA_N(char, (DFLT_SIZE+1));
1074
+ memset(o_cp, '\0', DFLT_SIZE+1);
1075
+
1076
+ ucrqcp_(&i_idx, o_cp, (ftnlen)DFLT_SIZE);
1077
+
1078
+ cp = rb_str_new2(o_cp);
1079
+
1080
+
1081
+ return cp;
1082
+
1083
+ }
1084
+
1085
+ static VALUE
1086
+ dcl_ucrqcl(obj, idx)
1087
+ VALUE obj, idx;
1088
+ {
1089
+ integer i_idx;
1090
+ char *o_cp;
1091
+ VALUE cp;
1092
+
1093
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
1094
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
1095
+ }
1096
+
1097
+ i_idx = NUM2INT(idx);
1098
+
1099
+ o_cp= ALLOCA_N(char, (DFLT_SIZE+1));
1100
+ memset(o_cp, '\0', DFLT_SIZE+1);
1101
+
1102
+ ucrqcl_(&i_idx, o_cp, (ftnlen)DFLT_SIZE);
1103
+
1104
+ cp = rb_str_new2(o_cp);
1105
+
1106
+
1107
+ return cp;
1108
+
1109
+ }
1110
+
1111
+ static VALUE
1112
+ dcl_ucrqvl(obj, idx)
1113
+ VALUE obj, idx;
1114
+ {
1115
+ integer i_idx;
1116
+ real o_rpara;
1117
+ VALUE rpara;
1118
+
1119
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
1120
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
1121
+ }
1122
+
1123
+ i_idx = NUM2INT(idx);
1124
+
1125
+
1126
+ ucrqvl_(&i_idx, &o_rpara);
1127
+
1128
+ rpara = rb_float_new((double)o_rpara);
1129
+
1130
+
1131
+ return rpara;
1132
+
1133
+ }
1134
+
1135
+ static VALUE
1136
+ dcl_ucrsvl(obj, idx, rpara)
1137
+ VALUE obj, idx, rpara;
1138
+ {
1139
+ integer i_idx;
1140
+ real i_rpara;
1141
+
1142
+ if ((TYPE(idx) != T_BIGNUM) || (TYPE(idx) != T_FIXNUM)) {
1143
+ idx = rb_funcall(idx, rb_intern("to_i"), 0);
1144
+ }
1145
+ if (TYPE(rpara) != T_FLOAT) {
1146
+ rpara = rb_funcall(rpara, rb_intern("to_f"), 0);
1147
+ }
1148
+
1149
+ i_idx = NUM2INT(idx);
1150
+ i_rpara = (real)NUM2DBL(rpara);
1151
+
1152
+
1153
+ ucrsvl_(&i_idx, &i_rpara);
1154
+
1155
+ return Qnil;
1156
+
1157
+ }
1158
+
1159
+ static VALUE
1160
+ dcl_ucrqin(obj, cp)
1161
+ VALUE obj, cp;
1162
+ {
1163
+ char *i_cp;
1164
+ integer o_in;
1165
+ VALUE in;
1166
+
1167
+ if (TYPE(cp) != T_STRING) {
1168
+ cp = rb_funcall(cp, rb_intern("to_str"), 0);
1169
+ }
1170
+
1171
+ i_cp = StringValuePtr(cp);
1172
+
1173
+
1174
+ ucrqin_(i_cp, &o_in, (ftnlen)strlen(i_cp));
1175
+
1176
+ in = INT2NUM(o_in);
1177
+
1178
+
1179
+ return in;
1180
+
1181
+ }
1182
+ void
1183
+ init_grph2_ucpack(mDCL)
1184
+ VALUE mDCL;
1185
+ {
1186
+ rb_define_module_function(mDCL, "ucpqnp", dcl_ucpqnp, 0);
1187
+ rb_define_module_function(mDCL, "ucpqid", dcl_ucpqid, 1);
1188
+ rb_define_module_function(mDCL, "ucpqcp", dcl_ucpqcp, 1);
1189
+ rb_define_module_function(mDCL, "ucpqcl", dcl_ucpqcl, 1);
1190
+ rb_define_module_function(mDCL, "ucpqit", dcl_ucpqit, 1);
1191
+ rb_define_module_function(mDCL, "ucpqvl", dcl_ucpqvl, 1);
1192
+ rb_define_module_function(mDCL, "ucpsvl", dcl_ucpsvl, 2);
1193
+ rb_define_module_function(mDCL, "ucpqin", dcl_ucpqin, 1);
1194
+ rb_define_module_function(mDCL, "ucxacl", dcl_ucxacl, 3);
1195
+ rb_define_module_function(mDCL, "ucxady", dcl_ucxady, 3);
1196
+ rb_define_module_function(mDCL, "ucxamn", dcl_ucxamn, 3);
1197
+ rb_define_module_function(mDCL, "ucxayr", dcl_ucxayr, 3);
1198
+ rb_define_module_function(mDCL, "ucyacl", dcl_ucyacl, 3);
1199
+ rb_define_module_function(mDCL, "ucyady", dcl_ucyady, 3);
1200
+ rb_define_module_function(mDCL, "ucyamn", dcl_ucyamn, 3);
1201
+ rb_define_module_function(mDCL, "ucyayr", dcl_ucyayr, 3);
1202
+ rb_define_module_function(mDCL, "uciget", dcl_uciget, 1);
1203
+ rb_define_module_function(mDCL, "uciset", dcl_uciset, 2);
1204
+ rb_define_module_function(mDCL, "ucistx", dcl_ucistx, 2);
1205
+ rb_define_module_function(mDCL, "uciqnp", dcl_uciqnp, 0);
1206
+ rb_define_module_function(mDCL, "uciqid", dcl_uciqid, 1);
1207
+ rb_define_module_function(mDCL, "uciqcp", dcl_uciqcp, 1);
1208
+ rb_define_module_function(mDCL, "uciqcl", dcl_uciqcl, 1);
1209
+ rb_define_module_function(mDCL, "uciqvl", dcl_uciqvl, 1);
1210
+ rb_define_module_function(mDCL, "ucisvl", dcl_ucisvl, 2);
1211
+ rb_define_module_function(mDCL, "uciqin", dcl_uciqin, 1);
1212
+ rb_define_module_function(mDCL, "uclget", dcl_uclget, 1);
1213
+ rb_define_module_function(mDCL, "uclset", dcl_uclset, 2);
1214
+ rb_define_module_function(mDCL, "uclstx", dcl_uclstx, 2);
1215
+ rb_define_module_function(mDCL, "uclqnp", dcl_uclqnp, 0);
1216
+ rb_define_module_function(mDCL, "uclqid", dcl_uclqid, 1);
1217
+ rb_define_module_function(mDCL, "uclqcp", dcl_uclqcp, 1);
1218
+ rb_define_module_function(mDCL, "uclqcl", dcl_uclqcl, 1);
1219
+ rb_define_module_function(mDCL, "uclqvl", dcl_uclqvl, 1);
1220
+ rb_define_module_function(mDCL, "uclsvl", dcl_uclsvl, 2);
1221
+ rb_define_module_function(mDCL, "uclqin", dcl_uclqin, 1);
1222
+ rb_define_module_function(mDCL, "ucrget", dcl_ucrget, 1);
1223
+ rb_define_module_function(mDCL, "ucrset", dcl_ucrset, 2);
1224
+ rb_define_module_function(mDCL, "ucrstx", dcl_ucrstx, 2);
1225
+ rb_define_module_function(mDCL, "ucrqnp", dcl_ucrqnp, 0);
1226
+ rb_define_module_function(mDCL, "ucrqid", dcl_ucrqid, 1);
1227
+ rb_define_module_function(mDCL, "ucrqcp", dcl_ucrqcp, 1);
1228
+ rb_define_module_function(mDCL, "ucrqcl", dcl_ucrqcl, 1);
1229
+ rb_define_module_function(mDCL, "ucrqvl", dcl_ucrqvl, 1);
1230
+ rb_define_module_function(mDCL, "ucrsvl", dcl_ucrsvl, 2);
1231
+ rb_define_module_function(mDCL, "ucrqin", dcl_ucrqin, 1);
1232
+ }