ruby-oci8 2.0.1 → 2.0.2

Sign up to get free protection for your applications and to get access to all the features.
data/ChangeLog CHANGED
@@ -1,3 +1,92 @@
1
+ 2009-05-17 KUBO Takehiro <kubo@jiubao.org>
2
+ * NEWS: add changes between 2.0.1 and 2.0.2.
3
+ * VERSION: change version to 2.0.2.
4
+ * dist-files: append newly added files.
5
+ * ext/oci8/oci8.c: fix OCI8#ping not to raise an exception
6
+ when OCIPing() failed. It should returns true or false.
7
+ * ext/oci8/oci8lib.c: Memory allocated by xmalloc() should be
8
+ freed by xfree().
9
+
10
+ 2009-05-17 KUBO Takehiro <kubo@jiubao.org>
11
+ * ext/oci8/error.c, ext/oci8/extconf.rb, ext/oci8/oci8.h:
12
+ fix the native library name in error messages from oci8lib.so
13
+ to oci8lib_18.so or oci8lib_191.so.
14
+ * ext/oci8/ocinumber.c, test/test_oranumber.rb: fix OraNumber.new
15
+ to accept BigDecimal and Rational.
16
+ * ext/oci8/bind.c, test/test_oci8.rb: implicitly convert the
17
+ specified number to Float when the bind handle is for Float.
18
+ * ext/oci8/attr.c: fix for Oracle client which doesn't have
19
+ OCIRowidToChar().
20
+ * ext/oci8/oci8.c, test/test_appinfo.rb, test/test_all.rb, dist-files:
21
+ add new methods OCI8#ping and OCI8#client_identifier=.
22
+ add test cases.
23
+ * ext/oci8/oci8lib.c: fix a bug for Oracle 8.0.
24
+ * lib/oci8/oci8.rb: add a convenient method OCI8#select_one
25
+ to fetch one row.
26
+
27
+ 2009-04-18 KUBO Takehiro <kubo@jiubao.org>
28
+ * lib/oci8/oci8.rb: move OCI8::BindType module to bindtype.rb.
29
+ * lib/oci8/bindtype.rb: added. This defines OCI8::BindType.
30
+ * lib/oci8.rb.in: require 'oci8/bindtype.rb'
31
+
32
+ 2009-04-17 KUBO Takehiro <kubo@jiubao.org>
33
+ * ext/oci8/encoding.c, ext/oci8/lob.c, ext/oci8/metadata.c,
34
+ ext/oci8/oci8.c: suppress "warning C4761: integral size mismatch
35
+ in argument; conversion supplied" when compiled by Visual C++.
36
+
37
+ 2009-04-17 KUBO Takehiro <kubo@jiubao.org>
38
+ * ext/oci8/apiwrap.yml, ext/oci8/env.c, ext/oci8/extconf.rb,
39
+ ext/oci8/oci8.h, ext/oci8/oci8lib.c: OCIEnv is initialized
40
+ when it is needed. This makes a basis to enable an event
41
+ notification after "require 'oci8'."
42
+ * test/test_all.rb: fix a bug added four days ago.
43
+
44
+ 2009-04-14 KUBO Takehiro <kubo@jiubao.org>
45
+ * ext/oci8/oci8.h, ext/oci8/oci8lib.c, ext/oci8/ocinumber.c,
46
+ ext/oci8/metadata.c, ext/oci8/object.c: pass an OCIError to
47
+ OraNumber functions if it can. (This is the first step to
48
+ delay OCIEnv initialization.)
49
+
50
+ 2009-04-14 KUBO Takehiro <kubo@jiubao.org>
51
+ * ext/oci8/oraconf.rb: Gets ORACLE_HOME from the Windows regitry
52
+ by enumerating subkeys of \\HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE.
53
+
54
+ 2009-04-12 KUBO Takehiro <kubo@jiubao.org>
55
+ * lib/oci8/oci8.rb, test/test_encoding.rb: The string bind length should
56
+ be got from the string bytesize converted to OCI8.encoding.
57
+
58
+ 2009-04-12 KUBO Takehiro <kubo@jiubao.org>
59
+ * ext/oci8/lob.c: OCI8::BLOB#read should return ASCII-8BIT.
60
+ OCI8::BLOB#write should not convert the specified string
61
+ to OCI8.encoding.
62
+ * test/test_dbi.rb: suppress warning: "shadowing outer local
63
+ variable - i"
64
+ * test/test_all.rb, test/test_encoding.rb: add string encoding
65
+ tests.
66
+
67
+ 2009-04-12 KUBO Takehiro <kubo@jiubao.org>
68
+ * lib/dbd/OCI8.rb: fix DBI::DBD::OCI8::BindType::DBIStatementHandle
69
+ to pass a newly added sanity check in dbi 0.4.1.
70
+ (reported by Dirk Herzhauser)
71
+ * test/test_all.rb: fix to use dbi installed as a rubygem.
72
+
73
+ 2009-04-04 KUBO Takehiro <kubo@jiubao.org>
74
+ * ext/oci8/bind.c: fix an error when executing "select NULL from dual".
75
+ http://rubyforge.org/forum/forum.php?thread_id=32468&forum_id=1078
76
+ (contributed by Raimonds Simanovskis)
77
+
78
+ 2009-03-24 KUBO Takehiro <kubo@jiubao.org>
79
+ * ext/oci8/extconf.rb, ext/oci8/oci8.h, ext/oci8/oraconf.rb:
80
+ fix a problem when compiling with Oracle 8.0.
81
+ (reported by Axel Reinhold)
82
+
83
+ 2009-03-24 KUBO Takehiro <kubo@jiubao.org>
84
+ * ext/oci8/extconf.rb, ext/oci8/oci8.h: fix a problem when
85
+ compiling with Oracle 9.2.
86
+ (reported by Axel Reinhold)
87
+ * ext/oci8/apiwrap.yml: suppres warnings 'discards qualifiers
88
+ from pointer target type' when compiling with Oracle 8i.
89
+
1
90
  2009-03-17 KUBO Takehiro <kubo@jiubao.org>
