20 #ifndef __TYPECODE_HXX__
21 #define __TYPECODE_HXX__
73 const char * getKindRepr()
const;
74 const TypeCode *subContentType(
int lev)
const;
76 virtual void putReprAtPlace(
char *pt,
const char *val,
bool deepCpy)
const;
77 virtual void destroyZippedAny(
char *data)
const;
78 virtual AnyPtr getOrBuildAnyFromZippedData(
char *data)
const;
79 virtual const char * name()
const;
80 virtual const char * shortName()
const;
81 virtual const char * id()
const;
82 virtual const TypeCode * contentType()
const;
83 virtual int isA(
const char* repositoryId)
const;
84 virtual int isA(
const TypeCode* tc)
const ;
86 virtual int isEquivalent(
const TypeCode* tc)
const;
87 virtual unsigned getSizeInByteOfAnyReprInSeq()
const;
88 virtual std::string getPrintStr()
const;
90 static const char *getKindRepr(
DynType kind);
91 static TypeCode * interfaceTc(
const char*
id,
const char* name);
92 static TypeCode * interfaceTc(
const char*
id,
const char* name,
const std::list<TypeCodeObjref *>& ltc);
93 static TypeCode * sequenceTc (
const char*
id,
const char* name,
TypeCode *content);
94 static TypeCode * structTc (
const char*
id,
const char* name);
105 static const char *KIND_STR_REPR [];
131 TypeCodeObjref(
const char* repositoryId,
const char* name,
const std::list<TypeCodeObjref *>& ltc);
134 void putReprAtPlace(
char *pt,
const char *val,
bool deepCpy)
const;
135 void destroyZippedAny(
char *data)
const;
136 AnyPtr getOrBuildAnyFromZippedData(
char *data)
const;
137 const char * id()
const;
138 const char * name()
const;
139 const char * shortName()
const;
140 int isA(
const char* repositoryId)
const;
141 virtual int isA(
const TypeCode* tc)
const ;
143 virtual int isEquivalent(
const TypeCode* tc)
const;
165 void putReprAtPlace(
char *pt,
const char *val,
bool deepCpy)
const;
166 void destroyZippedAny(
char *data)
const;
167 virtual unsigned getSizeInByteOfAnyReprInSeq()
const;
168 AnyPtr getOrBuildAnyFromZippedData(
char *data)
const;
169 const char * id()
const;
170 const char * name()
const;
171 const char * shortName()
const;
172 virtual std::string getPrintStr()
const;
174 virtual const TypeCode * contentType()
const;
175 virtual int isA(
const TypeCode* tc)
const ;
177 virtual int isEquivalent(
const TypeCode* tc)
const;
195 TypeCodeArray(
const char* repositoryId,
const char* name,
const TypeCode *content,
unsigned staticLgth);
197 void putReprAtPlace(
char *pt,
const char *val,
bool deepCpy)
const;
198 void destroyZippedAny(
char *data)
const;
199 AnyPtr getOrBuildAnyFromZippedData(
char *data)
const;
200 const char * id()
const;
201 const char * name()
const;
202 const char * shortName()
const;
203 unsigned getStaticLgth()
const;
205 virtual const TypeCode * contentType()
const;
206 virtual int isA(
const TypeCode* tc)
const ;
208 virtual int isEquivalent(
const TypeCode* tc)
const;
209 unsigned getSizeInByteOfAnyReprInSeq()
const;
233 void putReprAtPlace(
char *pt,
const char *val,
bool deepCpy)
const;
234 void destroyZippedAny(
char *data)
const;
235 AnyPtr getOrBuildAnyFromZippedData(
char *data)
const;
236 const char * id()
const;
237 const char * name()
const;
238 const char * shortName()
const;
239 virtual unsigned getSizeInByteOfAnyReprInSeq()
const;
240 const TypeCode * contentType()
const;
241 virtual int isA(
const char* repositoryId)
const;
242 virtual int isA(
const TypeCode* tc)
const ;
244 virtual int isEquivalent(
const TypeCode* tc)
const;
246 virtual void addMember(
const std::string& name,
TypeCode* tc);
247 const TypeCode *getMember(
const std::string& name,
unsigned& offset)
const;
248 int memberCount()
const;
249 const char* memberName(
int index)
const;
250 TypeCode* memberType(
int index)
const;
257 std::vector< std::pair<std::string,TypeCode*> >
_members;
#define YACSLIBENGINE_EXPORT
: Allow to manage memory of instances of T. The only constraint on T is to have method incrRef and De...
const TypeCode * _content
const unsigned _staticLgth
const std::string _repoId
Class for reference objects.
std::list< TypeCodeObjref * > _listOfBases
Class for sequence objects.
const TypeCode * _content
std::vector< std::pair< std::string, TypeCode * > > _members
Base class for all type objects.
TypeCode & operator=(const TypeCode &tc)
int isAdaptable(const TypeCode *t1, const TypeCode *t2)