CUBRID Engine  latest
object_template.h File Reference
#include <stdarg.h>
#include "area_alloc.h"
#include "class_object.h"
Include dependency graph for object_template.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  obj_tempassign
 
struct  obj_template
 

Macros

#define OBT_BASE_OBJECT(template_ptr)
 
#define OBT_BASE_CLASS(template_ptr)
 
#define OBT_BASE_CLASSOBJ(template_ptr)
 

Typedefs

typedef struct obj_tempassign OBJ_TEMPASSIGN
 
typedef struct obj_template OBJ_TEMPLATE
 
typedef struct obj_templateOBT
 

Functions

OBJ_TEMPLATEobt_def_object (MOP class_)
 
OBJ_TEMPLATEobt_edit_object (MOP object)
 
int obt_quit (OBJ_TEMPLATE *template_ptr)
 
int obt_set (OBJ_TEMPLATE *template_ptr, const char *attname, DB_VALUE *value)
 
int obt_set_obt (OBJ_TEMPLATE *template_ptr, const char *attname, OBJ_TEMPLATE *value)
 
void obt_set_label (OBJ_TEMPLATE *template_ptr, DB_VALUE *label)
 
void obt_disable_unique_checking (OBJ_TEMPLATE *template_ptr)
 
void obt_disable_serializable_conflict_checking (OBJ_TEMPLATE *template_ptr)
 
bool obt_enable_unique_checking (bool new_state)
 
void obt_set_force_flush (OBJ_TEMPLATE *template_ptr)
 
void obt_reset_force_flush (OBJ_TEMPLATE *template_ptr)
 
int obt_update (OBJ_TEMPLATE *template_ptr, MOP *newobj)
 
int obt_assign (OBJ_TEMPLATE *template_ptr, SM_ATTRIBUTE *att, int base_assignment, DB_VALUE *value, SM_VALIDATION *valid)
 
DB_VALUEobt_check_assignment (SM_ATTRIBUTE *att, DB_VALUE *proposed_value, SM_VALIDATION *valid, unsigned force_check_not_null)
 
int obt_update_internal (OBJ_TEMPLATE *template_ptr, MOP *newobj, int check_non_null)
 
int obt_area_init (void)
 
void obt_area_final (void)
 
int obt_find_attribute (OBJ_TEMPLATE *template_ptr, int use_base_class, const char *name, SM_ATTRIBUTE **attp)
 
int obt_desc_set (OBJ_TEMPLATE *template_ptr, SM_DESCRIPTOR *desc, DB_VALUE *value)
 
int obt_check_missing_assignments (OBJ_TEMPLATE *template_ptr)
 
int obt_populate_known_arguments (OBJ_TEMPLATE *template_ptr)
 
void obt_retain_after_finish (OBJ_TEMPLATE *template_ptr)
 
void obt_begin_insert_values (void)
 

Variables

bool obt_Check_uniques
 
bool obt_Enable_autoincrement
 
bool obt_Last_insert_id_generated
 

Macro Definition Documentation

#define OBT_BASE_CLASS (   template_ptr)
Value:
(((template_ptr)->base_class != NULL) ? \
(template_ptr)->base_class : (template_ptr)->class_)
#define NULL
Definition: freelistheap.h:34

Definition at line 41 of file object_template.h.

Referenced by obt_apply_assignments(), and obt_check_missing_assignments().

#define OBT_BASE_CLASSOBJ (   template_ptr)
Value:
(((template_ptr)->base_classobj != NULL) ? \
(template_ptr)->base_classobj : (template_ptr)->classobj)
#define NULL
Definition: freelistheap.h:34

Definition at line 45 of file object_template.h.

Referenced by access_object(), and obt_apply_assignments().

#define OBT_BASE_OBJECT (   template_ptr)
Value:
(((template_ptr)->base_object != NULL) ? \
(template_ptr)->base_object : (template_ptr)->object)
#define NULL
Definition: freelistheap.h:34

Definition at line 37 of file object_template.h.

Referenced by obj_get_temp(), obt_apply_assignments(), and obt_assign().

Typedef Documentation

typedef struct obj_template OBJ_TEMPLATE
typedef struct obj_template * OBT

Function Documentation

void obt_area_final ( void  )

Definition at line 185 of file object_template.c.

References area_destroy(), and NULL.

Referenced by obt_area_init(), and ws_init().