2
91
  * NEWS: add a new file.
3
92
  * VERSION: change version to 2.0.1.
data/Makefile CHANGED
@@ -50,38 +50,40 @@ dist-check: dist
50
50
  #
51
51
  # for Windows
52
52
  #
53
- GEMPKG = ruby-oci8-unstable-2.0.1-x86-mswin32-60.gem
53
+ RUBY_18 = c:\ruby
54
+ RUBY_191 = c:\ruby-1.9.1
55
+ GEMPKG = ruby-oci8-2.0.2-x86-mswin32-60.gem
54
56
 
55
57
  ext\oci8\oci8lib_18.so:
56
- c:\ruby\bin\ruby -r fileutils -e "FileUtils.rm_rf('ruby18')"
58
+ $(RUBY_18)\bin\ruby -r fileutils -e "FileUtils.rm_rf('ruby18')"
57
59
  md ruby18
58
60
  cd ruby18
59
- c:\ruby\bin\ruby ..\setup.rb config -- --with-runtime-check
60
- c:\ruby\bin\ruby ..\setup.rb setup
61
- rem c:\ruby\bin\ruby ..\setup.rb test
61
+ $(RUBY_18)\bin\ruby ..\setup.rb config -- --with-runtime-check
62
+ $(RUBY_18)\bin\ruby ..\setup.rb setup
63
+ rem $(RUBY_18)\bin\ruby ..\setup.rb test
62
64
  cd ..
63
65
  copy ruby18\ext\oci8\oci8lib_18.so ext\oci8\oci8lib_18.so
64
66
 
65
67
  ext\oci8\oci8lib_191.so:
66
- c:\ruby\bin\ruby -r fileutils -e "FileUtils.rm_rf('ruby191')"
68
+ $(RUBY_191)\bin\ruby -r fileutils -e "FileUtils.rm_rf('ruby191')"
67
69
  md ruby191
68
70
  cd ruby191
69
- c:\ruby-1.9.1\bin\ruby ..\setup.rb config -- --with-runtime-check
70
- c:\ruby-1.9.1\bin\ruby ..\setup.rb setup
71
- rem c:\ruby-1.9.1\bin\ruby ..\setup.rb test
71
+ $(RUBY_191)\bin\ruby ..\setup.rb config -- --with-runtime-check
72
+ $(RUBY_191)\bin\ruby ..\setup.rb setup
73
+ rem $(RUBY_191)\bin\ruby ..\setup.rb test
72
74
  cd ..
73
75
  copy ruby191\ext\oci8\oci8lib_191.so ext\oci8\oci8lib_191.so
74
76
  copy ruby191\lib\oci8.rb lib\oci8.rb
75
77
 
76
78
  $(GEMPKG): ext\oci8\oci8lib_18.so ext\oci8\oci8lib_191.so ruby-oci8.gemspec
77
- c:\ruby-1.9.1\bin\gem build ruby-oci8.gemspec -- current
79
+ $(RUBY_191)\bin\gem build ruby-oci8.gemspec -- current
78
80
 
79
81
  test-win32-ruby18: $(GEMPKG)
80
- c:\ruby\bin\gem install $(GEMPKG) --no-rdoc --no-ri
81
- c:\ruby\bin\ruby -rubygems test\test_all.rb
82
+ $(RUBY_18)\bin\gem install $(GEMPKG) --no-rdoc --no-ri --local
83
+ $(RUBY_18)\bin\ruby -rubygems test\test_all.rb
82
84
 
83
85
  test-win32-ruby191: $(GEMPKG)
