File object_domain.c¶
FileList > cubrid > src > object > object_domain.c
Go to the source code of this file
#include "config.h"#include <stdio.h>#include <stdlib.h>#include <string.h>#include <float.h>#include <math.h>#include <errno.h>#include <assert.h>#include "area_alloc.h"#include "deduplicate_key.h"#include "object_domain.h"#include "object_primitive.h"#include "object_representation.h"#include "numeric_opfunc.h"#include "tz_support.h"#include "db_date.h"#include "mprec.h"#include "porting_inline.hpp"#include "set_object.h"#include "string_opfunc.h"#include "chartype.h"#include "db_json.hpp"#include "string_buffer.hpp"#include "db_value_printer.hpp"#include "dbtype.h"#include "error_manager.h"#include "memory_wrapper.hpp"
Classes¶
| Type | Name |
|---|---|
| class | type_rank_order_initializer |
Public Types¶
| Type | Name |
|---|---|
| typedef enum tp_coersion_mode | TP_COERCION_MODE |
| enum | tp_coersion_mode |
Public Attributes¶
| Type | Name |
|---|---|
| unsigned int | db_on_server |
| TP_DOMAIN | tp_Bigint_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Bigint**](object__primitive_8c.md#variable-tp_bigint), ( [**DB\_BIGINT\_PRECISION**](dbtype__def_8h.md#define-db_bigint_precision) ), ( 0 ), [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Bit_domain = /* multi line expression */ |
| TP_DOMAIN | tp_Blob_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Blob**](object__primitive_8c.md#variable-tp_blob), 0, 0, [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Char_domain = /* multi line expression */ |
| TP_DOMAIN | tp_Clob_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Clob**](object__primitive_8c.md#variable-tp_clob), 0, 0, [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Date_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Date**](object__primitive_8c.md#variable-tp_date), ( [**DB\_DATE\_PRECISION**](dbtype__def_8h.md#define-db_date_precision) ), ( 0 ), [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Datetime_domain = /* multi line expression */ |
| TP_DOMAIN | tp_Datetimeltz_domain = /* multi line expression */ |
| TP_DOMAIN | tp_Datetimetz_domain = /* multi line expression */ |
| AREA * | tp_Domain_area = [**NULL**](freelistheap_8h.md#define-null) |
| TP_DOMAIN ** | tp_Domain_conversion_matrix |
| TP_DOMAIN | tp_Double_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Double**](object__primitive_8c.md#variable-tp_double), ( [**DB\_DOUBLE\_DECIMAL\_PRECISION**](dbtype__def_8h.md#define-db_double_decimal_precision) ), ( 0 ), [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Elo_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Elo**](object__primitive_8c.md#variable-tp_elo), 0, 0, [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Enumeration_domain = /* multi line expression */ |
| TP_DOMAIN | tp_Error_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Error**](object__primitive_8c.md#variable-tp_error), 0, 0, [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Float_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Float**](object__primitive_8c.md#variable-tp_float), ( [**DB\_FLOAT\_DECIMAL\_PRECISION**](dbtype__def_8h.md#define-db_float_decimal_precision) ), ( 0 ), [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Integer_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Integer**](object__primitive_8c.md#variable-tp_integer), ( [**DB\_INTEGER\_PRECISION**](dbtype__def_8h.md#define-db_integer_precision) ), ( 0 ), [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Json_domain = /* multi line expression */ |
| TP_DOMAIN | tp_Midxkey_domain_list_heads = /* multi line expression */ |
| TP_DOMAIN | tp_Monetary_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Monetary**](object__primitive_8c.md#variable-tp_monetary), ( [**DB\_MONETARY\_DECIMAL\_PRECISION**](dbtype__def_8h.md#define-db_monetary_decimal_precision) ), ( 0 ), [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Multiset_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Multiset**](object__primitive_8c.md#variable-tp_multiset), 0, 0, [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 1, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Null_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Null**](object__primitive_8c.md#variable-tp_null), 0, 0, [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Numeric_domain = /* multi line expression */ |
| TP_DOMAIN | tp_Object_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Object**](object__primitive_8c.md#variable-tp_object), 0, 0, [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 1, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Oid_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Oid**](object__primitive_8c.md#variable-tp_oid), 0, 0, [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 1, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Pointer_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Pointer**](object__primitive_8c.md#variable-tp_pointer), 0, 0, [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Resultset_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_ResultSet**](object__primitive_8c.md#variable-tp_resultset), ( [**DB\_BIGINT\_PRECISION**](dbtype__def_8h.md#define-db_bigint_precision) ), ( 0 ), [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Sequence_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Sequence**](object__primitive_8c.md#variable-tp_sequence), 0, 0, [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 1, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Set_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Set**](object__primitive_8c.md#variable-tp_set), 0, 0, [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 1, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Short_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Short**](object__primitive_8c.md#variable-tp_short), ( [**DB\_SHORT\_PRECISION**](dbtype__def_8h.md#define-db_short_precision) ), ( 0 ), [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_String_domain = /* multi line expression */ |
| TP_DOMAIN | tp_Substructure_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Substructure**](object__primitive_8c.md#variable-tp_substructure), 0, 0, [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 1, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Time_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Time**](object__primitive_8c.md#variable-tp_time), ( [**DB\_TIME\_PRECISION**](dbtype__def_8h.md#define-db_time_precision) ), ( 0 ), [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Timestampltz_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Timestampltz**](object__primitive_8c.md#variable-tp_timestampltz), ( [**DB\_TIMESTAMP\_PRECISION**](dbtype__def_8h.md#define-db_timestamp_precision) ), ( 0 ), [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Timestamptz_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Timestamptz**](object__primitive_8c.md#variable-tp_timestamptz), ( [**DB\_TIMESTAMPTZ\_PRECISION**](dbtype__def_8h.md#define-db_timestamptz_precision) ), ( 0 ), [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Utime_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Utime**](object__primitive_8c.md#variable-tp_utime), ( [**DB\_TIMESTAMP\_PRECISION**](dbtype__def_8h.md#define-db_timestamp_precision) ), ( 0 ), [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 0, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_VarBit_domain = /* multi line expression */ |
| TP_DOMAIN | tp_Variable_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Variable**](object__primitive_8c.md#variable-tp_variable), 0, 0, [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 1, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
| TP_DOMAIN | tp_Vobj_domain = { [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), &[**tp\_Vobj**](object__primitive_8c.md#variable-tp_vobj), 0, 0, [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), {[**NULL**](freelistheap_8h.md#define-null), 0, 0}, {-1, -1, -1}, 1, 0, 0, TP\_DOMAIN\_COLL\_NORMAL, 0, 1, 1, [**false**](broker__monitor_8c.md#function-timeout), 0, [**NULL**](freelistheap_8h.md#define-null) } |
Public Static Attributes¶
| Type | Name |
|---|---|
| const DB_TYPE | db_type_rank |
| int | db_type_rank_order = { 0, } |
| TP_DOMAIN * | tp_Bigint_conv = /* multi line expression */ |
| TP_DOMAIN * | tp_Bit_conv = /* multi line expression */ |
| TP_DOMAIN * | tp_Char_conv = /* multi line expression */ |
| TP_DOMAIN * | tp_Domains |
| TP_DOMAIN * | tp_Double_conv = /* multi line expression */ |
| TP_DOMAIN * | tp_Float_conv = /* multi line expression */ |
| bool | tp_Initialized = [**false**](broker__monitor_8c.md#function-timeout) |
| TP_DOMAIN * | tp_Integer_conv = /* multi line expression */ |
| TP_DOMAIN * | tp_Midxkey_domains = /* multi line expression */ |
| TP_DOMAIN * | tp_Monetary_conv = /* multi line expression */ |
| TP_DOMAIN * | tp_Multiset_conv = /* multi line expression */ |
| TP_DOMAIN * | tp_Numeric_conv = /* multi line expression */ |
| TP_DOMAIN * | tp_Sequence_conv = /* multi line expression */ |
| TP_DOMAIN * | tp_Set_conv = /* multi line expression */ |
| TP_DOMAIN * | tp_Short_conv = /* multi line expression */ |
| TP_DOMAIN * | tp_String_conv = /* multi line expression */ |
| TP_DOMAIN * | tp_VarBit_conv = /* multi line expression */ |
| pthread_mutex_t | tp_domain_cache_lock = [**PTHREAD\_MUTEX\_INITIALIZER**](broker__monitor_8c.md#function-timeout) |
| volatile class type_rank_order_initializer | tro_instance |
Public Functions¶
Public Static Functions¶
Macros¶
| Type | Name |
|---|---|
| define | ARE_COMPARABLE (typ1, typ2) (([**typ1**](broker__monitor_8c.md#function-timeout) == [**typ2**](broker__monitor_8c.md#function-timeout)) \|\| ([**QSTR\_IS\_CHAR**](string__opfunc_8h.md#define-qstr_is_char)([**typ1**](broker__monitor_8c.md#function-timeout)) && [**QSTR\_IS\_CHAR**](string__opfunc_8h.md#define-qstr_is_char)([**typ2**](broker__monitor_8c.md#function-timeout)))) |
| define | BITS_IN_BYTE 8 |
| define | BITS_IN_HEX 4 |
| define | BYTE_COUNT (bit_cnt) ((([**bit\_cnt**](broker__monitor_8c.md#function-timeout))+[**BITS\_IN\_BYTE**](cnv_8c.md#define-bits_in_byte)-1)/[**BITS\_IN\_BYTE**](cnv_8c.md#define-bits_in_byte)) |
| define | BYTE_COUNT_HEX (bit_cnt) ((([**bit\_cnt**](broker__monitor_8c.md#function-timeout))+[**BITS\_IN\_HEX**](cnv_8c.md#define-bits_in_hex)-1)/[**BITS\_IN\_HEX**](cnv_8c.md#define-bits_in_hex)) |
| define | DBL_MAX_DIGITS (([**int**](broker__monitor_8c.md#function-timeout))[**ceil**](broker__monitor_8c.md#function-timeout)([**DBL\_MAX\_EXP**](broker__monitor_8c.md#function-timeout) \* [**log10**](broker__monitor_8c.md#function-timeout)(([**double**](broker__monitor_8c.md#function-timeout)) [**FLT\_RADIX**](broker__monitor_8c.md#function-timeout)))) |
| define | DB_DATETIMETZ_INITIALIZER { {0, 0}, 0 } |
| define | DOMAIN_INIT /* multi line expression */ |
| define | DOMAIN_INIT2 (codeset, coll) /* multi line expression */ |
| define | DOMAIN_INIT3 /* multi line expression */ |
| define | DOMAIN_INIT4 (prec, scale) /* multi line expression */ |
| define | HEX_IN_BYTE 2 |
| define | HIGHEST_3BITS_OF_UBI 0xE000000000000000 |
| define | HIGHEST_4BITS_OF_UBI 0xF000000000000000 |
| define | HIGHEST_BIT_OF_UINT64 0x8000000000000000 |
| define | ROUND (x) (([**x**](broker__monitor_8c.md#function-timeout)) > 0 ? (([**x**](broker__monitor_8c.md#function-timeout)) + .5) : (([**x**](broker__monitor_8c.md#function-timeout)) - .5)) |
| define | SECONDS_IN_A_DAY ([**long**](broker__monitor_8c.md#function-timeout))(86400) /\* 24[**L**](broker__monitor_8c.md#function-timeout) \* 60L \* 60L \*/ |
| define | TP_IMPLICIT_COERCION_NOT_ALLOWED (src_type, dest_type) /* multi line expression */ |
| define | TP_IS_CHAR_STRING (db_val_type) ([**db\_val\_type**](broker__monitor_8c.md#function-timeout) == DB\_TYPE\_CHAR \|\| [**db\_val\_type**](broker__monitor_8c.md#function-timeout) == DB\_TYPE\_VARCHAR) |
| define | TP_IS_DATETIME_TYPE (db_val_type) [**TP\_IS\_DATE\_OR\_TIME\_TYPE**](object__domain_8h.md#define-tp_is_date_or_time_type) ([**db\_val\_type**](broker__monitor_8c.md#function-timeout)) |
| define | TP_IS_LOB (db_val_type) ([**db\_val\_type**](broker__monitor_8c.md#function-timeout) == DB\_TYPE\_BLOB \|\| [**db\_val\_type**](broker__monitor_8c.md#function-timeout) == DB\_TYPE\_CLOB) |
| define | TP_NEAR_MATCH (t1, t2) /* multi line expression */ |
| define | TP_NUM_MIDXKEY_DOMAIN_LIST (10) |
| define | tp_NChar_conv [**tp\_Char\_conv**](object__domain_8c.md#variable-tp_char_conv) |
| define | tp_NChar_domain [**tp\_Char\_domain**](object__domain_8c.md#variable-tp_char_domain) |
| define | tp_VarNChar_conv [**tp\_String\_conv**](object__domain_8c.md#variable-tp_string_conv) |
| define | tp_VarNChar_domain [**tp\_String\_domain**](object__domain_8c.md#variable-tp_string_domain) |
Public Types Documentation¶
typedef TP_COERCION_MODE¶
enum tp_coersion_mode¶
Public Attributes Documentation¶
variable db_on_server¶
variable tp_Bigint_domain¶
variable tp_Bit_domain¶
variable tp_Blob_domain¶
variable tp_Char_domain¶
variable tp_Clob_domain¶
variable tp_Date_domain¶
variable tp_Datetime_domain¶
variable tp_Datetimeltz_domain¶
variable tp_Datetimetz_domain¶
variable tp_Domain_area¶
variable tp_Domain_conversion_matrix¶
variable tp_Double_domain¶
variable tp_Elo_domain¶
variable tp_Enumeration_domain¶
variable tp_Error_domain¶
variable tp_Float_domain¶
variable tp_Integer_domain¶
variable tp_Json_domain¶
variable tp_Midxkey_domain_list_heads¶
variable tp_Monetary_domain¶
variable tp_Multiset_domain¶
variable tp_Null_domain¶
variable tp_Numeric_domain¶
variable tp_Object_domain¶
variable tp_Oid_domain¶
variable tp_Pointer_domain¶
variable tp_Resultset_domain¶
variable tp_Sequence_domain¶
variable tp_Set_domain¶
variable tp_Short_domain¶
variable tp_String_domain¶
variable tp_Substructure_domain¶
variable tp_Time_domain¶
variable tp_Timestampltz_domain¶
variable tp_Timestamptz_domain¶
variable tp_Utime_domain¶
variable tp_VarBit_domain¶
variable tp_Variable_domain¶
variable tp_Vobj_domain¶
Public Static Attributes Documentation¶
variable db_type_rank¶
variable db_type_rank_order¶
variable tp_Bigint_conv¶
variable tp_Bit_conv¶
variable tp_Char_conv¶
variable tp_Domains¶
variable tp_Double_conv¶
variable tp_Float_conv¶
variable tp_Initialized¶
variable tp_Integer_conv¶
variable tp_Midxkey_domains¶
variable tp_Monetary_conv¶
variable tp_Multiset_conv¶
variable tp_Numeric_conv¶
variable tp_Sequence_conv¶
variable tp_Set_conv¶
variable tp_Short_conv¶
variable tp_String_conv¶
variable tp_VarBit_conv¶
variable tp_domain_cache_lock¶
variable tro_instance¶
Public Functions Documentation¶
function tp_apply_sys_charset¶
function tp_can_steal_string¶
function tp_check_value_size¶
function tp_create_domain_resolve_value¶
function tp_domain_add¶
function tp_domain_cache¶
function tp_domain_check¶
TP_DOMAIN_STATUS tp_domain_check (
const TP_DOMAIN * domain,
const DB_VALUE * value,
TP_MATCH exact_match
)
function tp_domain_clear_enumeration¶
function tp_domain_compatible¶
function tp_domain_construct¶
TP_DOMAIN * tp_domain_construct (
DB_TYPE domain_type,
DB_OBJECT * class_obj,
int precision,
int scale,
TP_DOMAIN * setdomain
)
function tp_domain_copy¶
function tp_domain_copy_enumeration¶
function tp_domain_disk_size¶
function tp_domain_filter_list¶
function tp_domain_find_charbit¶
TP_DOMAIN * tp_domain_find_charbit (
DB_TYPE type,
int codeset,
int collation_id,
unsigned char collation_flag,
int precision,
bool is_desc
)
function tp_domain_find_enumeration¶
function tp_domain_find_noparam¶
function tp_domain_find_numeric¶
function tp_domain_find_object¶
TP_DOMAIN * tp_domain_find_object (
DB_TYPE type,
OID * class_oid,
struct db_object * class_mop,
bool is_desc
)
function tp_domain_find_set¶
function tp_domain_fprint¶
function tp_domain_free¶
function tp_domain_init¶
function tp_domain_match¶
function tp_domain_match_ignore_order¶
function tp_domain_memory_size¶
function tp_domain_name¶
function tp_domain_new¶
function tp_domain_print¶
function tp_domain_references_objects¶
function tp_domain_resolve¶
TP_DOMAIN * tp_domain_resolve (
DB_TYPE domain_type,
DB_OBJECT * class_obj,
int precision,
int scale,
TP_DOMAIN * setdomain,
int collation
)
function tp_domain_resolve_default¶
function tp_domain_resolve_default_w_coll¶
TP_DOMAIN * tp_domain_resolve_default_w_coll (
DB_TYPE type,
int coll_id,
TP_DOMAIN_COLL_ACTION coll_flag
)
function tp_domain_resolve_value¶
function tp_domain_select¶
TP_DOMAIN * tp_domain_select (
const TP_DOMAIN * domain_list,
const DB_VALUE * value,
int allow_coercion,
TP_MATCH exact_match
)
function tp_domain_size¶
function tp_domain_status_er_set¶
int tp_domain_status_er_set (
TP_DOMAIN_STATUS status,
const char * file_name,
const int line_no,
const DB_VALUE * src,
const TP_DOMAIN * domain
)
function tp_dump_domain¶
function tp_enumeration_to_varchar¶
function tp_final¶
function tp_get_fixed_precision¶
function tp_infer_common_domain¶
function tp_init¶
function tp_init_value_domain¶
function tp_more_general_type¶
function tp_set_compare¶
DB_VALUE_COMPARE_RESULT tp_set_compare (
const DB_VALUE * value1,
const DB_VALUE * value2,
int do_coercion,
int total_order
)
function tp_setdomain_size¶
function tp_valid_indextype¶
function tp_value_auto_cast¶
TP_DOMAIN_STATUS tp_value_auto_cast (
const DB_VALUE * src,
DB_VALUE * dest,
const TP_DOMAIN * desired_domain
)
function tp_value_auto_cast_with_precision_check¶
TP_DOMAIN_STATUS tp_value_auto_cast_with_precision_check (
const DB_VALUE * src,
DB_VALUE * dest,
const TP_DOMAIN * desired_domain
)
function tp_value_cast¶
TP_DOMAIN_STATUS tp_value_cast (
const DB_VALUE * src,
DB_VALUE * dest,
const TP_DOMAIN * desired_domain,
bool implicit_coercion
)
function tp_value_cast_force¶
TP_DOMAIN_STATUS tp_value_cast_force (
const DB_VALUE * src,
DB_VALUE * dest,
const TP_DOMAIN * desired_domain,
bool implicit_coercion
)
function tp_value_cast_no_domain_select¶
TP_DOMAIN_STATUS tp_value_cast_no_domain_select (
const DB_VALUE * src,
DB_VALUE * dest,
const TP_DOMAIN * desired_domain,
bool implicit_coercion
)
function tp_value_cast_preserve_domain¶
TP_DOMAIN_STATUS tp_value_cast_preserve_domain (
const DB_VALUE * src,
DB_VALUE * dest,
const TP_DOMAIN * desired_domain,
bool implicit_coercion,
bool preserve_domain
)
function tp_value_change_coll_and_codeset¶
TP_DOMAIN_STATUS tp_value_change_coll_and_codeset (
DB_VALUE * src,
DB_VALUE * dest,
int coll_id,
int codeset
)
function tp_value_coerce¶
TP_DOMAIN_STATUS tp_value_coerce (
const DB_VALUE * src,
DB_VALUE * dest,
const TP_DOMAIN * desired_domain
)
function tp_value_coerce_strict¶
int tp_value_coerce_strict (
const DB_VALUE * src,
DB_VALUE * dest,
const TP_DOMAIN * desired_domain
)
function tp_value_compare¶
DB_VALUE_COMPARE_RESULT tp_value_compare (
const DB_VALUE * value1,
const DB_VALUE * value2,
int allow_coercion,
int total_order
)
function tp_value_compare_with_error¶
DB_VALUE_COMPARE_RESULT tp_value_compare_with_error (
const DB_VALUE * value1,
const DB_VALUE * value2,
int do_coercion,
int total_order,
bool * can_compare
)
function tp_value_domain_name¶
function tp_value_equal¶
function tp_value_str_auto_cast_to_number¶
function tp_value_string_to_double¶
Public Static Functions Documentation¶
function bfmt_print¶
function format_floating_point¶
static void format_floating_point (
char * new_string,
char * rve,
int ndigits,
int decpt,
int sign
)
function fprint_domain¶
function make_desired_string_db_value¶
static void make_desired_string_db_value (
DB_TYPE desired_type,
const TP_DOMAIN * desired_domain,
const char * new_string,
DB_VALUE * target,
TP_DOMAIN_STATUS * status,
DB_DATA_STATUS * data_stat
)
function oidcmp¶
function tp_atobi¶
function tp_atodate¶
function tp_atodatetimetz¶
function tp_atof¶
function tp_atonumeric¶
function tp_atotime¶
function tp_atotimestamptz¶
function tp_atoudatetime¶
function tp_atoutime¶
function tp_digit_number_str_to_bi¶
static int tp_digit_number_str_to_bi (
const char * start,
const char * end,
INTL_CODESET codeset,
bool is_negative,
DB_BIGINT * num_value,
DB_DATA_STATUS * data_stat
)
function tp_domain_check_class¶
function tp_domain_find_compatible¶
static const TP_DOMAIN * tp_domain_find_compatible (
const TP_DOMAIN * src,
const TP_DOMAIN * dest
)
function tp_domain_get_list¶
function tp_domain_get_list_ptr¶
function tp_domain_match_internal¶
static int tp_domain_match_internal (
const TP_DOMAIN * dom1,
const TP_DOMAIN * dom2,
TP_MATCH exact,
bool match_order
)
function tp_domain_size_internal¶
function tp_dtoa¶
function tp_enumeration_match¶
static int tp_enumeration_match (
const DB_ENUMERATION * db_enum1,
const DB_ENUMERATION * db_enum2
)
function tp_ftoa¶
function tp_hex_str_to_bi¶
static int tp_hex_str_to_bi (
const char * start,
const char * end,
INTL_CODESET codeset,
bool is_negative,
DB_BIGINT * num_value,
DB_DATA_STATUS * data_stat
)
function tp_is_domain_cached¶
static TP_DOMAIN * tp_is_domain_cached (
TP_DOMAIN * dlist,
TP_DOMAIN * transient,
TP_MATCH exact,
TP_DOMAIN ** ins_pos
)
function tp_itoa¶
function tp_ltoa¶
function tp_null_terminate¶
function tp_scientific_str_to_bi¶
static int tp_scientific_str_to_bi (
const char * start,
const char * end,
INTL_CODESET codeset,
bool is_negative,
DB_BIGINT * num_value,
DB_DATA_STATUS * data_stat
)
function tp_ubi_times_ten¶
function tp_ubi_to_bi_with_args¶
static DB_BIGINT tp_ubi_to_bi_with_args (
UINT64 ubi,
bool is_negative,
bool truncated,
bool round,
DB_DATA_STATUS * data_stat
)
function tp_value_cast_internal¶
static TP_DOMAIN_STATUS tp_value_cast_internal (
const DB_VALUE * src,
DB_VALUE * dest,
const TP_DOMAIN * desired_domain,
TP_COERCION_MODE coercion_mode,
bool do_domain_select,
bool preserve_domain
)
function tp_value_slam_domain¶
Macro Definition Documentation¶
define ARE_COMPARABLE¶
#define ARE_COMPARABLE (
typ1,
typ2
) `(( typ1 == typ2 ) || ( QSTR_IS_CHAR ( typ1 ) && QSTR_IS_CHAR ( typ2 )))`
define BITS_IN_BYTE¶
define BITS_IN_HEX¶
define BYTE_COUNT¶
define BYTE_COUNT_HEX¶
define DBL_MAX_DIGITS¶
define DB_DATETIMETZ_INITIALIZER¶
define DOMAIN_INIT¶
define DOMAIN_INIT2¶
define DOMAIN_INIT3¶
define DOMAIN_INIT4¶
define HEX_IN_BYTE¶
define HIGHEST_3BITS_OF_UBI¶
define HIGHEST_4BITS_OF_UBI¶
define HIGHEST_BIT_OF_UINT64¶
define ROUND¶
define SECONDS_IN_A_DAY¶
define TP_IMPLICIT_COERCION_NOT_ALLOWED¶
define TP_IS_CHAR_STRING¶
#define TP_IS_CHAR_STRING (
db_val_type
) `( db_val_type == DB_TYPE_CHAR || db_val_type == DB_TYPE_VARCHAR )`
define TP_IS_DATETIME_TYPE¶
define TP_IS_LOB¶
define TP_NEAR_MATCH¶
define TP_NUM_MIDXKEY_DOMAIN_LIST¶
define tp_NChar_conv¶
define tp_NChar_domain¶
define tp_VarNChar_conv¶
define tp_VarNChar_domain¶
The documentation for this class was generated from the following file cubrid/src/object/object_domain.c