ruby-oci8 2.1.2-x86-mingw32 → 2.1.3-x86-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.yardopts +3 -0
- data/COPYING +30 -0
- data/COPYING_old +64 -0
- data/ChangeLog +115 -0
- data/Makefile +8 -4
- data/NEWS +60 -1
- data/README.md +9 -4
- data/VERSION +1 -1
- data/dist-files +5 -0
- data/lib/oci8.rb +32 -19
- data/lib/oci8.rb.in +30 -17
- data/lib/oci8/connection_pool.rb +16 -27
- data/lib/oci8/cursor.rb +564 -0
- data/lib/oci8/datetime.rb +11 -17
- data/lib/oci8/encoding-init.rb +1 -0
- data/lib/oci8/metadata.rb +76 -151
- data/lib/oci8/object.rb +3 -3
- data/lib/oci8/oci8.rb +29 -335
- data/lib/oci8lib_18.map +1091 -1126
- data/lib/oci8lib_18.so +0 -0
- data/lib/oci8lib_191.map +1145 -1197
- data/lib/oci8lib_191.so +0 -0
- data/ruby-oci8.gemspec +1 -0
- data/setup.rb +4 -2
- data/test/config.rb +64 -0
- data/test/setup_test_object.sql +171 -0
- data/test/test_all.rb +1 -0
- data/test/test_break.rb +18 -2
- data/test/test_clob.rb +4 -4
- data/test/test_datetime.rb +8 -47
- data/test/test_metadata.rb +78 -0
- data/test/test_object.rb +463 -0
- data/test/test_oci8.rb +22 -0
- metadata +11 -6
data/lib/oci8/datetime.rb
CHANGED
@@ -4,24 +4,22 @@ class OCI8
|
|
4
4
|
|
5
5
|
module BindType
|
6
6
|
|
7
|
-
# call-seq:
|
8
|
-
# OCI8::BindType.default_timezone -> :local or :utc
|
9
|
-
#
|
10
7
|
# Returns the default time zone when using Oracle 8.x client.
|
11
8
|
# The value is unused when using Oracle 9i or upper client.
|
12
9
|
#
|
13
10
|
# See also: OCI8::BindType::Time
|
11
|
+
#
|
12
|
+
# @return [:local or :utc]
|
14
13
|
def self.default_timezone
|
15
14
|
OCI8::BindType::Util.default_timezone
|
16
15
|
end
|
17
16
|
|
18
|
-
# call-seq:
|
19
|
-
# OCI8::BindType.default_timezone = :local or :utc
|
20
|
-
#
|
21
17
|
# Sets the default time zone when using Oracle 8.x client.
|
22
18
|
# The value is unused when using Oracle 9i or upper client.
|
23
19
|
#
|
24
20
|
# See also: OCI8::BindType::Time
|
21
|
+
#
|
22
|
+
# @param [:local or :utc] tz
|
25
23
|
def self.default_timezone=(tz)
|
26
24
|
OCI8::BindType::Util.default_timezone = tz
|
27
25
|
end
|
@@ -204,7 +202,7 @@ class OCI8
|
|
204
202
|
usec = (nsec == 0) ? 0 : nsec.to_r / 1000
|
205
203
|
begin
|
206
204
|
if timezone
|
207
|
-
return ::Time.send(
|
205
|
+
return ::Time.send(timezone, year, month, day, hour, minute, sec, usec)
|
208
206
|
else
|
209
207
|
if tz_hour == 0 and tz_min == 0
|
210
208
|
tm = ::Time.utc(year, month, day, hour, minute, sec, usec)
|
@@ -538,22 +536,18 @@ class OCI8
|
|
538
536
|
@@fsec = @@sec / 1000000000
|
539
537
|
@@unit = :second
|
540
538
|
|
541
|
-
# call-seq:
|
542
|
-
# OCI8::BindType::IntervalDS.unit -> :second or :day
|
543
|
-
#
|
544
|
-
# (new in 2.0.3)
|
545
|
-
#
|
546
539
|
# Retrieves the unit of interval.
|
540
|
+
#
|
541
|
+
# @return [:second or :day]
|
542
|
+
# @since 2.0.3
|
547
543
|
def self.unit
|
548
544
|
@@unit
|
549
545
|
end
|
550
546
|
|
551
|
-
# call-seq:
|
552
|
-
# OCI8::BindType::IntervalDS.unit = :second or :day
|
553
|
-
#
|
554
|
-
# (new in 2.0.3)
|
555
|
-
#
|
556
547
|
# Changes the unit of interval. :second is the default.
|
548
|
+
#
|
549
|
+
# @param [:second or :day] val
|
550
|
+
# @since 2.0.3
|
557
551
|
def self.unit=(val)
|
558
552
|
case val
|
559
553
|
when :second, :day
|
data/lib/oci8/encoding-init.rb
CHANGED
data/lib/oci8/metadata.rb
CHANGED
@@ -59,30 +59,27 @@ class OCI8
|
|
59
59
|
end
|
60
60
|
private :num_params
|
61
61
|
|
62
|
-
# call-seq:
|
63
|
-
# obj_id -> integer or nil
|
64
|
-
#
|
65
62
|
# Returns the object ID, which is the same as the value of the
|
66
63
|
# OBJECT_ID column from ALL_OBJECTS. It returns +nil+
|
67
64
|
# if the database object doesn't have ID.
|
65
|
+
#
|
66
|
+
# @return [Integer or nil]
|
68
67
|
def obj_id
|
69
68
|
attr_get_ub4(OCI_ATTR_OBJ_ID)
|
70
69
|
end
|
71
70
|
|
72
|
-
# call-seq:
|
73
|
-
# obj_name -> string
|
74
|
-
#
|
75
71
|
# Retruns the object name such as table name, view name,
|
76
72
|
# procedure name, and so on.
|
73
|
+
#
|
74
|
+
# @return [String]
|
77
75
|
def obj_name
|
78
76
|
attr_get_string(OCI_ATTR_OBJ_NAME)
|
79
77
|
end
|
80
78
|
|
81
|
-
# call-seq:
|
82
|
-
# obj_schema -> string
|
83
|
-
#
|
84
79
|
# Retruns the schema name. It returns +nil+
|
85
80
|
# if the database object is not defined just under a schema.
|
81
|
+
#
|
82
|
+
# @return [String]
|
86
83
|
def obj_schema
|
87
84
|
attr_get_string(OCI_ATTR_OBJ_SCHEMA)
|
88
85
|
end
|
@@ -370,10 +367,9 @@ class OCI8
|
|
370
367
|
|
371
368
|
## Table 6-2 Attributes Belonging to Tables or Views
|
372
369
|
|
373
|
-
# call-seq:
|
374
|
-
# num_cols -> integer
|
375
|
-
#
|
376
370
|
# Returns number of columns
|
371
|
+
#
|
372
|
+
# @return [Integer]
|
377
373
|
def num_cols
|
378
374
|
attr_get_ub2(OCI_ATTR_NUM_COLS)
|
379
375
|
end
|
@@ -384,19 +380,15 @@ class OCI8
|
|
384
380
|
end
|
385
381
|
private :list_columns
|
386
382
|
|
387
|
-
# call-seq:
|
388
|
-
# type_metadata -> an OCI8::Metadata::Type or nil
|
389
|
-
#
|
390
383
|
# Retruns an instance of OCI8::Metadata::Type if the table is an
|
391
384
|
# {object table}[http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28371/adobjint.htm#sthref61].
|
392
385
|
# Otherwise, +nil+.
|
386
|
+
#
|
387
|
+
# @return [OCI8::Metadata::Type or nil]
|
393
388
|
def type_metadata
|
394
389
|
__type_metadata(OCI8::Metadata::Type) if is_typed?
|
395
390
|
end
|
396
391
|
|
397
|
-
# call-seq:
|
398
|
-
# is_temporary? -> true or false
|
399
|
-
#
|
400
392
|
# Returns +true+ if the table is a
|
401
393
|
# {temporary table}[http://download.oracle.com/docs/cd/B28359_01/server.111/b28318/schema.htm#i16096].
|
402
394
|
# Otherwise, +false+.
|
@@ -404,51 +396,42 @@ class OCI8
|
|
404
396
|
attr_get_ub1(OCI_ATTR_IS_TEMPORARY) != 0
|
405
397
|
end
|
406
398
|
|
407
|
-
# call-seq:
|
408
|
-
# is_typed? -> true or false
|
409
|
-
#
|
410
399
|
# Returns +true+ if the table is a object table. Otherwise, +false+.
|
411
400
|
def is_typed?
|
412
401
|
attr_get_ub1(OCI_ATTR_IS_TYPED) != 0
|
413
402
|
end
|
414
403
|
|
415
|
-
# call-seq:
|
416
|
-
# duration -> :transaction, :session or nil
|
417
|
-
#
|
418
404
|
# Retruns +:transaction+ if the table is a
|
419
405
|
# {transaction-specific temporary table}[http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/statements_7002.htm#i2189569].
|
420
406
|
# +:session+ if it is a
|
421
407
|
# {session-specific temporary table}[http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/statements_7002.htm#i2189569].
|
422
408
|
# Otherwise, +nil+.
|
409
|
+
#
|
410
|
+
# @return [:transaction, :session or nil]
|
423
411
|
def duration
|
424
412
|
__duration
|
425
413
|
end
|
426
414
|
|
427
415
|
## Table 6-3 Attributes Specific to Tables
|
428
416
|
|
429
|
-
# call-seq:
|
430
|
-
# dba -> integer
|
431
|
-
#
|
432
417
|
# Returns a Data Block Address(DBA) of the segment header.
|
433
418
|
#
|
434
419
|
# The dba is converted to the file number and the block number
|
435
420
|
# by DBMS_UTILITY.DATA_BLOCK_ADDRESS_FILE and
|
436
421
|
# DBMS_UTILITY.DATA_BLOCK_ADDRESS_BLOCK respectively.
|
422
|
+
#
|
423
|
+
# @return [Integer]
|
437
424
|
def dba
|
438
425
|
attr_get_ub4(OCI_ATTR_RDBA)
|
439
426
|
end
|
440
427
|
|
441
|
-
# call-seq:
|
442
|
-
# tablespace -> integer
|
443
|
-
#
|
444
428
|
# Returns a tablespace number the table resides in.
|
429
|
+
#
|
430
|
+
# @return [Integer]
|
445
431
|
def tablespace
|
446
432
|
__word(OCI_ATTR_TABLESPACE)
|
447
433
|
end
|
448
434
|
|
449
|
-
# call-seq:
|
450
|
-
# clustered? -> true or false
|
451
|
-
#
|
452
435
|
# Returns +true+ if the table is part of a
|
453
436
|
# cluster[http://download.oracle.com/docs/cd/B28359_01/server.111/b28318/schema.htm#CNCPT608].
|
454
437
|
# Otherwise, +false+.
|
@@ -456,9 +439,6 @@ class OCI8
|
|
456
439
|
attr_get_ub1(OCI_ATTR_CLUSTERED) != 0
|
457
440
|
end
|
458
441
|
|
459
|
-
# call-seq:
|
460
|
-
# partitioned? -> true or false
|
461
|
-
#
|
462
442
|
# Returns +true+ if the table is a
|
463
443
|
# {partitioned table}[http://download.oracle.com/docs/cd/B28359_01/server.111/b28318/partconc.htm#i449863].
|
464
444
|
# Otherwise, +false+.
|
@@ -466,9 +446,6 @@ class OCI8
|
|
466
446
|
attr_get_ub1(OCI_ATTR_PARTITIONED) != 0
|
467
447
|
end
|
468
448
|
|
469
|
-
# call-seq:
|
470
|
-
# index_only? -> true or false
|
471
|
-
#
|
472
449
|
# Returns +true+ if the table is an
|
473
450
|
# {index-organized table}[http://download.oracle.com/docs/cd/B28359_01/server.111/b28318/schema.htm#i23877]
|
474
451
|
# Otherwise, +false+.
|
@@ -476,10 +453,9 @@ class OCI8
|
|
476
453
|
attr_get_ub1(OCI_ATTR_INDEX_ONLY) != 0
|
477
454
|
end
|
478
455
|
|
479
|
-
#
|
480
|
-
# columns -> list of column information
|
456
|
+
# Returns column information of the table.
|
481
457
|
#
|
482
|
-
#
|
458
|
+
# @return [array of OCI8::Metadata::Column]
|
483
459
|
def columns
|
484
460
|
@columns ||= list_columns.to_a
|
485
461
|
end
|
@@ -502,10 +478,9 @@ class OCI8
|
|
502
478
|
|
503
479
|
## Table 6-2 Attributes Belonging to Tables or Views
|
504
480
|
|
505
|
-
# call-seq:
|
506
|
-
# num_cols -> integer
|
507
|
-
#
|
508
481
|
# Returns number of columns
|
482
|
+
#
|
483
|
+
# @return [Integer]
|
509
484
|
def num_cols
|
510
485
|
attr_get_ub2(OCI_ATTR_NUM_COLS)
|
511
486
|
end
|
@@ -536,10 +511,9 @@ class OCI8
|
|
536
511
|
# __duration
|
537
512
|
#end
|
538
513
|
|
539
|
-
#
|
540
|
-
# columns -> list of column information
|
514
|
+
# Returns column information of the view.
|
541
515
|
#
|
542
|
-
#
|
516
|
+
# @return [array of OCI8::Metadata::Column]
|
543
517
|
def columns
|
544
518
|
@columns ||= list_columns.to_a
|
545
519
|
end
|
@@ -574,9 +548,6 @@ class OCI8
|
|
574
548
|
super if is_standalone?
|
575
549
|
end
|
576
550
|
|
577
|
-
# call-seq:
|
578
|
-
# is_invoker_rights? -> true or false
|
579
|
-
#
|
580
551
|
# Returns +true+ if the subprogram has
|
581
552
|
# {invoker's rights}[http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28370/subprograms.htm#i18574].
|
582
553
|
# Otherwise, +false+.
|
@@ -593,29 +564,24 @@ class OCI8
|
|
593
564
|
#end
|
594
565
|
alias name obj_name # :nodoc: for backward compatibility
|
595
566
|
|
596
|
-
# call-seq:
|
597
|
-
# overload_id -> integer or nil
|
598
|
-
#
|
599
567
|
# Returns +nil+ for a standalone stored subprogram,
|
600
568
|
# positive integer for a
|
601
569
|
# {overloaded packaged subprogram}[http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28370/subprograms.htm#i12352].
|
602
570
|
# , otherwise zero.
|
571
|
+
#
|
572
|
+
# @return [Integer or nil]
|
603
573
|
def overload_id
|
604
574
|
attr_get_ub2(OCI_ATTR_OVERLOAD_ID) unless is_standalone?
|
605
575
|
end
|
606
576
|
|
607
|
-
#
|
608
|
-
# arguments -> list of argument information
|
609
|
-
#
|
610
|
-
# Returns an array of OCI8::Metadata::Argument of the subprogram.
|
577
|
+
# Returns argument information of the subprogram.
|
611
578
|
# If it is a function, the first array element is information of its return type.
|
579
|
+
#
|
580
|
+
# @return [array of OCI8::Metadata::Argument]
|
612
581
|
def arguments
|
613
582
|
@arguments ||= list_arguments.to_a
|
614
583
|
end
|
615
584
|
|
616
|
-
# call-seq:
|
617
|
-
# is_standalone? -> true or false
|
618
|
-
#
|
619
585
|
# Returns +true+ if the subprogram is standalone, +false+
|
620
586
|
# if packaged.
|
621
587
|
def is_standalone?
|
@@ -674,9 +640,6 @@ class OCI8
|
|
674
640
|
end
|
675
641
|
private :list_subprograms
|
676
642
|
|
677
|
-
# call-seq:
|
678
|
-
# is_invoker_rights? -> true or false
|
679
|
-
#
|
680
643
|
# Returns +true+ if the package subprograms have
|
681
644
|
# {invoker's rights}[http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28370/subprograms.htm#i18574].
|
682
645
|
# Otherwise, +false+.
|
@@ -684,10 +647,9 @@ class OCI8
|
|
684
647
|
attr_get_ub1(OCI_ATTR_IS_INVOKER_RIGHTS) != 0
|
685
648
|
end
|
686
649
|
|
687
|
-
# call-seq:
|
688
|
-
# subprograms -> array
|
689
|
-
#
|
690
650
|
# Returns an array of Function and Procedure defined within the Package.
|
651
|
+
#
|
652
|
+
# @return [array of OCI8::Metadata::Function and OCI8::Metadata::Procedure]
|
691
653
|
def subprograms
|
692
654
|
@subprograms ||= list_subprograms.to_a.each do |prog|
|
693
655
|
prog.instance_variable_set(:@is_standalone, false)
|
@@ -712,27 +674,22 @@ class OCI8
|
|
712
674
|
self
|
713
675
|
end
|
714
676
|
|
715
|
-
# call-seq:
|
716
|
-
# typecode -> :named_type or :named_collection
|
717
|
-
#
|
718
677
|
# Returns +:named_type+ if the type is an object type,
|
719
678
|
# +:named_collection+ if it is a nested table or a varray.
|
679
|
+
#
|
680
|
+
# @return [:named_type or :named_collection]
|
720
681
|
def typecode
|
721
682
|
__typecode(OCI_ATTR_TYPECODE)
|
722
683
|
end
|
723
684
|
|
724
|
-
# call-seq:
|
725
|
-
# collection_typecode -> :table, :varray or nil
|
726
|
-
#
|
727
685
|
# Returns +:table+ if the type is a nested table,
|
728
686
|
# +:varray+ if it is a varray. Otherwise, +nil+.
|
687
|
+
#
|
688
|
+
# @return [:table, :varray or nil]
|
729
689
|
def collection_typecode
|
730
690
|
__typecode(OCI_ATTR_COLLECTION_TYPECODE) if typecode == :named_collection
|
731
691
|
end
|
732
692
|
|
733
|
-
# call-seq:
|
734
|
-
# is_incomplete_type? -> boolean
|
735
|
-
#
|
736
693
|
# Returns +true+ if the type is an
|
737
694
|
# {incomplete type}[http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28371/adobjmng.htm#i1003083],
|
738
695
|
# which is used for {forward declaration}[http://en.wikipedia.org/wiki/Forward_declaration].
|
@@ -741,9 +698,6 @@ class OCI8
|
|
741
698
|
attr_get_ub1(OCI_ATTR_IS_INCOMPLETE_TYPE) != 0
|
742
699
|
end
|
743
700
|
|
744
|
-
# call-seq:
|
745
|
-
# is_system_type? -> boolean
|
746
|
-
#
|
747
701
|
# Always returns +false+ because there is no way to create
|
748
702
|
# a type metadata object for a system type such as +NUMBER+,
|
749
703
|
# +CHAR+ and +VARCHAR+.
|
@@ -751,9 +705,6 @@ class OCI8
|
|
751
705
|
attr_get_ub1(OCI_ATTR_IS_SYSTEM_TYPE) != 0
|
752
706
|
end
|
753
707
|
|
754
|
-
# call-seq:
|
755
|
-
# is_predefined_type? -> boolean
|
756
|
-
#
|
757
708
|
# Always returns +false+.
|
758
709
|
#--
|
759
710
|
# I don't know the definition of predefined type...
|
@@ -761,9 +712,6 @@ class OCI8
|
|
761
712
|
attr_get_ub1(OCI_ATTR_IS_PREDEFINED_TYPE) != 0
|
762
713
|
end
|
763
714
|
|
764
|
-
# call-seq:
|
765
|
-
# is_transient_type? -> boolean
|
766
|
-
#
|
767
715
|
# Always returns +false+ because there is no way to create
|
768
716
|
# a type metadata object for a transient type, which is a type
|
769
717
|
# dynamically created by C API.
|
@@ -771,9 +719,6 @@ class OCI8
|
|
771
719
|
attr_get_ub1(OCI_ATTR_IS_TRANSIENT_TYPE) != 0
|
772
720
|
end
|
773
721
|
|
774
|
-
# call-seq:
|
775
|
-
# is_predefined_type? -> boolean
|
776
|
-
#
|
777
722
|
# Always returns +false+.
|
778
723
|
#--
|
779
724
|
# I don't know the definition of system generated type.
|
@@ -782,9 +727,6 @@ class OCI8
|
|
782
727
|
attr_get_ub1(OCI_ATTR_IS_SYSTEM_GENERATED_TYPE) != 0
|
783
728
|
end
|
784
729
|
|
785
|
-
# call-seq:
|
786
|
-
# has_nested_table? -> boolean
|
787
|
-
#
|
788
730
|
# Returns +true+ if the type is a nested table or
|
789
731
|
# has a nested table attribute.
|
790
732
|
# Otherwise, +false+.
|
@@ -792,9 +734,6 @@ class OCI8
|
|
792
734
|
attr_get_ub1(OCI_ATTR_HAS_NESTED_TABLE) != 0
|
793
735
|
end
|
794
736
|
|
795
|
-
# call-seq:
|
796
|
-
# has_lob? -> boolean
|
797
|
-
#
|
798
737
|
# Returns +true+ if the type has a CLOB, NCLOB or BLOB
|
799
738
|
# attribute.
|
800
739
|
# Otherwise, +false+.
|
@@ -802,29 +741,24 @@ class OCI8
|
|
802
741
|
attr_get_ub1(OCI_ATTR_HAS_LOB) != 0
|
803
742
|
end
|
804
743
|
|
805
|
-
# call-seq:
|
806
|
-
# has_file? -> boolean
|
807
|
-
#
|
808
744
|
# Returns +true+ if the type has a BFILE attribute.
|
809
745
|
# Otherwise, +false+.
|
810
746
|
def has_file?
|
811
747
|
attr_get_ub1(OCI_ATTR_HAS_FILE) != 0
|
812
748
|
end
|
813
749
|
|
814
|
-
#
|
815
|
-
# collection_element -> element information of the collection type
|
816
|
-
#
|
817
|
-
# Returns an OCI8::Metadata::Collection if the type is a nested
|
750
|
+
# Returns element information of the collection type if the type is a nested
|
818
751
|
# table or a varray.
|
819
752
|
# Otherwise, +nil+.
|
753
|
+
#
|
754
|
+
# @return [OCI8::Metadata::Collection or nil]
|
820
755
|
def collection_element
|
821
756
|
__param(OCI_ATTR_COLLECTION_ELEMENT) if typecode == :named_collection
|
822
757
|
end
|
823
758
|
|
824
|
-
# call-seq:
|
825
|
-
# num_type_attrs -> integer
|
826
|
-
#
|
827
759
|
# Returns number of type attributes.
|
760
|
+
#
|
761
|
+
# @return [Integer]
|
828
762
|
def num_type_attrs
|
829
763
|
attr_get_ub2(OCI_ATTR_NUM_TYPE_ATTRS)
|
830
764
|
end
|
@@ -835,10 +769,9 @@ class OCI8
|
|
835
769
|
end
|
836
770
|
private :list_type_attrs
|
837
771
|
|
838
|
-
# call-seq:
|
839
|
-
# num_type_methods -> integer
|
840
|
-
#
|
841
772
|
# Returns number of type methods.
|
773
|
+
#
|
774
|
+
# @return [Integer]
|
842
775
|
def num_type_methods
|
843
776
|
attr_get_ub2(OCI_ATTR_NUM_TYPE_METHODS)
|
844
777
|
end
|
@@ -849,29 +782,24 @@ class OCI8
|
|
849
782
|
end
|
850
783
|
private :list_type_methods
|
851
784
|
|
852
|
-
#
|
853
|
-
# map_method -> map method information
|
854
|
-
#
|
855
|
-
# Returns an instance of OCI8::Metadata::TypeMethod of a
|
785
|
+
# Returns information of the
|
856
786
|
# {map method}[http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28371/adobjbas.htm#sthref180]
|
857
787
|
# if it is defined in the type. Otherwise, +nil+.
|
788
|
+
#
|
789
|
+
# @return [OCI8::Metadata::TypeMethod or nil]
|
858
790
|
def map_method
|
859
791
|
__param(OCI_ATTR_MAP_METHOD)
|
860
792
|
end
|
861
793
|
|
862
|
-
#
|
863
|
-
# order_method -> order method information
|
864
|
-
#
|
865
|
-
# Returns an instance of OCI8::Metadata::TypeMethod of a
|
794
|
+
# Returns information of the
|
866
795
|
# {order method}[http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28371/adobjbas.htm#sthref185]
|
867
796
|
# if it is defined in the type. Otherwise, +nil+.
|
797
|
+
#
|
798
|
+
# @return [OCI8::Metadata::TypeMethod or nil]
|
868
799
|
def order_method
|
869
800
|
__param(OCI_ATTR_ORDER_METHOD)
|
870
801
|
end
|
871
802
|
|
872
|
-
# call-seq:
|
873
|
-
# is_invoker_rights? -> boolean
|
874
|
-
#
|
875
803
|
# Returns +true+ if the type has
|
876
804
|
# {invoker's rights}[http://download.oracle.com/docs/cd/B28359_01/appdev.111/appdev.111/b28371/adobjdes.htm#ADOBJ00810].
|
877
805
|
# Otherwise, +false+.
|
@@ -879,25 +807,20 @@ class OCI8
|
|
879
807
|
attr_get_ub1(OCI_ATTR_IS_INVOKER_RIGHTS) != 0
|
880
808
|
end
|
881
809
|
|
882
|
-
# call-seq:
|
883
|
-
# name -> string
|
884
|
-
#
|
885
810
|
# Returns the type name.
|
811
|
+
#
|
812
|
+
# @return [String]
|
886
813
|
def name
|
887
814
|
attr_get_string(OCI_ATTR_NAME)
|
888
815
|
end
|
889
816
|
|
890
|
-
# call-seq:
|
891
|
-
# schema_name -> string
|
892
|
-
#
|
893
817
|
# Returns the schema name where the type has been created.
|
818
|
+
#
|
819
|
+
# @return [String]
|
894
820
|
def schema_name
|
895
821
|
attr_get_string(OCI_ATTR_SCHEMA_NAME)
|
896
822
|
end
|
897
823
|
|
898
|
-
# call-seq:
|
899
|
-
# is_final_type? -> boolean
|
900
|
-
#
|
901
824
|
# Returns +true+ if the type is a
|
902
825
|
# {final type}[http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28371/adobjbas.htm#CIHFBHFC];
|
903
826
|
# in other words, subtypes cannot be derived from the type.
|
@@ -906,9 +829,6 @@ class OCI8
|
|
906
829
|
attr_get_ub1(OCI_ATTR_IS_FINAL_TYPE) != 0
|
907
830
|
end
|
908
831
|
|
909
|
-
# call-seq:
|
910
|
-
# is_instantiable_type? -> boolean
|
911
|
-
#
|
912
832
|
# Returns +true+ if the type is not declared without
|
913
833
|
# {<tt>NOT INSTANTIABLE</tt>}[http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28371/adobjbas.htm#i456586].
|
914
834
|
# Otherwise, +false+.
|
@@ -916,9 +836,6 @@ class OCI8
|
|
916
836
|
attr_get_ub1(OCI_ATTR_IS_INSTANTIABLE_TYPE) != 0
|
917
837
|
end
|
918
838
|
|
919
|
-
# call-seq:
|
920
|
-
# is_subtype? -> boolean
|
921
|
-
#
|
922
839
|
# Returns +true+ if the type is a
|
923
840
|
# {subtype}[http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28371/adobjbas.htm#BCFJJADG].
|
924
841
|
# Otherwise, +false+.
|
@@ -926,36 +843,32 @@ class OCI8
|
|
926
843
|
attr_get_ub1(OCI_ATTR_IS_SUBTYPE) != 0
|
927
844
|
end
|
928
845
|
|
929
|
-
# call-seq:
|
930
|
-
# supertype_schema_name -> string or nil
|
931
|
-
#
|
932
846
|
# Returns the supertype's schema name if the type is a subtype.
|
933
847
|
# Otherwise, +nil+.
|
848
|
+
#
|
849
|
+
# @return [String or nil]
|
934
850
|
def supertype_schema_name
|
935
851
|
attr_get_string(OCI_ATTR_SUPERTYPE_SCHEMA_NAME) if is_subtype?
|
936
852
|
end
|
937
853
|
|
938
|
-
# call-seq:
|
939
|
-
# supertype_name -> string or nil
|
940
|
-
#
|
941
854
|
# Returns the supertype's name if the type is a subtype.
|
942
855
|
# Otherwise, +nil+.
|
856
|
+
#
|
857
|
+
# @return [String or nil]
|
943
858
|
def supertype_name
|
944
859
|
attr_get_string(OCI_ATTR_SUPERTYPE_NAME) if is_subtype?
|
945
860
|
end
|
946
861
|
|
947
|
-
#
|
948
|
-
# type_attrs -> list of attribute information
|
862
|
+
# Returns attribute information of the type.
|
949
863
|
#
|
950
|
-
#
|
864
|
+
# @return [array of OCI8::Metadata::TypeAttr]
|
951
865
|
def type_attrs
|
952
866
|
@type_attrs ||= list_type_attrs.to_a
|
953
867
|
end
|
954
868
|
|
955
|
-
#
|
956
|
-
# type_methods -> list of method information
|
869
|
+
# Returns method information of the type.
|
957
870
|
#
|
958
|
-
#
|
871
|
+
# @return [array of OCI8::Metadata::TypeMethod]
|
959
872
|
def type_methods
|
960
873
|
@type_methods ||= list_type_methods.to_a
|
961
874
|
end
|
@@ -1173,9 +1086,11 @@ class OCI8
|
|
1173
1086
|
__boolean(OCI_ATTR_IS_OVERRIDING_METHOD)
|
1174
1087
|
end
|
1175
1088
|
|
1176
|
-
#
|
1089
|
+
# Returns argument information of the type method.
|
1177
1090
|
#
|
1178
1091
|
# The first element is the return type in case of Function.
|
1092
|
+
#
|
1093
|
+
# @return [array of OCI8::Metadata::Argument]
|
1179
1094
|
def arguments
|
1180
1095
|
@arguments ||= list_arguments.to_a
|
1181
1096
|
end
|
@@ -1337,23 +1252,31 @@ class OCI8
|
|
1337
1252
|
end
|
1338
1253
|
|
1339
1254
|
# minimum value
|
1255
|
+
#
|
1256
|
+
# @return [Integer]
|
1340
1257
|
def min
|
1341
|
-
|
1258
|
+
attr_get_integer(OCI_ATTR_MIN)
|
1342
1259
|
end
|
1343
1260
|
|
1344
1261
|
# maximum value
|
1262
|
+
#
|
1263
|
+
# @return [Integer]
|
1345
1264
|
def max
|
1346
|
-
|
1265
|
+
attr_get_integer(OCI_ATTR_MAX)
|
1347
1266
|
end
|
1348
1267
|
|
1349
1268
|
# increment
|
1269
|
+
#
|
1270
|
+
# @return [Integer]
|
1350
1271
|
def incr
|
1351
|
-
|
1272
|
+
attr_get_integer(OCI_ATTR_INCR)
|
1352
1273
|
end
|
1353
1274
|
|
1354
1275
|
# number of sequence numbers cached; zero if the sequence is not a cached sequence.
|
1276
|
+
#
|
1277
|
+
# @return [Integer]
|
1355
1278
|
def cache
|
1356
|
-
|
1279
|
+
attr_get_integer(OCI_ATTR_CACHE)
|
1357
1280
|
end
|
1358
1281
|
|
1359
1282
|
# whether the sequence is ordered
|
@@ -1362,8 +1285,10 @@ class OCI8
|
|
1362
1285
|
end
|
1363
1286
|
|
1364
1287
|
# high-water mark
|
1288
|
+
#
|
1289
|
+
# @return [Integer]
|
1365
1290
|
def hw_mark
|
1366
|
-
|
1291
|
+
attr_get_integer(OCI_ATTR_HW_MARK)
|
1367
1292
|
end
|
1368
1293
|
end
|
1369
1294
|
|