71 int tag,
bool noPrefx,
bool attlst,
bool noTg,
77 const string& namespaceName,
const CDataType* dataType,
89 bool delayed,
bool in_union,
int tag,
90 bool noPrefix,
bool attlist,
91 bool noTag,
bool simple,
const CDataType* dataType,
97 const string& methodPrefix,
99 const string& classPrefix)
const override;
113 const string& fileName,
const CComments& comments);
CClassRefTypeStrings CParent
CChoiceRefTypeStrings(const string &className, const CNamespace &ns, const string &fileName, const CComments &comments)
CChoiceTypeStrings(const string &externalName, const string &className, const string &namespaceName, const CDataType *dataType, const CComments &comments)
virtual void GenerateClassCode(CClassCode &code, CNcbiOstream &getters, const string &methodPrefix, bool haveUserClass, const string &classPrefix) const override
~CChoiceTypeStrings(void)
list< SVariantInfo > TVariants
void AddVariant(const string &external_name, const string &name, const AutoPtr< CTypeStrings > &type, bool delayed, bool in_union, int tag, bool noPrefix, bool attlist, bool noTag, bool simple, const CDataType *dataType, const CComments &commnts)
bool HaveAssignment(void) const
bool x_IsNullType(TVariants::const_iterator i) const
bool x_IsNullWithAttlist(TVariants::const_iterator i, string &name) const
CClassTypeStrings CParent
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
Useful/utility classes and methods.
SVariantInfo(const string &external_name, const string &name, const AutoPtr< CTypeStrings > &type, bool delayed, bool in_union, int tag, bool noPrefx, bool attlst, bool noTg, bool simpl, const CDataType *dataTp, const CComments &commnts)
AutoPtr< CTypeStrings > type
const CDataType * dataType