84
- c:\ruby-1.9.1\bin\gem install $(GEMPKG) --no-rdoc --no-ri
85
- c:\ruby-1.9.1\bin\ruby test\test_all.rb
86
+ $(RUBY_191)\bin\gem install $(GEMPKG) --no-rdoc --no-ri --local
87
+ $(RUBY_191)\bin\ruby test\test_all.rb
86
88
 
87
89
  test-win32: test-win32-ruby18 test-win32-ruby191
data/NEWS CHANGED
@@ -1,3 +1,39 @@
1
+ 2.0.2:
2
+
3
+ * add new methods
4
+ - OCI8#select_one(sql, *bindvars) -> first_row
5
+
6
+ - OCI8#ping -> true or false
7
+
8
+ Verifies that the Oracle connection is alive.
9
+ OCI8#ping also can be used to flush all the pending OCI
10
+ client-side calls to the server if any exist.
11
+
12
+ - OCI8#client_identifier = client_id
13
+
14
+ Look at the following link to know what is the client identifier.
15
+ http://it.toolbox.com/blogs/database-solutions/oracle-session-tracing-part-i-16356
16
+
17
+ Note that the specified identifier doesn't change the v$session
18
+ immediately. It is done by the next network round trip
19
+ such as OCI8#exec or OCI8#ping.
20
+
21
+ * fix problems when compiling with Oracle 9.2 and 8.0.
22
+ (reported by Axel Reinhold)
23
+
24
+ * [dbi] fix to pass a newly added sanity check in dbi 0.4.1.
25
+ (reported by Dirk Herzhauser)
26
+
27
+ * fix an error when executing "select NULL from dual".
28
+ http://rubyforge.org/forum/forum.php?thread_id=32468&forum_id=1078
29
+ (contributed by Raimonds Simanovskis)
30
+
31
+ * [ruby 1.9] fix OCI8::BLOB to read/write binary. Prior to 2.0.1,
32
+ it was treated as text tagged with NLS_LANG encoding.
33
+
34
+ * [ruby 1.9] fix to bind string data by the length got from String#bytesize
35
+ converted to OCI8.encoding, not by String#size.
36
+
1
37
  2.0.1:
2
38
 
3
39
  * release a binary gem for Windows, which contains libraries for both
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.0.1
1
+ 2.0.2
data/dist-files CHANGED
@@ -43,6 +43,7 @@ lib/.document
43
43
  lib/oci8.rb.in
44
44
  lib/dbd/OCI8.rb
45
45
  lib/oci8/.document
46
+ lib/oci8/bindtype.rb
46
47
  lib/oci8/compat.rb
47
48
  lib/oci8/datetime.rb
48
49
  lib/oci8/encoding-init.rb
@@ -54,12 +55,14 @@ lib/oci8/oracle_version.rb
54
55
  test/README
55
56
  test/config.rb
56
57
  test/test_all.rb
58
+ test/test_appinfo.rb
57
59
  test/test_array_dml.rb
58
60
  test/test_bind_raw.rb
59
61
  test/test_bind_time.rb
60
62
  test/test_break.rb
61
63
  test/test_clob.rb
62
64
  test/test_connstr.rb
65
+ test/test_encoding.rb
63
66
  test/test_datetime.rb
64
67
  test/test_dbi.rb
65
68
  test/test_dbi_clob.rb
@@ -6,7 +6,7 @@
6
6
  # use thie for 0 round trip
7
7
  OCIAttrGet:
8
8
  :version: 800
9
- :args: - const dvoid *trgthndlp
9
+ :args: - CONST dvoid *trgthndlp
10
10
  - ub4 trghndltyp
11
11
  - dvoid *attributep
12
12
  - ub4 *sizep
@@ -16,7 +16,7 @@ OCIAttrGet:
16
16
  # use thie for 1 or 2 round trips
17
17
  OCIAttrGet_nb:
18
18
  :version: 800
19
- :args: - const dvoid *trgthndlp
19
+ :args: - CONST dvoid *trgthndlp
20
20
  - ub4 trghndltyp
21
21
  - dvoid *attributep
22
22
  - ub4 *sizep
@@ -48,7 +48,7 @@ OCIBindByName:
48
48
  :args: - OCIStmt *stmtp
49
49
  - OCIBind **bindp
50
50
  - OCIError *errhp
51
- - const text *placeholder
51
+ - CONST text *placeholder
52
52
  - sb4 placeh_len
53
53
  - dvoid *valuep
54
54
  - sb4 value_sz
@@ -82,7 +82,7 @@ OCIBindObject:
82
82
  :version: 800
83
83
  :args: - OCIBind *bindp
84
84
  - OCIError *errhp
85
- - const OCIType *type
85
+ - CONST OCIType *type
86
86
  - dvoid **pgvpp
87
87
  - ub4 *pvszsp
88
88
  - dvoid **indpp
@@ -99,8 +99,8 @@ OCICollAppend:
99
99
  :version: 800
100
100
  :args: - OCIEnv *env
101
101
  - OCIError *err
