00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef XML_SCHEMA_SIMPLE_CONTENT_H
00018 #define XML_SCHEMA_SIMPLE_CONTENT_H
00019
00029 #include <xml_schema_annotated.h>
00030 #include <axis2_hash.h>
00031
00039 #ifdef __cplusplus
00040 extern "C"
00041 {
00042 #endif
00043
00044 typedef struct xml_schema_simple_content
00045 xml_schema_simple_content_t;
00046
00047 typedef struct xml_schema_simple_content_ops
00048 xml_schema_simple_content_ops_t;
00049
00050 struct xml_schema_simple_content_ops
00051 {
00052 axis2_status_t (AXIS2_CALL *
00053 free) (void *sim_content,
00054 const axis2_env_t *env);
00055
00056 xml_schema_annotated_t *(AXIS2_CALL *
00057 get_base_impl) (void *sim_content,
00058 const axis2_env_t *env);
00059
00060 axis2_hash_t *(AXIS2_CALL *
00061 super_objs) (void *sim_content,
00062 const axis2_env_t *env);
00063
00064 xml_schema_types_t (AXIS2_CALL *
00065 get_type) (void *sim_content,
00066 const axis2_env_t *env);
00067
00068 void* (AXIS2_CALL *
00069 get_content)(
00070 void *sim_content,
00071 const axis2_env_t *env);
00072
00073 axis2_status_t (AXIS2_CALL *
00074 set_content)(
00075 void *sim_content,
00076 const axis2_env_t *env,
00077 void *content);
00078
00079 axis2_char_t* (AXIS2_CALL*
00080 to_string)(void *sim_content,
00081 const axis2_env_t *env,
00082 axis2_char_t *prefix,
00083 int tab);
00084
00085 };
00086
00087 struct xml_schema_simple_content
00088 {
00089 xml_schema_annotated_t base;
00090 xml_schema_simple_content_ops_t *ops;
00091 };
00092
00096 AXIS2_EXTERN xml_schema_simple_content_t * AXIS2_CALL
00097 xml_schema_simple_content_create(const axis2_env_t *env);
00098
00099
00100 #define XML_SCHEMA_SIMPLE_CONTENT_FREE(sim_content, env) \
00101 (((xml_schema_simple_content_t *) sim_content)->ops->\
00102 free(sim_content, env))
00103
00104 #define XML_SCHEMA_SIMPLE_CONTENT_GET_BASE_IMPL(sim_content, env) \
00105 (((xml_schema_simple_content_t *) sim_content)->ops->\
00106 get_base_impl(sim_content, env))
00107
00108 #define XML_SCHEMA_SIMPLE_CONTENT_SUPER_OBJS(sim_content, env) \
00109 (((xml_schema_simple_content_t *) sim_content)->ops->\
00110 super_objs(sim_content, env))
00111
00112 #define XML_SCHEMA_SIMPLE_CONTENT_GET_TYPE(sim_content, env) \
00113 (((xml_schema_simple_content_t *) sim_content)->ops->\
00114 get_type(sim_content, env))
00115
00116 #define XML_SCHEMA_SIMPLE_CONTENT_GET_CONTENT(sim_content, env) \
00117 (((xml_schema_simple_content_t *) sim_content)->ops->\
00118 get_content(sim_content, env))
00119
00120 #define XML_SCHEMA_SIMPLE_CONTENT_SET_CONTENT(sim_content, env, content) \
00121 (((xml_schema_simple_content_t *) sim_content)->ops->\
00122 set_content(sim_content, env, content))
00123
00124 #define XML_SCHEMA_SIMPLE_CONTENT_TO_STRING(sim_content, env, prefix, tab) \
00125 (((xml_schema_simple_content_t *) sim_content)->ops->\
00126 to_string(sim_content, env, prefix, tab))
00127
00129 #ifdef __cplusplus
00130 }
00131 #endif
00132 #endif