00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef XML_SCHEMA_TOKENIZED_TYPE_H
00019 #define XML_SCHEMA_TOKENIZED_TYPE_H
00020
00028 #include <xml_schema_enum.h>
00029
00035 typedef struct xml_schema_tokenized_type xml_schema_tokenized_type_t;
00036 typedef struct xml_schema_tokenized_type_ops
00037 xml_schema_tokenized_type_ops_t;
00038
00039 #ifdef __cplusplus
00040 extern "C"
00041 {
00042 #endif
00043
00044 struct xml_schema_tokenized_type_ops
00045 {
00050 axis2_status_t (AXIS2_CALL *
00051 free) (void *tokenized_type,
00052 const axis2_env_t *env);
00053
00054 xml_schema_enum_t *(AXIS2_CALL *
00055 get_base_impl) (void *tokenized_type,
00056 const axis2_env_t *env);
00057
00058 axis2_array_list_t *(AXIS2_CALL *
00059 get_values)(void *tokenized_type,
00060 const axis2_env_t *env);
00061
00062 axis2_hash_t* (AXIS2_CALL *
00063 super_objs)(void *tokenized_type,
00064 const axis2_env_t *env);
00065
00066 xml_schema_types_t (AXIS2_CALL *
00067 get_type)(void *tokenized_type,
00068 const axis2_env_t *env);
00069
00070 };
00071
00072 struct xml_schema_tokenized_type
00073 {
00074 xml_schema_enum_t base;
00075 xml_schema_tokenized_type_ops_t *ops;
00076 };
00077
00078 AXIS2_EXTERN xml_schema_tokenized_type_t * AXIS2_CALL
00079 xml_schema_tokenized_type_create(const axis2_env_t *env,
00080 axis2_char_t* value);
00081
00082
00083
00084 #define XML_SCHEMA_TOKENIZED_TYPE_FREE(tokenized_type, env) \
00085 (((xml_schema_tokenized_type_t *) tokenized_type)->ops->free(tokenized_type, env))
00086
00087 #define XML_SCHEMA_TOKENIZED_TYPE_GET_BASE_IMPL(tokenized_type, env) \
00088 (((xml_schema_tokenized_type_t *) tokenized_type)->ops->get_base_impl(tokenized_type, env))
00089
00090 #define XML_SCHEMA_TOKENIZED_TYPE_GET_VALUES(tokenized_type, env) \
00091 (((xml_schema_tokenized_type_t *) tokenized_type)->ops->values(tokenized_type, env))
00092
00093 #define XML_SCHEMA_TOKENIZED_TYPE_SUPER_OBJS(tokenized_type, env) \
00094 (((xml_schema_tokenized_type_t *) tokenized_type)->ops->super_objs(tokenized_type, env))
00095
00096 #define XML_SCHEMA_TOKENIZED_TYPE_GET_TYPE(tokenized_type, env) \
00097 (((xml_schema_tokenized_type_t *) tokenized_type)->ops->\
00098 get_type(tokenized_type, env))
00099
00100 #ifdef __cplusplus
00101 }
00102 #endif
00103 #endif