File class_object.c
FileList > cubrid > src > object > class_object.c
Go to the source code of this file
#include "config.h"
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include "language_support.h"
#include "area_alloc.h"
#include "work_space.h"
#include "object_representation.h"
#include "object_primitive.h"
#include "class_object.h"
#include "boot_cl.h"
#include "locator_cl.h"
#include "authenticate.h"
#include "set_object.h"
#include "object_accessor.h"
#include "object_print.h"
#include "parser.h"
#include "trigger_manager.h"
#include "schema_manager.h"
#include "dbi.h"
#include "dbtype.h"
#include "printer.hpp"
#include "string_opfunc.h"
Public Types
Public Attributes
Public Static Attributes
Public Functions
| Type |
Name |
| int |
classobj_add_template_reference (SM_TEMPLATE * template_ptr, MOP obj)
|
| DB_LIST * |
classobj_alloc_threaded_array (int size, int count)
|
| void |
classobj_area_final (void)
|
| int |
classobj_area_init (void)
|
| int |
classobj_btid_from_property_value (DB_VALUE * value, BTID * btid, char ** shared_cons_name)
|
| int |
classobj_cache_class_constraints (SM_CLASS * class_)
|
| bool |
classobj_cache_constraints (SM_CLASS * class_)
|
| int |
classobj_change_constraint_comment (DB_SEQ * properties, SM_CLASS_CONSTRAINT * cons, const char * comment)
|
| int |
classobj_change_constraint_status (DB_SEQ * properties, SM_CLASS_CONSTRAINT * cons, SM_INDEX_STATUS index_status)
|
| bool |
classobj_check_attr_in_unique_constraint (SM_CLASS_CONSTRAINT * cons_list, char ** att_names, SM_FUNCTION_INFO * func_index_info)
|
| int |
classobj_check_index_exist (SM_CLASS_CONSTRAINT * constraints, char ** out_shared_cons_name, const char * class_name, DB_CONSTRAINT_TYPE constraint_type, const char * constraint_name, const char ** att_names, const int * asc_desc, const SM_PREDICATE_INFO * filter_index, const SM_FUNCTION_INFO * func_index_info)
|
| bool |
classobj_class_has_indexes (SM_CLASS * class_)
|
| int |
classobj_class_size (SM_CLASS * class_)
|
| SM_COMPONENT * |
classobj_complist_search (SM_COMPONENT * list, const char * name)
|
| int |
classobj_copy_attlist (SM_ATTRIBUTE * attlist, MOP filter_class, int ordered, SM_ATTRIBUTE ** copy_ptr)
|
| SM_ATTRIBUTE * |
classobj_copy_attribute (SM_ATTRIBUTE * src, const char * alias)
|
| int |
classobj_copy_default_expr (DB_DEFAULT_EXPR * dest, const DB_DEFAULT_EXPR * src)
|
| int |
classobj_copy_methfiles (SM_METHOD_FILE * files, MOP filter_class, SM_METHOD_FILE ** copy_ptr)
|
| SM_METHOD * |
classobj_copy_method (SM_METHOD * src, const char * alias)
|
| SM_PARTITION * |
classobj_copy_partition_info (SM_PARTITION * partition_info)
|
| int |
classobj_copy_props (DB_SEQ * properties, MOP filter_class, DB_SEQ ** new_properties)
|
| SM_QUERY_SPEC * |
classobj_copy_query_spec_list (SM_QUERY_SPEC * query_spec)
|
| int |
classobj_copy_reslist (SM_RESOLUTION * src, SM_NAME_SPACE resspace, SM_RESOLUTION ** copy_ptr)
|
| int |
classobj_count_class_foreign_key (SM_CLASS * class_)
|
| int |
classobj_count_cons_attributes (SM_CLASS_CONSTRAINT * cons)
|
| void |
classobj_decache_class_constraints (SM_CLASS * class_)
|
| char * |
classobj_describe_foreign_key_action (SM_FOREIGN_KEY_ACTION action)
|
| int |
classobj_drop_foreign_key_ref (DB_SEQ ** properties, const BTID * btid, const char * name)
|
| int |
classobj_drop_prop (DB_SEQ * properties, const char * name)
|
| SM_COMPONENT * |
classobj_filter_components (SM_COMPONENT ** complist, SM_NAME_SPACE name_space)
|
| SM_ATTRIBUTE * |
classobj_find_attribute (SM_CLASS * class_, const char * name, int class_attribute)
|
| SM_ATTRIBUTE * |
classobj_find_attribute_id (SM_CLASS * class_, int id, int class_attribute)
|
| SM_CLASS_CONSTRAINT * |
classobj_find_class_constraint (SM_CLASS_CONSTRAINT * constraints, SM_CONSTRAINT_TYPE type, const char * name)
|
| SM_CLASS_CONSTRAINT * |
classobj_find_class_constraint_by_btid (SM_CLASS_CONSTRAINT * constraints, SM_CONSTRAINT_TYPE type, BTID btid)
|
| SM_CLASS_CONSTRAINT * |
classobj_find_class_index (SM_CLASS * class_, const char * name)
|
| SM_CLASS_CONSTRAINT * |
classobj_find_class_primary_key (SM_CLASS * class_)
|
| SM_COMPONENT * |
classobj_find_component (SM_CLASS * class_, const char * name, int class_component)
|
| TP_DOMAIN * |
classobj_find_cons_index2_col_type_list (SM_CLASS_CONSTRAINT * cons, OID * root_oid)
|
| SM_CLASS_CONSTRAINT * |
classobj_find_cons_primary_key (SM_CLASS_CONSTRAINT * cons_list)
|
| SM_CLASS_CONSTRAINT * |
classobj_find_constraint_by_attrs (SM_CLASS_CONSTRAINT * cons_list, DB_CONSTRAINT_TYPE new_cons, const char ** att_names, const int * asc_desc, const SM_PREDICATE_INFO * filter_predicate, const SM_FUNCTION_INFO * func_index_info)
|
| SM_CLASS_CONSTRAINT * |
classobj_find_constraint_by_name (SM_CLASS_CONSTRAINT * cons_list, const char * name)
|
| SM_METHOD * |
classobj_find_method (SM_CLASS * class_, const char * name, int class_method)
|
| SM_METHOD_ARGUMENT * |
classobj_find_method_arg (SM_METHOD_ARGUMENT ** arglist, int index, int create)
|
| int |
classobj_find_prop_constraint (DB_SEQ * properties, const char * prop_name, const char * cnstr_name, DB_VALUE * cnstr_val)
|
| SM_REPRESENTATION * |
classobj_find_representation (SM_CLASS * class_, int id)
|
| SM_RESOLUTION * |
classobj_find_resolution (SM_RESOLUTION * reslist, MOP class_mop, const char * name, SM_NAME_SPACE name_space)
|
| void |
classobj_fixup_loaded_class (SM_CLASS * class_)
|
| void |
classobj_free_attribute (SM_ATTRIBUTE * att)
|
| void |
classobj_free_class (SM_CLASS * class_)
|
| void |
classobj_free_class_constraints (SM_CLASS_CONSTRAINT * constraints)
|
| void |
classobj_free_desclist (SM_DESCRIPTOR_LIST * dl)
|
| void |
classobj_free_descriptor (SM_DESCRIPTOR * desc)
|
| void |
classobj_free_foreign_key_ref (SM_FOREIGN_KEY_INFO * fk_info)
|
| void |
classobj_free_function_index_ref (SM_FUNCTION_INFO * func_index_info)
|
| void |
classobj_free_method (SM_METHOD * meth)
|
| void |
classobj_free_method_file (SM_METHOD_FILE * file)
|
| void |
classobj_free_method_signature (SM_METHOD_SIGNATURE * sig)
|
| void |
classobj_free_partition_info (SM_PARTITION * partition_info)
|
| void |
classobj_free_prop (DB_SEQ * properties)
|
| void |
classobj_free_query_spec (SM_QUERY_SPEC * query_spec)
|
| void |
classobj_free_representation (SM_REPRESENTATION * rep)
|
| void |
classobj_free_resolution (SM_RESOLUTION * res)
|
| void |
classobj_free_template (SM_TEMPLATE * template_ptr)
|
| void |
classobj_free_threaded_array (DB_LIST * array, LFREEER clear)
|
| int |
classobj_get_cached_constraint (SM_CONSTRAINT * constraints, SM_CONSTRAINT_TYPE type, BTID * id)
|
| bool |
classobj_has_class_unique_constraint (SM_CLASS_CONSTRAINT * constraints)
|
| bool |
classobj_has_function_constraint (SM_CONSTRAINT * constraints)
|
| bool |
classobj_has_unique_constraint (SM_CONSTRAINT * constraints)
|
| void |
classobj_initialize_attributes (SM_ATTRIBUTE * attributes)
|
| void |
classobj_initialize_methods (SM_METHOD * methods)
|
| int |
classobj_install_template (SM_CLASS * class_, SM_TEMPLATE * flat, int saverep)
|
| bool |
classobj_is_exist_foreign_key_ref (MOP refop, SM_FOREIGN_KEY_INFO * fk_info)
|
| bool |
classobj_is_pk_referred (MOP clsop, SM_FOREIGN_KEY_INFO * fk_info, bool include_self_ref, char ** fk_name)
|
| SM_ATTRIBUTE * |
classobj_make_attribute (const char * name, const PR_TYPE * type, SM_NAME_SPACE name_space)
|
| SM_CLASS * |
classobj_make_class (const char * name)
|
| int |
classobj_make_class_constraints (DB_SET * class_props, SM_ATTRIBUTE * attributes, SM_CLASS_CONSTRAINT ** con_ptr)
|
| SM_DESCRIPTOR_LIST * |
classobj_make_desclist (MOP classobj, SM_CLASS * class_, SM_COMPONENT * comp, int write_access)
|
| SM_DESCRIPTOR * |
classobj_make_descriptor (MOP class_mop, SM_CLASS * classobj, SM_COMPONENT * comp, int write_access)
|
| SM_METHOD * |
classobj_make_method (const char * name, SM_NAME_SPACE name_space)
|
| SM_METHOD_ARGUMENT * |
classobj_make_method_arg (int index)
|
| SM_METHOD_FILE * |
classobj_make_method_file (const char * name)
|
| SM_METHOD_SIGNATURE * |
classobj_make_method_signature (const char * name)
|
| SM_PARTITION * |
classobj_make_partition_info (void)
|
| DB_SEQ * |
classobj_make_prop ()
|
| SM_QUERY_SPEC * |
classobj_make_query_spec (const char * specification)
|
| SM_REPR_ATTRIBUTE * |
classobj_make_repattribute (int attid, DB_TYPE type_id, TP_DOMAIN * domain)
|
| SM_REPRESENTATION * |
classobj_make_representation ()
|
| SM_RESOLUTION * |
classobj_make_resolution (MOP class_mop, const char * name, const char * alias, SM_NAME_SPACE name_space)
|
| SM_TEMPLATE * |
classobj_make_template (const char * name, MOP op, SM_CLASS * class_)
|
| SM_TEMPLATE * |
classobj_make_template_like (const char * name, SM_CLASS * class_)
|
| const char * |
classobj_map_constraint_to_property (SM_CONSTRAINT_TYPE constraint)
|
| int |
classobj_oid_from_property_value (DB_VALUE * value, OID * oid)
|
| const char ** |
classobj_point_at_att_names (SM_CLASS_CONSTRAINT * constraint, int * count_ref)
|
| int |
classobj_populate_class_properties (DB_SET ** properties, SM_CLASS_CONSTRAINT * constraints, SM_CONSTRAINT_TYPE type)
|
| void |
classobj_print (SM_CLASS * class_)
|
| int |
classobj_put_foreign_key_ref (DB_SEQ ** properties, SM_FOREIGN_KEY_INFO * fk_info)
|
| int |
classobj_put_index (DB_SEQ ** properties, SM_CLASS_CONSTRAINT * con, const BTID * id, SM_FOREIGN_KEY_INFO * fk_info, char * shared_cons_name, bool attr_name_instead_of_id)
|
| int |
classobj_put_prop (DB_SEQ * properties, const char * name, DB_VALUE * pvalue)
|
| void |
classobj_remove_class_constraint_node (SM_CLASS_CONSTRAINT ** constraints, SM_CLASS_CONSTRAINT * node)
|
Public Static Functions
| Type |
Name |
| int |
classobj_attribute_size (SM_ATTRIBUTE * att)
|
| bool |
classobj_cache_constraint_entry (const char * name, DB_SEQ * constraint_seq, SM_CLASS * class_, SM_CONSTRAINT_TYPE constraint_type)
|
| bool |
classobj_cache_constraint_list (DB_SEQ * seq, SM_CLASS * class_, SM_CONSTRAINT_TYPE constraint_type)
|
| int |
classobj_cache_not_null_constraints (const char * class_name, SM_ATTRIBUTE * attributes, SM_CLASS_CONSTRAINT ** con_ptr)
|
| SM_REPRESENTATION * |
classobj_capture_representation (SM_CLASS * class_)
|
| int |
classobj_check_function_constraint_info (DB_SEQ * constraint_seq, bool * has_function_constraint)
|
| SM_CONSTRAINT_COMPATIBILITY |
classobj_check_index_compatibility (SM_CLASS_CONSTRAINT * constraints, const DB_CONSTRAINT_TYPE constraint_type, const SM_CLASS_CONSTRAINT * existing_con, SM_CLASS_CONSTRAINT ** primary_con)
|
| void |
classobj_clear_attribute (SM_ATTRIBUTE * att)
|
| void |
classobj_clear_attribute_value (DB_VALUE * value)
|
| void |
classobj_clear_method (SM_METHOD * meth)
|
| int |
classobj_constraint_size (SM_CONSTRAINT * constraint)
|
| int |
classobj_copy_attribute_like (DB_CTMPL * ctemplate, SM_ATTRIBUTE * attribute, const char *const like_class_name)
|
| int |
classobj_copy_constraint_like (DB_CTMPL * ctemplate, SM_CLASS_CONSTRAINT * constraint, const char *const like_class_name)
|
| SM_METHOD_FILE * |
classobj_copy_methfile (SM_METHOD_FILE * src)
|
| int |
classobj_copy_methlist (SM_METHOD * methlist, MOP filter_class, SM_METHOD ** copy_ptr)
|
| SM_METHOD_ARGUMENT * |
classobj_copy_method_arg (SM_METHOD_ARGUMENT * src)
|
| SM_METHOD_SIGNATURE * |
classobj_copy_method_signature (SM_METHOD_SIGNATURE * sig)
|
| int |
classobj_domain_size (TP_DOMAIN * domain)
|
| void |
classobj_filter_attribute_props (DB_SEQ * props)
|
| SM_ATTRIBUTE * |
classobj_find_attribute_list (SM_ATTRIBUTE * attlist, const char * name, int id)
|
| void |
classobj_free_constraint (SM_CONSTRAINT * constraint)
|
| void |
classobj_free_method_arg (SM_METHOD_ARGUMENT * arg)
|
| void |
classobj_free_repattribute (SM_REPR_ATTRIBUTE * rat)
|
| int |
classobj_init_attribute (SM_ATTRIBUTE * src, SM_ATTRIBUTE * dest, int copy)
|
| int |
classobj_init_method (SM_METHOD * src, SM_METHOD * dest, int copy)
|
| void |
classobj_insert_ordered_attribute (SM_ATTRIBUTE ** attlist, SM_ATTRIBUTE * att)
|
| bool |
classobj_is_possible_constraint (SM_CONSTRAINT_TYPE existed, DB_CONSTRAINT_TYPE new_)
|
| SM_CLASS_CONSTRAINT * |
classobj_make_class_constraint (const char * name, SM_CONSTRAINT_TYPE type)
|
| SM_CONSTRAINT * |
classobj_make_constraint (const char * name, SM_CONSTRAINT_TYPE type, BTID * id, bool has_function_constraint)
|
| SM_FOREIGN_KEY_INFO * |
classobj_make_foreign_key_info (DB_SEQ * fk_seq, const char * cons_name, SM_ATTRIBUTE * attributes)
|
| DB_SEQ * |
classobj_make_foreign_key_info_seq (SM_FOREIGN_KEY_INFO * fk_info)
|
| SM_FOREIGN_KEY_INFO * |
classobj_make_foreign_key_ref (DB_SEQ * fk_seq)
|
| SM_FOREIGN_KEY_INFO * |
classobj_make_foreign_key_ref_list (DB_SEQ * fk_container)
|
| DB_SEQ * |
classobj_make_foreign_key_ref_seq (SM_FOREIGN_KEY_INFO * fk_info)
|
| SM_FUNCTION_INFO * |
classobj_make_function_index_info (DB_SEQ * func_seq)
|
| DB_SEQ * |
classobj_make_function_index_info_seq (SM_FUNCTION_INFO * func_index_info)
|
| DB_SEQ * |
classobj_make_index_attr_prefix_seq (int num_attrs, const int * attrs_prefix_length)
|
| SM_PREDICATE_INFO * |
classobj_make_index_filter_pred_info (DB_SEQ * pred_seq)
|
| DB_SEQ * |
classobj_make_index_filter_pred_seq (SM_PREDICATE_INFO * filter_index_info)
|
| int * |
classobj_make_index_prefix_info (DB_SEQ * prefix_seq, int num_attrs)
|
| int |
classobj_method_arg_size (SM_METHOD_ARGUMENT * arg)
|
| int |
classobj_method_file_size (SM_METHOD_FILE * file)
|
| int |
classobj_method_signature_size (SM_METHOD_SIGNATURE * sig)
|
| int |
classobj_method_size (SM_METHOD * meth)
|
| int |
classobj_partition_info_size (SM_PARTITION * partition_info)
|
| void |
classobj_print_props (DB_SEQ * properties)
|
| int |
classobj_put_seq_and_iterate (DB_SEQ * destination, int & index, DB_SEQ * element)
|
| int |
classobj_put_seq_with_name_and_iterate (DB_SEQ * destination, int & index, const char * name, DB_SEQ * seq)
|
| void |
classobj_put_value_and_iterate (DB_SEQ * destination, int & index, DB_VALUE & value)
|
| int |
classobj_query_spec_size (SM_QUERY_SPEC * query_spec)
|
| int |
classobj_repattribute_size (void)
|
| int |
classobj_representation_size (SM_REPRESENTATION * rep)
|
| int |
classobj_resolution_size (SM_RESOLUTION * res)
|
| void |
classobj_sort_attlist (SM_ATTRIBUTE ** source)
|
| void |
classobj_sort_methlist (SM_METHOD ** source)
|
Macros
| Type |
Name |
| define |
NUM_CONSTRAINT_PROPERTIES (([**int**](broker__monitor_8c.md#function-timeout))([**sizeof**](broker__monitor_8c.md#function-timeout)([**Constraint\_properties**](class__object_8c.md#variable-constraint_properties))/[**sizeof**](broker__monitor_8c.md#function-timeout)([**Constraint\_properties**](class__object_8c.md#variable-constraint_properties)[0])))
|
| define |
NUM_CONSTRAINT_TYPES (([**int**](broker__monitor_8c.md#function-timeout))([**sizeof**](broker__monitor_8c.md#function-timeout)([**Constraint\_types**](class__object_8c.md#variable-constraint_types))/[**sizeof**](broker__monitor_8c.md#function-timeout)([**Constraint\_types**](class__object_8c.md#variable-constraint_types)[0])))
|
| define |
SM_SPRINTF_UNIQUE_PROPERTY_VALUE (buffer, volid, fileid, pageid) [**sprintf**](broker__monitor_8c.md#function-timeout)(buffer, "%d\|%d\|%[**d"**](broker__monitor_8c.md#function-timeout), ([**int**](broker__monitor_8c.md#function-timeout))volid, ([**int**](broker__monitor_8c.md#function-timeout))fileid, ([**int**](broker__monitor_8c.md#function-timeout))pageid)
|
Public Types Documentation
enum SM_CONSTRAINT_COMPATIBILITY
enum SM_CONSTRAINT_COMPATIBILITY {
SM_CREATE_NEW_INDEX = 0,
SM_SHARE_INDEX = 1,
SM_NOT_SHARE_INDEX_AND_WARNING = 2,
SM_NOT_SHARE_PRIMARY_KEY_AND_WARNING = 3
};
Public Attributes Documentation
variable SM_MAX_STRING_LENGTH
const int SM_MAX_STRING_LENGTH;
Public Static Attributes Documentation
variable Constraint_properties
const char* Constraint_properties[];
variable Constraint_types
SM_CONSTRAINT_TYPE Constraint_types[];
variable Template_area
Public Functions Documentation
function classobj_add_template_reference
int classobj_add_template_reference (
SM_TEMPLATE * template_ptr,
MOP obj
)
function classobj_alloc_threaded_array
DB_LIST * classobj_alloc_threaded_array (
int size,
int count
)
function classobj_area_final
void classobj_area_final (
void
)
function classobj_area_init
int classobj_area_init (
void
)
function classobj_btid_from_property_value
int classobj_btid_from_property_value (
DB_VALUE * value,
BTID * btid,
char ** shared_cons_name
)
function classobj_cache_class_constraints
int classobj_cache_class_constraints (
SM_CLASS * class_
)
function classobj_cache_constraints
bool classobj_cache_constraints (
SM_CLASS * class_
)
int classobj_change_constraint_comment (
DB_SEQ * properties,
SM_CLASS_CONSTRAINT * cons,
const char * comment
)
function classobj_change_constraint_status
int classobj_change_constraint_status (
DB_SEQ * properties,
SM_CLASS_CONSTRAINT * cons,
SM_INDEX_STATUS index_status
)
function classobj_check_attr_in_unique_constraint
bool classobj_check_attr_in_unique_constraint (
SM_CLASS_CONSTRAINT * cons_list,
char ** att_names,
SM_FUNCTION_INFO * func_index_info
)
function classobj_check_index_exist
int classobj_check_index_exist (
SM_CLASS_CONSTRAINT * constraints,
char ** out_shared_cons_name,
const char * class_name,
DB_CONSTRAINT_TYPE constraint_type,
const char * constraint_name,
const char ** att_names,
const int * asc_desc,
const SM_PREDICATE_INFO * filter_index,
const SM_FUNCTION_INFO * func_index_info
)
function classobj_class_has_indexes
bool classobj_class_has_indexes (
SM_CLASS * class_
)
function classobj_class_size
int classobj_class_size (
SM_CLASS * class_
)
function classobj_complist_search
SM_COMPONENT * classobj_complist_search (
SM_COMPONENT * list,
const char * name
)
function classobj_copy_attlist
int classobj_copy_attlist (
SM_ATTRIBUTE * attlist,
MOP filter_class,
int ordered,
SM_ATTRIBUTE ** copy_ptr
)
function classobj_copy_attribute
SM_ATTRIBUTE * classobj_copy_attribute (
SM_ATTRIBUTE * src,
const char * alias
)
function classobj_copy_default_expr
int classobj_copy_default_expr (
DB_DEFAULT_EXPR * dest,
const DB_DEFAULT_EXPR * src
)
function classobj_copy_methfiles
int classobj_copy_methfiles (
SM_METHOD_FILE * files,
MOP filter_class,
SM_METHOD_FILE ** copy_ptr
)
function classobj_copy_method
SM_METHOD * classobj_copy_method (
SM_METHOD * src,
const char * alias
)
function classobj_copy_partition_info
SM_PARTITION * classobj_copy_partition_info (
SM_PARTITION * partition_info
)
function classobj_copy_props
int classobj_copy_props (
DB_SEQ * properties,
MOP filter_class,
DB_SEQ ** new_properties
)
function classobj_copy_query_spec_list
SM_QUERY_SPEC * classobj_copy_query_spec_list (
SM_QUERY_SPEC * query_spec
)
function classobj_copy_reslist
int classobj_copy_reslist (
SM_RESOLUTION * src,
SM_NAME_SPACE resspace,
SM_RESOLUTION ** copy_ptr
)
function classobj_count_class_foreign_key
int classobj_count_class_foreign_key (
SM_CLASS * class_
)
function classobj_count_cons_attributes
int classobj_count_cons_attributes (
SM_CLASS_CONSTRAINT * cons
)
function classobj_decache_class_constraints
void classobj_decache_class_constraints (
SM_CLASS * class_
)
function classobj_describe_foreign_key_action
char * classobj_describe_foreign_key_action (
SM_FOREIGN_KEY_ACTION action
)
function classobj_drop_foreign_key_ref
int classobj_drop_foreign_key_ref (
DB_SEQ ** properties,
const BTID * btid,
const char * name
)
function classobj_drop_prop
int classobj_drop_prop (
DB_SEQ * properties,
const char * name
)
function classobj_filter_components
SM_COMPONENT * classobj_filter_components (
SM_COMPONENT ** complist,
SM_NAME_SPACE name_space
)
function classobj_find_attribute
SM_ATTRIBUTE * classobj_find_attribute (
SM_CLASS * class_,
const char * name,
int class_attribute
)
function classobj_find_attribute_id
SM_ATTRIBUTE * classobj_find_attribute_id (
SM_CLASS * class_,
int id,
int class_attribute
)
function classobj_find_class_constraint
SM_CLASS_CONSTRAINT * classobj_find_class_constraint (
SM_CLASS_CONSTRAINT * constraints,
SM_CONSTRAINT_TYPE type,
const char * name
)
function classobj_find_class_constraint_by_btid
SM_CLASS_CONSTRAINT * classobj_find_class_constraint_by_btid (
SM_CLASS_CONSTRAINT * constraints,
SM_CONSTRAINT_TYPE type,
BTID btid
)
function classobj_find_class_index
SM_CLASS_CONSTRAINT * classobj_find_class_index (
SM_CLASS * class_,
const char * name
)
function classobj_find_class_primary_key
SM_CLASS_CONSTRAINT * classobj_find_class_primary_key (
SM_CLASS * class_
)
function classobj_find_component
SM_COMPONENT * classobj_find_component (
SM_CLASS * class_,
const char * name,
int class_component
)
function classobj_find_cons_index2_col_type_list
TP_DOMAIN * classobj_find_cons_index2_col_type_list (
SM_CLASS_CONSTRAINT * cons,
OID * root_oid
)
function classobj_find_cons_primary_key
SM_CLASS_CONSTRAINT * classobj_find_cons_primary_key (
SM_CLASS_CONSTRAINT * cons_list
)
function classobj_find_constraint_by_attrs
SM_CLASS_CONSTRAINT * classobj_find_constraint_by_attrs (
SM_CLASS_CONSTRAINT * cons_list,
DB_CONSTRAINT_TYPE new_cons,
const char ** att_names,
const int * asc_desc,
const SM_PREDICATE_INFO * filter_predicate,
const SM_FUNCTION_INFO * func_index_info
)
function classobj_find_constraint_by_name
SM_CLASS_CONSTRAINT * classobj_find_constraint_by_name (
SM_CLASS_CONSTRAINT * cons_list,
const char * name
)
function classobj_find_method
SM_METHOD * classobj_find_method (
SM_CLASS * class_,
const char * name,
int class_method
)
function classobj_find_method_arg
SM_METHOD_ARGUMENT * classobj_find_method_arg (
SM_METHOD_ARGUMENT ** arglist,
int index,
int create
)
function classobj_find_prop_constraint
int classobj_find_prop_constraint (
DB_SEQ * properties,
const char * prop_name,
const char * cnstr_name,
DB_VALUE * cnstr_val
)
function classobj_find_representation
SM_REPRESENTATION * classobj_find_representation (
SM_CLASS * class_,
int id
)
function classobj_find_resolution
SM_RESOLUTION * classobj_find_resolution (
SM_RESOLUTION * reslist,
MOP class_mop,
const char * name,
SM_NAME_SPACE name_space
)
function classobj_fixup_loaded_class
void classobj_fixup_loaded_class (
SM_CLASS * class_
)
function classobj_free_attribute
void classobj_free_attribute (
SM_ATTRIBUTE * att
)
function classobj_free_class
void classobj_free_class (
SM_CLASS * class_
)
function classobj_free_class_constraints
void classobj_free_class_constraints (
SM_CLASS_CONSTRAINT * constraints
)
function classobj_free_desclist
void classobj_free_desclist (
SM_DESCRIPTOR_LIST * dl
)
function classobj_free_descriptor
void classobj_free_descriptor (
SM_DESCRIPTOR * desc
)
function classobj_free_foreign_key_ref
void classobj_free_foreign_key_ref (
SM_FOREIGN_KEY_INFO * fk_info
)
function classobj_free_function_index_ref
void classobj_free_function_index_ref (
SM_FUNCTION_INFO * func_index_info
)
function classobj_free_method
void classobj_free_method (
SM_METHOD * meth
)
function classobj_free_method_file
void classobj_free_method_file (
SM_METHOD_FILE * file
)
function classobj_free_method_signature
void classobj_free_method_signature (
SM_METHOD_SIGNATURE * sig
)
function classobj_free_partition_info
void classobj_free_partition_info (
SM_PARTITION * partition_info
)
function classobj_free_prop
void classobj_free_prop (
DB_SEQ * properties
)
function classobj_free_query_spec
void classobj_free_query_spec (
SM_QUERY_SPEC * query_spec
)
function classobj_free_representation
void classobj_free_representation (
SM_REPRESENTATION * rep
)
function classobj_free_resolution
void classobj_free_resolution (
SM_RESOLUTION * res
)
function classobj_free_template
void classobj_free_template (
SM_TEMPLATE * template_ptr
)
function classobj_free_threaded_array
void classobj_free_threaded_array (
DB_LIST * array,
LFREEER clear
)
function classobj_get_cached_constraint
int classobj_get_cached_constraint (
SM_CONSTRAINT * constraints,
SM_CONSTRAINT_TYPE type,
BTID * id
)
function classobj_has_class_unique_constraint
bool classobj_has_class_unique_constraint (
SM_CLASS_CONSTRAINT * constraints
)
function classobj_has_function_constraint
bool classobj_has_function_constraint (
SM_CONSTRAINT * constraints
)
function classobj_has_unique_constraint
bool classobj_has_unique_constraint (
SM_CONSTRAINT * constraints
)
function classobj_initialize_attributes
void classobj_initialize_attributes (
SM_ATTRIBUTE * attributes
)
function classobj_initialize_methods
void classobj_initialize_methods (
SM_METHOD * methods
)
function classobj_install_template
int classobj_install_template (
SM_CLASS * class_,
SM_TEMPLATE * flat,
int saverep
)
function classobj_is_exist_foreign_key_ref
bool classobj_is_exist_foreign_key_ref (
MOP refop,
SM_FOREIGN_KEY_INFO * fk_info
)
function classobj_is_pk_referred
bool classobj_is_pk_referred (
MOP clsop,
SM_FOREIGN_KEY_INFO * fk_info,
bool include_self_ref,
char ** fk_name
)
function classobj_make_attribute
SM_ATTRIBUTE * classobj_make_attribute (
const char * name,
const PR_TYPE * type,
SM_NAME_SPACE name_space
)
function classobj_make_class
SM_CLASS * classobj_make_class (
const char * name
)
function classobj_make_class_constraints
int classobj_make_class_constraints (
DB_SET * class_props,
SM_ATTRIBUTE * attributes,
SM_CLASS_CONSTRAINT ** con_ptr
)
function classobj_make_desclist
SM_DESCRIPTOR_LIST * classobj_make_desclist (
MOP classobj,
SM_CLASS * class_,
SM_COMPONENT * comp,
int write_access
)
function classobj_make_descriptor
SM_DESCRIPTOR * classobj_make_descriptor (
MOP class_mop,
SM_CLASS * classobj,
SM_COMPONENT * comp,
int write_access
)
function classobj_make_method
SM_METHOD * classobj_make_method (
const char * name,
SM_NAME_SPACE name_space
)
function classobj_make_method_arg
SM_METHOD_ARGUMENT * classobj_make_method_arg (
int index
)
function classobj_make_method_file
SM_METHOD_FILE * classobj_make_method_file (
const char * name
)
function classobj_make_method_signature
SM_METHOD_SIGNATURE * classobj_make_method_signature (
const char * name
)
function classobj_make_partition_info
SM_PARTITION * classobj_make_partition_info (
void
)
function classobj_make_prop
DB_SEQ * classobj_make_prop ()
function classobj_make_query_spec
SM_QUERY_SPEC * classobj_make_query_spec (
const char * specification
)
function classobj_make_repattribute
SM_REPR_ATTRIBUTE * classobj_make_repattribute (
int attid,
DB_TYPE type_id,
TP_DOMAIN * domain
)
function classobj_make_representation
SM_REPRESENTATION * classobj_make_representation ()
function classobj_make_resolution
SM_RESOLUTION * classobj_make_resolution (
MOP class_mop,
const char * name,
const char * alias,
SM_NAME_SPACE name_space
)
function classobj_make_template
SM_TEMPLATE * classobj_make_template (
const char * name,
MOP op,
SM_CLASS * class_
)
function classobj_make_template_like
SM_TEMPLATE * classobj_make_template_like (
const char * name,
SM_CLASS * class_
)
function classobj_map_constraint_to_property
const char * classobj_map_constraint_to_property (
SM_CONSTRAINT_TYPE constraint
)
function classobj_oid_from_property_value
int classobj_oid_from_property_value (
DB_VALUE * value,
OID * oid
)
function classobj_point_at_att_names
const char ** classobj_point_at_att_names (
SM_CLASS_CONSTRAINT * constraint,
int * count_ref
)
function classobj_populate_class_properties
int classobj_populate_class_properties (
DB_SET ** properties,
SM_CLASS_CONSTRAINT * constraints,
SM_CONSTRAINT_TYPE type
)
function classobj_print
void classobj_print (
SM_CLASS * class_
)
function classobj_put_foreign_key_ref
int classobj_put_foreign_key_ref (
DB_SEQ ** properties,
SM_FOREIGN_KEY_INFO * fk_info
)
function classobj_put_index
int classobj_put_index (
DB_SEQ ** properties,
SM_CLASS_CONSTRAINT * con,
const BTID * id,
SM_FOREIGN_KEY_INFO * fk_info,
char * shared_cons_name,
bool attr_name_instead_of_id
)
function classobj_put_prop
int classobj_put_prop (
DB_SEQ * properties,
const char * name,
DB_VALUE * pvalue
)
function classobj_remove_class_constraint_node
void classobj_remove_class_constraint_node (
SM_CLASS_CONSTRAINT ** constraints,
SM_CLASS_CONSTRAINT * node
)
Public Static Functions Documentation
function classobj_attribute_size
static int classobj_attribute_size (
SM_ATTRIBUTE * att
)
function classobj_cache_constraint_entry
static bool classobj_cache_constraint_entry (
const char * name,
DB_SEQ * constraint_seq,
SM_CLASS * class_,
SM_CONSTRAINT_TYPE constraint_type
)
function classobj_cache_constraint_list
static bool classobj_cache_constraint_list (
DB_SEQ * seq,
SM_CLASS * class_,
SM_CONSTRAINT_TYPE constraint_type
)
function classobj_cache_not_null_constraints
static int classobj_cache_not_null_constraints (
const char * class_name,
SM_ATTRIBUTE * attributes,
SM_CLASS_CONSTRAINT ** con_ptr
)
function classobj_capture_representation
static SM_REPRESENTATION * classobj_capture_representation (
SM_CLASS * class_
)
function classobj_check_function_constraint_info
static int classobj_check_function_constraint_info (
DB_SEQ * constraint_seq,
bool * has_function_constraint
)
function classobj_check_index_compatibility
static SM_CONSTRAINT_COMPATIBILITY classobj_check_index_compatibility (
SM_CLASS_CONSTRAINT * constraints,
const DB_CONSTRAINT_TYPE constraint_type,
const SM_CLASS_CONSTRAINT * existing_con,
SM_CLASS_CONSTRAINT ** primary_con
)
function classobj_clear_attribute
static void classobj_clear_attribute (
SM_ATTRIBUTE * att
)
function classobj_clear_attribute_value
static void classobj_clear_attribute_value (
DB_VALUE * value
)
function classobj_clear_method
static void classobj_clear_method (
SM_METHOD * meth
)
function classobj_constraint_size
static int classobj_constraint_size (
SM_CONSTRAINT * constraint
)
function classobj_copy_attribute_like
static int classobj_copy_attribute_like (
DB_CTMPL * ctemplate,
SM_ATTRIBUTE * attribute,
const char * const like_class_name
)
function classobj_copy_constraint_like
static int classobj_copy_constraint_like (
DB_CTMPL * ctemplate,
SM_CLASS_CONSTRAINT * constraint,
const char * const like_class_name
)
function classobj_copy_methfile
static SM_METHOD_FILE * classobj_copy_methfile (
SM_METHOD_FILE * src
)
function classobj_copy_methlist
static int classobj_copy_methlist (
SM_METHOD * methlist,
MOP filter_class,
SM_METHOD ** copy_ptr
)
function classobj_copy_method_arg
static SM_METHOD_ARGUMENT * classobj_copy_method_arg (
SM_METHOD_ARGUMENT * src
)
function classobj_copy_method_signature
static SM_METHOD_SIGNATURE * classobj_copy_method_signature (
SM_METHOD_SIGNATURE * sig
)
function classobj_domain_size
static int classobj_domain_size (
TP_DOMAIN * domain
)
function classobj_filter_attribute_props
static void classobj_filter_attribute_props (
DB_SEQ * props
)
function classobj_find_attribute_list
static SM_ATTRIBUTE * classobj_find_attribute_list (
SM_ATTRIBUTE * attlist,
const char * name,
int id
)
function classobj_free_constraint
static void classobj_free_constraint (
SM_CONSTRAINT * constraint
)
function classobj_free_method_arg
static void classobj_free_method_arg (
SM_METHOD_ARGUMENT * arg
)
function classobj_free_repattribute
static void classobj_free_repattribute (
SM_REPR_ATTRIBUTE * rat
)
function classobj_init_attribute
static int classobj_init_attribute (
SM_ATTRIBUTE * src,
SM_ATTRIBUTE * dest,
int copy
)
function classobj_init_method
static int classobj_init_method (
SM_METHOD * src,
SM_METHOD * dest,
int copy
)
function classobj_insert_ordered_attribute
static void classobj_insert_ordered_attribute (
SM_ATTRIBUTE ** attlist,
SM_ATTRIBUTE * att
)
function classobj_is_possible_constraint
static bool classobj_is_possible_constraint (
SM_CONSTRAINT_TYPE existed,
DB_CONSTRAINT_TYPE new_
)
function classobj_make_class_constraint
static SM_CLASS_CONSTRAINT * classobj_make_class_constraint (
const char * name,
SM_CONSTRAINT_TYPE type
)
function classobj_make_constraint
static SM_CONSTRAINT * classobj_make_constraint (
const char * name,
SM_CONSTRAINT_TYPE type,
BTID * id,
bool has_function_constraint
)
function classobj_make_foreign_key_info
static SM_FOREIGN_KEY_INFO * classobj_make_foreign_key_info (
DB_SEQ * fk_seq,
const char * cons_name,
SM_ATTRIBUTE * attributes
)
function classobj_make_foreign_key_info_seq
static DB_SEQ * classobj_make_foreign_key_info_seq (
SM_FOREIGN_KEY_INFO * fk_info
)
function classobj_make_foreign_key_ref
static SM_FOREIGN_KEY_INFO * classobj_make_foreign_key_ref (
DB_SEQ * fk_seq
)
function classobj_make_foreign_key_ref_list
static SM_FOREIGN_KEY_INFO * classobj_make_foreign_key_ref_list (
DB_SEQ * fk_container
)
function classobj_make_foreign_key_ref_seq
static DB_SEQ * classobj_make_foreign_key_ref_seq (
SM_FOREIGN_KEY_INFO * fk_info
)
function classobj_make_function_index_info
static SM_FUNCTION_INFO * classobj_make_function_index_info (
DB_SEQ * func_seq
)
function classobj_make_function_index_info_seq
static DB_SEQ * classobj_make_function_index_info_seq (
SM_FUNCTION_INFO * func_index_info
)
function classobj_make_index_attr_prefix_seq
static DB_SEQ * classobj_make_index_attr_prefix_seq (
int num_attrs,
const int * attrs_prefix_length
)
function classobj_make_index_filter_pred_info
static SM_PREDICATE_INFO * classobj_make_index_filter_pred_info (
DB_SEQ * pred_seq
)
function classobj_make_index_filter_pred_seq
static DB_SEQ * classobj_make_index_filter_pred_seq (
SM_PREDICATE_INFO * filter_index_info
)
function classobj_make_index_prefix_info
static int * classobj_make_index_prefix_info (
DB_SEQ * prefix_seq,
int num_attrs
)
function classobj_method_arg_size
static int classobj_method_arg_size (
SM_METHOD_ARGUMENT * arg
)
function classobj_method_file_size
static int classobj_method_file_size (
SM_METHOD_FILE * file
)
function classobj_method_signature_size
static int classobj_method_signature_size (
SM_METHOD_SIGNATURE * sig
)
function classobj_method_size
static int classobj_method_size (
SM_METHOD * meth
)
function classobj_partition_info_size
static int classobj_partition_info_size (
SM_PARTITION * partition_info
)
function classobj_print_props
static void classobj_print_props (
DB_SEQ * properties
)
function classobj_put_seq_and_iterate
static int classobj_put_seq_and_iterate (
DB_SEQ * destination,
int & index,
DB_SEQ * element
)
function classobj_put_seq_with_name_and_iterate
static int classobj_put_seq_with_name_and_iterate (
DB_SEQ * destination,
int & index,
const char * name,
DB_SEQ * seq
)
function classobj_put_value_and_iterate
static void classobj_put_value_and_iterate (
DB_SEQ * destination,
int & index,
DB_VALUE & value
)
function classobj_query_spec_size
static int classobj_query_spec_size (
SM_QUERY_SPEC * query_spec
)
function classobj_repattribute_size
static int classobj_repattribute_size (
void
)
function classobj_representation_size
static int classobj_representation_size (
SM_REPRESENTATION * rep
)
function classobj_resolution_size
static int classobj_resolution_size (
SM_RESOLUTION * res
)
function classobj_sort_attlist
static void classobj_sort_attlist (
SM_ATTRIBUTE ** source
)
function classobj_sort_methlist
static void classobj_sort_methlist (
SM_METHOD ** source
)
Macro Definition Documentation
define NUM_CONSTRAINT_PROPERTIES
#define NUM_CONSTRAINT_PROPERTIES `(( int )( sizeof ( Constraint_properties )/ sizeof ( Constraint_properties [0])))`
define NUM_CONSTRAINT_TYPES
#define NUM_CONSTRAINT_TYPES `(( int )( sizeof ( Constraint_types )/ sizeof ( Constraint_types [0])))`
define SM_SPRINTF_UNIQUE_PROPERTY_VALUE
#define SM_SPRINTF_UNIQUE_PROPERTY_VALUE (
buffer,
volid,
fileid,
pageid
) `sprintf (buffer, "%d|%d|% d" , ( int )volid, ( int )fileid, ( int )pageid)`
The documentation for this class was generated from the following file cubrid/src/object/class_object.c