102
- - const dvoid *elem
103
- - const dvoid *elemind
102
+ - CONST dvoid *elem
103
+ - CONST dvoid *elemind
104
104
  - OCIColl *coll
105
105
 
106
106
  # round trip: 0
@@ -109,8 +109,8 @@ OCICollAssignElem:
109
109
  :args: - OCIEnv *env
110
110
  - OCIError *err
111
111
  - sb4 index
112
- - const dvoid *elem
113
- - const dvoid *elemind
112
+ - CONST dvoid *elem
113
+ - CONST dvoid *elemind
114
114
  - OCIColl *coll
115
115
 
116
116
  # round trip: 0
@@ -118,7 +118,7 @@ OCICollGetElem:
118
118
  :version: 800
119
119
  :args: - OCIEnv *env
120
120
  - OCIError *err
121
- - const OCIColl *coll
121
+ - CONST OCIColl *coll
122
122
  - sb4 index
123
123
  - boolean *exists
124
124
  - dvoid **elem
@@ -129,7 +129,7 @@ OCICollSize:
129
129
  :version: 800
130
130
  :args: - OCIEnv *env
131
131
  - OCIError *err
132
- - const OCIColl *coll
132
+ - CONST OCIColl *coll
133
133
  - sb4 *size
134
134
 
135
135
  # round trip: 0
@@ -170,7 +170,7 @@ OCIDefineObject:
170
170
  :version: 800
171
171
  :args: - OCIDefine *defnp
172
172
  - OCIError *errhp
173
- - const OCIType *type
173
+ - CONST OCIType *type
174
174
  - dvoid **pgvpp
175
175
  - ub4 *pvszsp
176
176
  - dvoid **indpp
@@ -190,7 +190,7 @@ OCIDescribeAny_nb:
190
190
 
191
191
  OCIDescriptorAlloc:
192
192
  :version: 800
193
- :args: - const dvoid *parenth
193
+ :args: - CONST dvoid *parenth
194
194
  - dvoid **descpp
195
195
  - ub4 type
196
196
  - size_t xtramem_sz
@@ -220,7 +220,7 @@ OCIErrorGet:
220
220
 
221
221
  OCIHandleAlloc:
222
222
  :version: 800
223
- :args: - const dvoid *parenth
223
+ :args: - CONST dvoid *parenth
224
224
  - dvoid **hndlpp
225
225
  - ub4 type
226
226
  - size_t xtramem_sz
@@ -245,7 +245,7 @@ OCILobAssign:
245
245
  :version: 800
246
246
  :args: - OCIEnv *envhp
247
247
  - OCIError *errhp
248
- - const OCILobLocator *src_locp
248
+ - CONST OCILobLocator *src_locp
249
249
  - OCILobLocator **dst_locpp
250
250
 
251
251
  # round trip: 1
@@ -274,7 +274,7 @@ OCILobFileGetName:
274
274
  :version: 800
275
275
  :args: - OCIEnv *envhp
276
276
  - OCIError *errhp
277
- - const OCILobLocator *filep
277
+ - CONST OCILobLocator *filep
278
278
  - text *dir_alias
279
279
  - ub2 *d_length
280
280
  - text *filename
@@ -294,9 +294,9 @@ OCILobFileSetName:
294
294
  :args: - OCIEnv *envhp
295
295
  - OCIError *errhp
296
296
  - OCILobLocator **filepp
297
- - const text *dir_alias
297
+ - CONST text *dir_alias
298
298
  - ub2 d_length
299
- - const text *filename
299
+ - CONST text *filename
300
300
  - ub2 f_length
301
301
 
302
302
  # round trip: 1
@@ -312,7 +312,7 @@ OCILobLocatorIsInit:
312
312
  :version: 800
313
313
  :args: - OCIEnv *envhp
314
314
  - OCIError *errhp
315
- - const OCILobLocator *locp
315
+ - CONST OCILobLocator *locp
316
316
  - boolean *is_initialized
317
317
 
318
318
  # round trip: 0 or 1
@@ -366,113 +366,113 @@ OCILogon_nb:
366
366
  :args: - OCIEnv *envhp
367
367
  - OCIError *errhp
368
368
  - OCISvcCtx **svchp
369
- - const text *username
369
+ - CONST text *username
370
370
  - ub4 uname_len
371
- - const text *password
371
+ - CONST text *password
372
372
  - ub4 passwd_len
373
- - const text *dbname
373
+ - CONST text *dbname
374
374
  - ub4 dbname_len
375
375
 
376
376
  # round trip: 0
377
377
  OCINumberAbs:
378
378
  :version: 800
379
379
  :args: - OCIError *err
380
- - const OCINumber *number
380
+ - CONST OCINumber *number
381
381
  - OCINumber *result
382
382
 
383
383
  # round trip: 0
384
384
  OCINumberAdd:
385
385
  :version: 800
386
386
  :args: - OCIError *err