Here is the caller graph for this function:

int obt_area_init ( void  )

Definition at line 155 of file object_template.c.

References area_create(), assert, er_errid(), error(), NO_ERROR, NULL, and obt_area_final().

Referenced by ws_init().

Here is the caller graph for this function:

void obt_begin_insert_values ( void  )

Definition at line 3089 of file object_template.c.

References obt_Last_insert_id_generated.

Referenced by do_execute_merge(), do_merge(), and insert_local().

Here is the caller graph for this function:

DB_VALUE* obt_check_assignment ( SM_ATTRIBUTE att,
DB_VALUE proposed_value,
SM_VALIDATION valid,
unsigned  force_check_not_null 
)

Definition at line 649 of file object_template.c.

References cache_validation(), check_att_domain(), check_constraints(), NO_ERROR, NULL, pr_free_ext_value(), pr_make_ext_value(), and quick_validate().

Referenced by obj_set_att(), obj_set_shared(), and obt_assign().

Here is the caller graph for this function:

OBJ_TEMPLATE* obt_def_object ( MOP  class_)
int obt_desc_set ( OBJ_TEMPLATE template_ptr,
SM_DESCRIPTOR desc,
DB_VALUE value 
)
void obt_disable_serializable_conflict_checking ( OBJ_TEMPLATE template_ptr)

Definition at line 2781 of file object_template.c.

References obj_template::check_serializable_conflict.

Referenced by update_object_tuple().

Here is the caller graph for this function:

void obt_disable_unique_checking ( OBJ_TEMPLATE template_ptr)

Definition at line 2766 of file object_template.c.

References obj_template::check_uniques.

Referenced by update_object_tuple().

Here is the caller graph for this function:

OBJ_TEMPLATE* obt_edit_object ( MOP  object)
bool obt_enable_unique_checking ( bool  new_state)

Definition at line 2801 of file object_template.c.

References obt_Check_uniques.

Referenced by ldr_init().

Here is the caller graph for this function:

int obt_populate_known_arguments ( OBJ_TEMPLATE template_ptr)
int obt_quit ( OBJ_TEMPLATE template_ptr)

Definition at line 1489 of file object_template.c.

References NO_ERROR, NULL, and obt_free_template().

Referenced by dbt_abort_object(), do_insert_template(), insert_subquery_results(), obj_copy(), obj_create(), obj_set_att(), and pt_set_value_to_db().

Here is the caller graph for this function:

void obt_reset_force_flush ( OBJ_TEMPLATE template_ptr)

Definition at line 2830 of file object_template.c.

References assert, obj_template::force_flush, and NULL.

void obt_retain_after_finish ( OBJ_TEMPLATE template_ptr)

Definition at line 2844 of file object_template.c.

References assert, obj_template::discard_on_finish, and NULL.

Referenced by do_insert_template(), and insert_subquery_results().

Here is the caller graph for this function:

int obt_set ( OBJ_TEMPLATE template_ptr,
const char *  attname,
DB_VALUE value 
)
void obt_set_force_flush ( OBJ_TEMPLATE template_ptr)

Definition at line 2816 of file object_template.c.

References assert, obj_template::force_flush, and NULL.

Referenced by do_insert_template(), insert_subquery_results(), and update_object_tuple().

Here is the caller graph for this function:

void obt_set_label ( OBJ_TEMPLATE template_ptr,
DB_VALUE label 
)

Definition at line 2748 of file object_template.c.

References obj_template::label.

Referenced by dbt_set_label().

Here is the caller graph for this function:

int obt_set_obt ( OBJ_TEMPLATE template_ptr,
const char *  attname,
OBJ_TEMPLATE value 
)

Definition at line 1813 of file object_template.c.

References db_make_pointer(), and obt_set().

Referenced by dbt_put_internal().

Here is the caller graph for this function:

int obt_update ( OBJ_TEMPLATE template_ptr,
MOP newobj 
)

Definition at line 2968 of file object_template.c.

References obt_update_internal().

Referenced by dbt_finish_object(), dbt_finish_object_and_decache_when_failure(), and obj_set_att().

Here is the caller graph for this function:

Variable Documentation

bool obt_Check_uniques

Definition at line 75 of file object_template.c.

Referenced by make_template(), and obt_enable_unique_checking().

bool obt_Enable_autoincrement
bool obt_Last_insert_id_generated