class OCI8::Metadata::ArgBase

Abstract super class of Argument, TypeArgument and TypeResult.

def arguments

of a record or table type).
The list of arguments at the next level (when the argument is
def arguments
  @arguments ||= list_arguments.to_a
end

def charset_form

string/character type
Returns the character set form if the argument is of a
def charset_form
  __charset_form
end

def charset_id

string/character type
Returns the character set ID if the argument is of a
def charset_id
  attr_get_ub2(OCI_ATTR_CHARSET_ID)
end

def charset_name

string/character type
Returns the character set name if the argument is of a
def charset_name
  __charset_name(charset_id)
end

def data_size

returns 22 for NUMBERs.
returned in bytes and not characters for strings and raws. It
The size of the datatype of the argument. This length is
def data_size
  attr_get_ub2(OCI_ATTR_DATA_SIZE)
end

def data_type

the datatype of the argument
def data_type
  __data_type
end

def has_default

Deprecated:

Returns:
  • (1 or 0) -
def has_default
  attr_get_ub1(OCI_ATTR_HAS_DEFAULT)
end

def has_default?

Other tags:
    Since: - 2.1.6

Returns:
  • (true or false) -
def has_default?
  __boolean(OCI_ATTR_HAS_DEFAULT)
end

def inspect # :nodoc:

:nodoc:
def inspect # :nodoc:
  "#<#{self.class.name}: #{name} #{__data_type_string}>"
end

def iomode

:out or :inout
Indicates the argument mode. Values are :in,
def iomode
  case attr_get_ub4(OCI_ATTR_IOMODE)
  when 0; :in
  when 1; :out
  when 2; :inout
  end
end

def level

The datatype levels. This attribute always returns zero.
def level
  attr_get_ub2(OCI_ATTR_LEVEL)
end

def link

package is remote.
happen only in the case of package local types, when the
link name of the database on which the type exists. This can
For :named_type or :ref, returns a string with the database
def link
  attr_get_string(OCI_ATTR_LINK)
end

def list_arguments

of a record or table type).
The list of arguments at the next level (when the argument is
def list_arguments
  __param(OCI_ATTR_LIST_ARGUMENTS)
end

def name

the argument name
def name
  attr_get_string(OCI_ATTR_NAME)
end

def position

the position of the argument in the argument list.
def position
  attr_get_ub2(OCI_ATTR_POSITION)
end

def precision

NUMBER(precision, scale) can be represented simply as NUMBER.
NUMBER(precision, scale). For the case when precision is 0,
nonzero and scale is -127, then it is a FLOAT, else it is a
The precision of numeric arguments. If the precision is
def precision
  __is_implicit? ? attr_get_sb2(OCI_ATTR_PRECISION) : attr_get_ub1(OCI_ATTR_PRECISION)
end

def radix

Returns a radix (if number type)
def radix
  attr_get_ub1(OCI_ATTR_RADIX)
end

def scale

NUMBER(precision, scale) can be represented simply as NUMBER.
NUMBER(precision, scale). For the case when precision is 0,
and scale is -127, then it is a FLOAT, else it is a
The scale of numeric arguments. If the precision is nonzero
def scale
  attr_get_sb1(OCI_ATTR_SCALE)
end

def schema_name

was created in the case of package local types
under which the type was created, or under which the package
For :named_type or :ref, returns a string with the schema name
def schema_name
  attr_get_string(OCI_ATTR_SCHEMA_NAME)
end

def sub_name

in the case of package local types
For :named_type or :ref, returns a string with the type name,
def sub_name
  attr_get_string(OCI_ATTR_SUB_NAME)
end

def type_metadata

to type metadata if possible
def type_metadata
  __type_metadata(OCI8::Metadata::Type)
end

def type_name

name of the named datatype pointed to by the REF is returned.
datatype's type is returned. If the datatype is :ref, the type
:ref. If the datatype is :named_type, the name of the named
contain the type name if the datatype is :named_type or
in the case of package local types. The returned value will
Returns a string which is the type name, or the package name
def type_name
  attr_get_string(OCI_ATTR_TYPE_NAME)
end

def typecode

typecode
def typecode
  __typecode(OCI_ATTR_TYPECODE)
end