387
- - const OCINumber *number1
388
- - const OCINumber *number2
387
+ - CONST OCINumber *number1
388
+ - CONST OCINumber *number2
389
389
  - OCINumber *result
390
390
 
391
391
  # round trip: 0
392
392
  OCINumberArcCos:
393
393
  :version: 800
394
394
  :args: - OCIError *err
395
- - const OCINumber *number
395
+ - CONST OCINumber *number
396
396
  - OCINumber *result
397
397
 
398
398
  # round trip: 0
399
399
  OCINumberArcSin:
400
400
  :version: 800
401
401
  :args: - OCIError *err
402
- - const OCINumber *number
402
+ - CONST OCINumber *number
403
403
  - OCINumber *result
404
404
 
405
405
  # round trip: 0
406
406
  OCINumberArcTan:
407
407
  :version: 800
408
408
  :args: - OCIError *err
409
- - const OCINumber *number
409
+ - CONST OCINumber *number
410
410
  - OCINumber *result
411
411
 
412
412
  # round trip: 0
413
413
  OCINumberArcTan2:
414
414
  :version: 800
415
415
  :args: - OCIError *err
416
- - const OCINumber *number1
417
- - const OCINumber *number2
416
+ - CONST OCINumber *number1
417
+ - CONST OCINumber *number2
418
418
  - OCINumber *result
419
419
 
420
420
  # round trip: 0
421
421
  OCINumberAssign:
422
422
  :version: 800
423
423
  :args: - OCIError *err
424
- - const OCINumber *from
424
+ - CONST OCINumber *from
425
425
  - OCINumber *to
426
426
 
427
427
  # round trip: 0
428
428
  OCINumberCeil:
429
429
  :version: 800
430
430
  :args: - OCIError *err
431
- - const OCINumber *number
431
+ - CONST OCINumber *number
432
432
  - OCINumber *result
433
433
 
434
434
  # round trip: 0
435
435
  OCINumberCmp:
436
436
  :version: 800
437
437
  :args: - OCIError *err
438
- - const OCINumber *number1
439
- - const OCINumber *number2
438
+ - CONST OCINumber *number1
439
+ - CONST OCINumber *number2
440
440
  - sword *result
441
441
 
442
442
  # round trip: 0
443
443
  OCINumberCos:
444
444
  :version: 800
445
445
  :args: - OCIError *err
446
- - const OCINumber *number
446
+ - CONST OCINumber *number
447
447
  - OCINumber *result
448
448
 
449
449
  # round trip: 0
450
450
  OCINumberDiv:
451
451
  :version: 800
452
452
  :args: - OCIError *err
453
- - const OCINumber *number1
454
- - const OCINumber *number2
453
+ - CONST OCINumber *number1
454
+ - CONST OCINumber *number2
455
455
  - OCINumber *result
456
456
 
457
457
  # round trip: 0
458
458
  OCINumberExp:
459
459
  :version: 800
460
460
  :args: - OCIError *err
461
- - const OCINumber *number
461
+ - CONST OCINumber *number
462
462
  - OCINumber *result
463
463
 
464
464
  # round trip: 0
465
465
  OCINumberFloor:
466
466
  :version: 800
467
467
  :args: - OCIError *err
468
- - const OCINumber *number
468
+ - CONST OCINumber *number
469
469
  - OCINumber *result
470
470
 
471
471
  # round trip: 0
472
472
  OCINumberFromInt:
473
473
  :version: 800
474
474
  :args: - OCIError *err
475
- - const dvoid *inum
475
+ - CONST dvoid *inum
476
476
  - uword inum_length
477
477
  - uword inum_s_flag
478
478
  - OCINumber *number
@@ -481,7 +481,7 @@ OCINumberFromInt:
481
481
  OCINumberFromReal:
482
482
  :version: 800
483
483
  :args: - OCIError *err
484
- - const dvoid *rnum
484
+ - CONST dvoid *rnum
485
485
  - uword rnum_length
486
486
  - OCINumber *number
487
487
 
@@ -489,11 +489,11 @@ OCINumberFromReal:
489
489
  OCINumberFromText:
490
490
  :version: 800
491
491
  :args: - OCIError *err
492
- - const text *str
492
+ - CONST text *str
493
493
  - ub4 str_length
494
- - const text *fmt
494
+ - CONST text *fmt
495
495
  - ub4 fmt_length
496
- - const text *nls_params
496
+ - CONST text *nls_params
497
497
  - ub4 nls_p_length
498
498
  - OCINumber *number
499
499
 
@@ -501,89 +501,89 @@ OCINumberFromText:
501
501
  OCINumberHypCos:
502
502
  :version: 800
503
503
  :args: - OCIError *err
504
- - const OCINumber *number
504
+ - CONST OCINumber *number
505
505
  - OCINumber *result
506
506
 
507
507
  # round trip: 0
508
508
  OCINumberHypSin:
