23 #ifndef _OBJECT_TEMPLATE_H_ 24 #define _OBJECT_TEMPLATE_H_ 28 #if defined (SERVER_MODE) 29 #error Does not belong to server module 37 #define OBT_BASE_OBJECT(template_ptr) \ 38 (((template_ptr)->base_object != NULL) ? \ 39 (template_ptr)->base_object : (template_ptr)->object) 41 #define OBT_BASE_CLASS(template_ptr) \ 42 (((template_ptr)->base_class != NULL) ? \ 43 (template_ptr)->base_class : (template_ptr)->class_) 45 #define OBT_BASE_CLASSOBJ(template_ptr) \ 46 (((template_ptr)->base_classobj != NULL) ? \ 47 (template_ptr)->base_classobj : (template_ptr)->classobj) 124 unsigned write_lock:1;
127 unsigned traversed:1;
133 unsigned is_old_template:1;
139 unsigned is_class_update:1;
145 unsigned check_uniques:1;
150 unsigned check_serializable_conflict:1;
156 unsigned uniques_were_modified:1;
159 unsigned shared_was_modified:1;
162 unsigned discard_on_finish:1;
168 unsigned fkeys_were_modified:1;
171 unsigned force_flush:1;
178 unsigned force_check_not_null:1;
184 unsigned function_key_modified:1;
189 unsigned is_autoincrement_set:1;
235 unsigned force_check_not_null);
int obt_set_obt(OBJ_TEMPLATE *template_ptr, const char *attname, OBJ_TEMPLATE *value)
struct obj_tempassign OBJ_TEMPASSIGN
void obt_set_force_flush(OBJ_TEMPLATE *template_ptr)
void obt_area_final(void)
bool obt_enable_unique_checking(bool new_state)
void obt_begin_insert_values(void)
DB_VALUE * obt_check_assignment(SM_ATTRIBUTE *att, DB_VALUE *proposed_value, SM_VALIDATION *valid, unsigned force_check_not_null)
void obt_disable_unique_checking(OBJ_TEMPLATE *template_ptr)
OBJ_TEMPASSIGN ** assignments
int obt_set(OBJ_TEMPLATE *template_ptr, const char *attname, DB_VALUE *value)
int obt_quit(OBJ_TEMPLATE *template_ptr)
void obt_disable_serializable_conflict_checking(OBJ_TEMPLATE *template_ptr)
void obt_reset_force_flush(OBJ_TEMPLATE *template_ptr)
int obt_update(OBJ_TEMPLATE *template_ptr, MOP *newobj)
int obt_check_missing_assignments(OBJ_TEMPLATE *template_ptr)
int obt_assign(OBJ_TEMPLATE *template_ptr, SM_ATTRIBUTE *att, int base_assignment, DB_VALUE *value, SM_VALIDATION *valid)
int obt_desc_set(OBJ_TEMPLATE *template_ptr, SM_DESCRIPTOR *desc, DB_VALUE *value)
struct obj_template * obj
void obt_set_label(OBJ_TEMPLATE *template_ptr, DB_VALUE *label)
struct obj_template OBJ_TEMPLATE
int obt_populate_known_arguments(OBJ_TEMPLATE *template_ptr)
unsigned is_auto_increment
OBJ_TEMPLATE * obt_edit_object(MOP object)
bool obt_Enable_autoincrement
int obt_update_internal(OBJ_TEMPLATE *template_ptr, MOP *newobj, int check_non_null)
bool obt_Last_insert_id_generated
int obt_find_attribute(OBJ_TEMPLATE *template_ptr, int use_base_class, const char *name, SM_ATTRIBUTE **attp)
OBJ_TEMPLATE * obt_def_object(MOP class_)
void obt_retain_after_finish(OBJ_TEMPLATE *template_ptr)
struct obj_template * OBT