File object_primitive.h
FileList > cubrid > src > object > object_primitive.h
Go to the source code of this file
#include "dbtype_def.h"
#include "object_domain.h"
#include "porting_inline.hpp"
#include <cassert>
#include <cstdio>
#include <vector>
Classes
Public Types
Public Attributes
Public Functions
| Type |
Name |
| void |
PRIM_SET_NULL (DB_VALUE * value)
|
| void |
pr_area_final (void)
|
| int |
pr_area_init (void)
|
| int |
pr_clear_compressed_string (DB_VALUE * value)
|
| int |
pr_clear_value (DB_VALUE * var)
|
| void |
pr_clear_value_vector (std::vector< DB_VALUE > & value_vector)
|
| int |
pr_clone_value (const DB_VALUE * src, DB_VALUE * dest)
|
| int |
pr_complete_enum_value (DB_VALUE * value, struct tp_domain * domain)
|
| DB_VALUE * |
pr_copy_value (DB_VALUE * var)
|
| int |
pr_data_compress_string (const char * string, int str_length, char * compressed_string, int compress_buffer_size, int * compressed_length)
|
| void |
pr_data_writeval (struct or_buf * buf, DB_VALUE * value)
|
| int |
pr_data_writeval_disk_size (DB_VALUE * value)
|
| int |
pr_do_db_value_string_compression (DB_VALUE * value)
|
| const PR_TYPE * |
pr_find_type (const char * name)
|
| int |
pr_free_ext_value (DB_VALUE * value)
|
| int |
pr_free_value (DB_VALUE * var)
|
| int |
pr_get_compressed_data_from_buffer (struct or_buf * buf, char * data, int compressed_size, int expected_decompressed_size)
|
| int |
pr_get_compression_length (const char * string, int str_length)
|
| int |
pr_get_size_and_write_string_to_buffer (struct or_buf * buf, char * val_p, DB_VALUE * value, int * val_size, int align)
|
| int |
pr_index_writeval_disk_size (DB_VALUE * value)
|
| int |
pr_is_variable_type (DB_TYPE type)
|
| DB_VALUE * |
pr_make_ext_value (void)
|
| DB_VALUE * |
pr_make_value (void)
|
| int |
pr_mem_size (const PR_TYPE * type)
|
| int |
pr_midxkey_add_elements (DB_VALUE * keyval, DB_VALUE * dbvals, int num_dbvals, struct tp_domain * dbvals_domain_list)
|
| int |
pr_midxkey_add_elements_with_null (DB_VALUE * keyval, DB_VALUE * dbvals, int num_dbvals, struct tp_domain * dbvals_domain_list, int tail_null_cnt)
|
| int |
pr_midxkey_add_prefix (DB_VALUE * result, DB_VALUE * prefix, DB_VALUE * postfix, int n_prefix)
|
| int |
pr_midxkey_common_prefix (DB_VALUE * key1, DB_VALUE * key2)
|
| DB_VALUE_COMPARE_RESULT |
pr_midxkey_compare (DB_MIDXKEY * mul1, DB_MIDXKEY * mul2, int do_coercion, int total_order, int num_index_term, int * start_colp, int * diff_column, bool * dom_is_desc, int * result_size)
|
| int |
pr_midxkey_get_element_nocopy (const DB_MIDXKEY * midxkey, int index, DB_VALUE * value, int * prev_indexp, char ** prev_ptrp)
|
| int |
pr_midxkey_get_element_offset (const DB_MIDXKEY * midxkey, int index)
|
| int |
pr_midxkey_remove_prefix (DB_VALUE * key, int prefix)
|
| int |
pr_midxkey_unique_prefix (const DB_VALUE * db_midxkey1, const DB_VALUE * db_midxkey2, DB_VALUE * db_result)
|
| const PR_TYPE * |
pr_type_from_id (DB_TYPE id)
|
| const char * |
pr_type_name (DB_TYPE id)
|
| char * |
pr_valstring (const DB_VALUE * val)
|
| int |
pr_value_mem_size (const DB_VALUE * value)
|
Public Static Functions
Macros
| Type |
Name |
| define |
PRIM_COMPRESSION_LENGTH_OFFSET 4
|
| define |
PRIM_STRING_MAXIMUM_DISK_SIZE (length) ([**OR\_BYTE\_SIZE**](object__representation__constants_8h.md#define-or_byte_size) + [**OR\_INT\_SIZE**](object__representation__constants_8h.md#define-or_int_size) + [**OR\_INT\_SIZE**](object__representation__constants_8h.md#define-or_int_size) + (length) + [**MAX\_ALIGNMENT**](memory__alloc_8h.md#define-max_alignment))
|
| define |
PRIM_TEMPORARY_DISK_SIZE 256
|
Public Types Documentation
typedef PRIM
typedef struct pr_type * PRIM;
typedef PR_TYPE
typedef struct pr_type PR_TYPE;
Public Attributes Documentation
variable pr_Enable_string_compression
int pr_Enable_string_compression;
int pr_Inhibit_oid_promotion;
variable tp_Bigint
variable tp_Bit
variable tp_Blob
variable tp_Char
variable tp_Clob
variable tp_Date
variable tp_Datetime
const PR_TYPE tp_Datetime;
variable tp_Datetimeltz
const PR_TYPE tp_Datetimeltz;
variable tp_Datetimetz
const PR_TYPE tp_Datetimetz;
variable tp_Double
variable tp_Elo
variable tp_Enumeration
const PR_TYPE tp_Enumeration;
variable tp_Error
variable tp_Float
variable tp_Integer
const PR_TYPE tp_Integer;
variable tp_Json
variable tp_Midxkey
const PR_TYPE tp_Midxkey;
variable tp_Monetary
const PR_TYPE tp_Monetary;
variable tp_Multiset
const PR_TYPE tp_Multiset;
variable tp_Null
variable tp_Numeric
const PR_TYPE tp_Numeric;
variable tp_Object
variable tp_Oid
variable tp_Pointer
const PR_TYPE tp_Pointer;
variable tp_ResultSet
const PR_TYPE tp_ResultSet;
variable tp_Sequence
const PR_TYPE tp_Sequence;
variable tp_Set
variable tp_Short
variable tp_String
variable tp_Substructure
const PR_TYPE tp_Substructure;
variable tp_Time
variable tp_Timeltz
const PR_TYPE tp_Timeltz;
variable tp_Timestampltz
const PR_TYPE tp_Timestampltz;
variable tp_Timestamptz
const PR_TYPE tp_Timestamptz;
variable tp_Timetz
variable tp_Type_bigint
const PR_TYPE* tp_Type_bigint;
variable tp_Type_bit
const PR_TYPE* tp_Type_bit;
variable tp_Type_blob
const PR_TYPE* tp_Type_blob;
variable tp_Type_char
const PR_TYPE* tp_Type_char;
variable tp_Type_clob
const PR_TYPE* tp_Type_clob;
variable tp_Type_date
const PR_TYPE* tp_Type_date;
variable tp_Type_datetime
const PR_TYPE* tp_Type_datetime;
variable tp_Type_double
const PR_TYPE* tp_Type_double;
variable tp_Type_elo
const PR_TYPE* tp_Type_elo;
variable tp_Type_error
const PR_TYPE* tp_Type_error;
variable tp_Type_float
const PR_TYPE* tp_Type_float;
variable tp_Type_id_map
const PR_TYPE* tp_Type_id_map[];
variable tp_Type_integer
const PR_TYPE* tp_Type_integer;
variable tp_Type_json
const PR_TYPE* tp_Type_json;
variable tp_Type_midxkey
const PR_TYPE* tp_Type_midxkey;
variable tp_Type_monetary
const PR_TYPE* tp_Type_monetary;
variable tp_Type_multiset
const PR_TYPE* tp_Type_multiset;
variable tp_Type_null
const PR_TYPE* tp_Type_null;
variable tp_Type_numeric
const PR_TYPE* tp_Type_numeric;
variable tp_Type_object
const PR_TYPE* tp_Type_object;
variable tp_Type_oid
const PR_TYPE* tp_Type_oid;
variable tp_Type_pointer
const PR_TYPE* tp_Type_pointer;
variable tp_Type_resultset
const PR_TYPE* tp_Type_resultset;
variable tp_Type_sequence
const PR_TYPE* tp_Type_sequence;
variable tp_Type_set
const PR_TYPE* tp_Type_set;
variable tp_Type_short
const PR_TYPE* tp_Type_short;
variable tp_Type_string
const PR_TYPE* tp_Type_string;
variable tp_Type_substructure
const PR_TYPE* tp_Type_substructure;
variable tp_Type_time
const PR_TYPE* tp_Type_time;
variable tp_Type_utime
const PR_TYPE* tp_Type_utime;
variable tp_Type_varbit
const PR_TYPE* tp_Type_varbit;
variable tp_Type_variable
const PR_TYPE* tp_Type_variable;
variable tp_Type_vobj
const PR_TYPE* tp_Type_vobj;
variable tp_Utime
variable tp_VarBit
variable tp_Variable
const PR_TYPE tp_Variable;
variable tp_Vobj
Public Functions Documentation
function PRIM_SET_NULL
inline void PRIM_SET_NULL (
DB_VALUE * value
)
function pr_area_final
void pr_area_final (
void
)
function pr_area_init
int pr_area_init (
void
)
function pr_clear_compressed_string
int pr_clear_compressed_string (
DB_VALUE * value
)
function pr_clear_value
int pr_clear_value (
DB_VALUE * var
)
function pr_clear_value_vector
void pr_clear_value_vector (
std::vector< DB_VALUE > & value_vector
)
function pr_clone_value
int pr_clone_value (
const DB_VALUE * src,
DB_VALUE * dest
)
function pr_complete_enum_value
int pr_complete_enum_value (
DB_VALUE * value,
struct tp_domain * domain
)
function pr_copy_value
DB_VALUE * pr_copy_value (
DB_VALUE * var
)
function pr_data_compress_string
int pr_data_compress_string (
const char * string,
int str_length,
char * compressed_string,
int compress_buffer_size,
int * compressed_length
)
function pr_data_writeval
void pr_data_writeval (
struct or_buf * buf,
DB_VALUE * value
)
function pr_data_writeval_disk_size
int pr_data_writeval_disk_size (
DB_VALUE * value
)
function pr_do_db_value_string_compression
int pr_do_db_value_string_compression (
DB_VALUE * value
)
function pr_find_type
const PR_TYPE * pr_find_type (
const char * name
)
function pr_free_ext_value
int pr_free_ext_value (
DB_VALUE * value
)
function pr_free_value
int pr_free_value (
DB_VALUE * var
)
function pr_get_compressed_data_from_buffer
int pr_get_compressed_data_from_buffer (
struct or_buf * buf,
char * data,
int compressed_size,
int expected_decompressed_size
)
function pr_get_compression_length
int pr_get_compression_length (
const char * string,
int str_length
)
function pr_get_size_and_write_string_to_buffer
int pr_get_size_and_write_string_to_buffer (
struct or_buf * buf,
char * val_p,
DB_VALUE * value,
int * val_size,
int align
)
function pr_index_writeval_disk_size
int pr_index_writeval_disk_size (
DB_VALUE * value
)
function pr_is_variable_type
int pr_is_variable_type (
DB_TYPE type
)
function pr_make_ext_value
DB_VALUE * pr_make_ext_value (
void
)
function pr_make_value
DB_VALUE * pr_make_value (
void
)
function pr_mem_size
int pr_mem_size (
const PR_TYPE * type
)
function pr_midxkey_add_elements
int pr_midxkey_add_elements (
DB_VALUE * keyval,
DB_VALUE * dbvals,
int num_dbvals,
struct tp_domain * dbvals_domain_list
)
function pr_midxkey_add_elements_with_null
int pr_midxkey_add_elements_with_null (
DB_VALUE * keyval,
DB_VALUE * dbvals,
int num_dbvals,
struct tp_domain * dbvals_domain_list,
int tail_null_cnt
)
function pr_midxkey_add_prefix
int pr_midxkey_add_prefix (
DB_VALUE * result,
DB_VALUE * prefix,
DB_VALUE * postfix,
int n_prefix
)
function pr_midxkey_common_prefix
int pr_midxkey_common_prefix (
DB_VALUE * key1,
DB_VALUE * key2
)
function pr_midxkey_compare
DB_VALUE_COMPARE_RESULT pr_midxkey_compare (
DB_MIDXKEY * mul1,
DB_MIDXKEY * mul2,
int do_coercion,
int total_order,
int num_index_term,
int * start_colp,
int * diff_column,
bool * dom_is_desc,
int * result_size
)
function pr_midxkey_get_element_nocopy
int pr_midxkey_get_element_nocopy (
const DB_MIDXKEY * midxkey,
int index,
DB_VALUE * value,
int * prev_indexp,
char ** prev_ptrp
)
function pr_midxkey_get_element_offset
int pr_midxkey_get_element_offset (
const DB_MIDXKEY * midxkey,
int index
)
function pr_midxkey_remove_prefix
int pr_midxkey_remove_prefix (
DB_VALUE * key,
int prefix
)
function pr_midxkey_unique_prefix
int pr_midxkey_unique_prefix (
const DB_VALUE * db_midxkey1,
const DB_VALUE * db_midxkey2,
DB_VALUE * db_result
)
function pr_type_from_id
const PR_TYPE * pr_type_from_id (
DB_TYPE id
)
function pr_type_name
const char * pr_type_name (
DB_TYPE id
)
function pr_valstring
char * pr_valstring (
const DB_VALUE * val
)
function pr_value_mem_size
int pr_value_mem_size (
const DB_VALUE * value
)
Public Static Functions Documentation
function pr_is_prefix_key_type
static int pr_is_prefix_key_type (
DB_TYPE type
)
function pr_is_set_type
static bool pr_is_set_type (
DB_TYPE type
)
function pr_is_string_type
static int pr_is_string_type (
DB_TYPE type
)
function pr_midxkey_element_disk_size
static int pr_midxkey_element_disk_size (
char * mem,
DB_DOMAIN * domain
)
Macro Definition Documentation
define PRIM_COMPRESSION_LENGTH_OFFSET
#define PRIM_COMPRESSION_LENGTH_OFFSET `4`
define PRIM_STRING_MAXIMUM_DISK_SIZE
#define PRIM_STRING_MAXIMUM_DISK_SIZE (
length
) `( OR_BYTE_SIZE + OR_INT_SIZE + OR_INT_SIZE + (length) + MAX_ALIGNMENT )`
define PRIM_TEMPORARY_DISK_SIZE
#define PRIM_TEMPORARY_DISK_SIZE `256`
The documentation for this class was generated from the following file cubrid/src/object/object_primitive.h