509
509
  :version: 800
510
510
  :args: - OCIError *err
511
- - const OCINumber *number
511
+ - CONST OCINumber *number
512
512
  - OCINumber *result
513
513
 
514
514
  # round trip: 0
515
515
  OCINumberHypTan:
516
516
  :version: 800
517
517
  :args: - OCIError *err
518
- - const OCINumber *number
518
+ - CONST OCINumber *number
519
519
  - OCINumber *result
520
520
 
521
521
  # round trip: 0
522
522
  OCINumberIntPower:
523
523
  :version: 800
524
524
  :args: - OCIError *err
525
- - const OCINumber *base
526
- - const sword exp
525
+ - CONST OCINumber *base
526
+ - CONST sword exp
527
527
  - OCINumber *result
528
528
 
529
529
  # round trip: 0
530
530
  OCINumberIsZero:
531
531
  :version: 800
532
532
  :args: - OCIError *err
533
- - const OCINumber *number
533
+ - CONST OCINumber *number
534
534
  - boolean *result
535
535
 
536
536
  # round trip: 0
537
537
  OCINumberLn:
538
538
  :version: 800
539
539
  :args: - OCIError *err
540
- - const OCINumber *number
540
+ - CONST OCINumber *number
541
541
  - OCINumber *result
542
542
 
543
543
  # round trip: 0
544
544
  OCINumberLog:
545
545
  :version: 800
546
546
  :args: - OCIError *err
547
- - const OCINumber *base
548
- - const OCINumber *number
547
+ - CONST OCINumber *base
548
+ - CONST OCINumber *number
549
549
  - OCINumber *result
550
550
 
551
551
  # round trip: 0
552
552
  OCINumberMod:
553
553
  :version: 800
554
554
  :args: - OCIError *err
555
- - const OCINumber *number1
556
- - const OCINumber *number2
555
+ - CONST OCINumber *number1
556
+ - CONST OCINumber *number2
557
557
  - OCINumber *result
558
558
 
559
559
  # round trip: 0
560
560
  OCINumberMul:
561
561
  :version: 800
562
562
  :args: - OCIError *err
563
- - const OCINumber *number1
564
- - const OCINumber *number2
563
+ - CONST OCINumber *number1
564
+ - CONST OCINumber *number2
565
565
  - OCINumber *result
566
566
 
567
567
  # round trip: 0
568
568
  OCINumberNeg:
569
569
  :version: 800
570
570
  :args: - OCIError *err
571
- - const OCINumber *number
571
+ - CONST OCINumber *number
572
572
  - OCINumber *result
573
573
 
574
574
  # round trip: 0
575
575
  OCINumberPower:
576
576
  :version: 800
577
577
  :args: - OCIError *err
578
- - const OCINumber *base
579
- - const OCINumber *number
578
+ - CONST OCINumber *base
579
+ - CONST OCINumber *number
580
580
  - OCINumber *result
581
581
 
582
582
  # round trip: 0
583
583
  OCINumberRound:
584
584
  :version: 800
585
585
  :args: - OCIError *err
586
- - const OCINumber *number
586
+ - CONST OCINumber *number
587
587
  - sword decplace
588
588
  - OCINumber *result
589
589
 
@@ -598,36 +598,36 @@ OCINumberSetZero:
598
598
  OCINumberSin:
599
599
  :version: 800
600
600
  :args: - OCIError *err
601
- - const OCINumber *number
601
+ - CONST OCINumber *number
602
602
  - OCINumber *result
603
603
 
604
604
  # round trip: 0
605
605
  OCINumberSub:
606
606
  :version: 800
607
607
  :args: - OCIError *err
608
- - const OCINumber *number1
609
- - const OCINumber *number2
608
+ - CONST OCINumber *number1
609
+ - CONST OCINumber *number2
610
610
  - OCINumber *result
611
611
 
612
612
  # round trip: 0
613
613
  OCINumberSqrt:
614
614
  :version: 800
615
615
  :args: - OCIError *err
616
- - const OCINumber *number
616
+ - CONST OCINumber *number
617
617
  - OCINumber *result
618
618
 
619
619
  # round trip: 0
620
620
  OCINumberTan:
621
621
  :version: 800
622
622
  :args: - OCIError *err
623
- - const OCINumber *number
623
+ - CONST OCINumber *number
624
624
  - OCINumber *result
625
625
 
626
626
  # round trip: 0
627
627
  OCINumberToInt:
628
628
  :version: 800
629
629
  :args: - OCIError *err
630
- - const OCINumber *number
630
+ - CONST OCINumber *number
631
631
  - uword rsl_length
632
632
  - uword rsl_flag
633
633
  - dvoid *rsl
@@ -636,7 +636,7 @@ OCINumberToInt:
636
636
  OCINumberToReal:
637
637
  :version: 800
638
638
  :args: - OCIError *err
639
- - const OCINumber *number
639
+ - CONST OCINumber *number
640
640
  - uword rsl_length
641
641
  - dvoid *rsl
642
642
 
@@ -644,10 +644,10 @@ OCINumberToReal:
644
644
  OCINumberToText:
645
645
  :version: 800
646
646
  :args: - OCIError *err
647
- - const OCINumber *number
648
- - const text *fmt
647
+ - CONST OCINumber *number
648
+ - CONST text *fmt
649
649
  - ub4 fmt_length
650
- - const text *nls_params
650
+ - CONST text *nls_params
651
651
  - ub4 nls_p_length
652
652
  - ub4 *buf_size
653
653
  - text *buf
@@ -656,7 +656,7 @@ OCINumberToText:
656
656
  OCINumberTrunc:
657
657
  :version: 800
658
658
  :args: - OCIError *err
659
- - const OCINumber *number
659
+ - CONST OCINumber *number
660
660
  - sword decplace
661
661
  - OCINumber *resulty
662
662
 
@@ -681,7 +681,7 @@ OCIObjectNew:
681
681
  :version: 800
682
682
  :args: - OCIEnv *env
683
683
  - OCIError *err
684
- - const OCISvcCtx *svc
684
+ - CONST OCISvcCtx *svc
685
685
  - OCITypeCode typecode
686
686
  - OCIType *tdo
687
687
  - dvoid *table
@@ -711,7 +711,7 @@ OCIObjectUnpin:
711
711
  # round trip: ???
712
712
  OCIParamGet:
713
713
  :version: 800
714
- :args: - const dvoid *hndlp
714
+ :args: - CONST dvoid *hndlp
715
715
  - ub4 htype
716
716
  - OCIError *errhp
717
717
  - dvoid **parmdpp
@@ -731,7 +731,7 @@ OCIRawAssignBytes:
731
731
  :version: 800
732
732
  :args: - OCIEnv *env
733
733
  - OCIError *err
734
- - const ub1 *rhs
734
+ - CONST ub1 *rhs
735
735
  - ub4 rhs_len
736
736
  - OCIRaw **lhs
737
737
 
@@ -740,14 +740,14 @@ OCIRawPtr:
740
740
  :version: 800
741
741
  :ret: ub1 *
742
742
  :args: - OCIEnv *env
743
- - const OCIRaw *raw
743
+ - CONST OCIRaw *raw
744
744
 
745
745
  # round trip: 0
746
746
  OCIRawSize:
747
747
  :version: 800
748
748
  :ret: ub4
749
749
  :args: - OCIEnv *env
750
- - const OCIRaw *raw
750
+ - CONST OCIRaw *raw
751
751
 
752
752
  # round trip: 1
753
753
  OCISessionEnd_nb:
@@ -762,7 +762,7 @@ OCIServerAttach_nb:
762
762
  :version: 800
763
763
  :args: - OCIServer *srvhp
764
764
  - OCIError *errhp
765
- - const text *dblink
765
+ - CONST text *dblink
766
766
  - sb4 dblink_len
767
767
  - ub4 mode
768
768
 
@@ -790,7 +790,7 @@ OCIStmtExecute_nb:
790
790
  - OCIError *errhp
791
791
  - ub4 iters
792
792
  - ub4 rowoff
793
- - const OCISnapshot *snap_in
793
+ - CONST OCISnapshot *snap_in
794
794
  - OCISnapshot *snap_out
795
795
  - ub4 mode
796
796
 
@@ -818,7 +818,7 @@ OCIStmtPrepare:
818
818
  :version: 800
819
819
  :args: - OCIStmt *stmtp
820
820
  - OCIError *errhp
821
- - const text *stmt
821
+ - CONST text *stmt
822
822
  - ub4 stmt_len
823
823
  - ub4 language
824
824
  - ub4 mode
@@ -828,10 +828,10 @@ OCIStmtSetPieceInfo:
828
828
  :args: - dvoid *hndlp
829
829
  - ub4 type
830
830
  - OCIError *errhp
831
- - const dvoid *bufp
831
+ - CONST dvoid *bufp
832
832
  - ub4 *alenp
833
833
  - ub1 piece
834
- - const dvoid *indp
834
+ - CONST dvoid *indp
835
835
  - ub2 *rcodep
836
836
 
837
837
  # round trip: 0
@@ -839,7 +839,7 @@ OCIStringAssignText:
839
839
  :version: 800
840
840
  :args: - OCIEnv *env
841
841
  - OCIError *err
842
- - const text *rhs
842
+ - CONST text *rhs
843
843
  - ub4 rhs_len
844
844
  - OCIString **lhs
845
845
 
@@ -848,14 +848,14 @@ OCIStringPtr:
848
848
  :version: 800
849
849
  :ret: text *
850
850
  :args: - OCIEnv *env
851
- - const OCIString *vs
851
+ - CONST OCIString *vs
852
852
 
853
853
  # round trip: 0
854
854
  OCIStringSize:
855
855
  :version: 800
856
856
  :ret: ub4
857
857
  :args: - OCIEnv *env
858
- - const OCIString *vs
858
+ - CONST OCIString *vs
859
859
 
860
860
  # round trip: 1
861
861
  OCITransCommit_nb:
@@ -877,13 +877,25 @@ OCITypeTypeCode:
877
877
  :ret: OCITypeCode
878
878
  :args: - OCIEnv *env
879
879
  - OCIError *err
880
- - const OCIType *tdo
880
+ - CONST OCIType *tdo
881
881
 
882
882
 
883
883
  #
884
884
  # Oracle 8.1
885
885
  #
886
886
 
887
+ # round trip: 0
888
+ OCIEnvCreate:
889
+ :version: 810
890
+ :args: - OCIEnv **envp
891
+ - ub4 mode
892
+ - dvoid *ctxp
893
+ - dvoid *(*malocfp)(dvoid *ctxp, size_t size)
894
+ - dvoid *(*ralocfp)(dvoid *ctxp, dvoid *memptr, size_t newsize)
895
+ - void (*mfreefp)(dvoid *ctxp, dvoid *memptr)
896
+ - size_t xtramem_sz
897
+ - dvoid **usrmempp
898
+
887
899
  # round trip: 1
888
900
  OCILobClose_nb:
889
901
  :version: 810
@@ -924,7 +936,7 @@ OCILobLocatorAssign_nb:
924
936
  :version: 810
925
937
  :args: - OCISvcCtx *svchp
926
938
  - OCIError *errhp
927
- - const OCILobLocator *src_locp
939
+ - CONST OCILobLocator *src_locp
928
940
  - OCILobLocator **dst_locpp
929
941
 
930
942
  # round trip 1
@@ -939,7 +951,7 @@ OCILobOpen_nb:
939
951
  OCINumberIsInt:
940
952
  :version: 810
941
953
  :args: - OCIError *err
942
- - const OCINumber *number
954
+ - CONST OCINumber *number
943
955
  - boolean *result
944
956
  :code_if_not_found: |
945
957
  /* pseude code
@@ -966,7 +978,7 @@ OCINumberIsInt:
966
978
  OCINumberPrec:
967
979
  :version: 810
968
980
  :args: - OCIError *err
969
- - const OCINumber *number
981
+ - CONST OCINumber *number
970
982
  - eword nDigs
971
983
  - OCINumber *result
972
984
 
@@ -988,15 +1000,15 @@ OCINumberSetPi:
988
1000
  OCINumberShift:
989
1001
  :version: 810
990
1002
  :args: - OCIError *err
991
- - const OCINumber *number
992
- - const sword nDig
1003
+ - CONST OCINumber *number
1004
+ - CONST sword nDig
993
1005
  - OCINumber *result
994
1006
 
995
1007
  # round trip: 0
996
1008
  OCINumberSign:
997
1009
  :version: 810
998
1010
  :args: - OCIError *err
999
- - const OCINumber *number
1011
+ - CONST OCINumber *number
1000
1012
  - sword *result
1001
1013
  :code_if_not_found: |
1002
1014
  /* pseude code
@@ -1048,7 +1060,7 @@ OCIDateTimeGetDate:
1048
1060
  :version: 900
1049
1061
  :args: - dvoid *hndl
1050
1062
  - OCIError *err
1051
- - const OCIDateTime *date
1063
+ - CONST OCIDateTime *date
1052
1064
  - sb2 *yr
1053
1065
  - ub1 *mnth
1054
1066
  - ub1 *dy
@@ -1069,7 +1081,7 @@ OCIDateTimeGetTimeZoneOffset:
1069
1081
  :version: 900
1070
1082
  :args: - dvoid *hndl
1071
1083
  - OCIError *err
1072
- - const OCIDateTime *datetime
1084
+ - CONST OCIDateTime *datetime
1073
1085
  - sb1 *hr
1074
1086
  - sb1 *mm
1075
1087
 
@@ -1083,7 +1095,7 @@ OCIIntervalGetDaySecond:
1083
1095
  - sb4 *mm
1084
1096
  - sb4 *ss
1085
1097
  - sb4 *fsec
1086
- - const OCIInterval *result
1098
+ - CONST OCIInterval *result
1087
1099
 
1088
1100
  # round trip: 0 (not docmented. I guess.)
1089
1101
  OCIIntervalGetYearMonth:
@@ -1092,7 +1104,7 @@ OCIIntervalGetYearMonth:
1092
1104
  - OCIError *err
1093
1105
  - sb4 *yr
1094
1106
  - sb4 *mnth
1095
- - const OCIInterval *result
1107
+ - CONST OCIInterval *result
1096
1108
 
1097
1109
  # round trip: 0 (not docmented. I guess.)
1098
1110
  OCIIntervalSetDaySecond: