17 #include <gwenhywfar/debug.h> 101 TYPEMAKER2_MEMBER_LIST *tml;
107 tm=Typemaker2_Member_List_First(tml);
117 tm=Typemaker2_Member_List_Next(tm);
152 if (!typeIsWritten) {
162 DBG_ERROR(0,
"Member [%s] has no identifier", xx?xx:
"(unnamed)");
189 TYPEMAKER2_VIRTUALFN_LIST *fns;
194 if (Typemaker2_VirtualFn_List_GetCount(fns)) {
198 vf=Typemaker2_VirtualFn_List_First(fns);
206 DBG_ERROR(0,
"Virtual function has no name");
215 DBG_ERROR(0,
"Virtual function has no name");
222 vf=Typemaker2_VirtualFn_List_Next(vf);
#define TYPEMAKER2_TYPEFLAGS_WITH_TREE2
TYPEMAKER2_VIRTUALFN_LIST * Typemaker2_Type_GetVirtualFns(const TYPEMAKER2_TYPE *ty)
TYPEMAKER2_TYPE * Typemaker2_Member_GetTypePtr(const TYPEMAKER2_MEMBER *tm)
char * GWEN_Buffer_GetStart(const GWEN_BUFFER *bf)
uint32_t Typemaker2_Member_GetFlags(const TYPEMAKER2_MEMBER *tm)
TYPEMAKER2_ENUM * Typemaker2_Member_GetEnumPtr(const TYPEMAKER2_MEMBER *tm)
static int _addMembers(TYPEMAKER2_TYPE *ty, GWEN_BUFFER *tbuf)
#define TYPEMAKER2_TYPEFLAGS_WITH_SLOTS
struct TYPEMAKER2_ENUM TYPEMAKER2_ENUM
GWEN_BUFFER * GWEN_Buffer_new(char *buffer, uint32_t size, uint32_t used, int take)
int Typemaker2_Member_GetMaxLen(const TYPEMAKER2_MEMBER *tm)
void Typemaker2_Builder_AddPrivateDeclaration(TYPEMAKER2_BUILDER *tb, const char *s)
static int _addVirtualFunctions(TYPEMAKER2_TYPE *ty, GWEN_BUFFER *tbuf)
struct TYPEMAKER2_VIRTUALFN TYPEMAKER2_VIRTUALFN
#define GWEN_ERROR_BAD_DATA
#define TYPEMAKER2_TYPEFLAGS_WITH_SIGNALS
const char * Typemaker2_Type_GetIdentifier(const TYPEMAKER2_TYPE *ty)
int GWEN_Buffer_AppendArgs(GWEN_BUFFER *bf, const char *fmt,...)
#define TYPEMAKER2_TYPEFLAGS_WITH_TREE
int GWEN_Buffer_AppendByte(GWEN_BUFFER *bf, char c)
#define TYPEMAKER2_FLAGS_CONST
struct TYPEMAKER2_BUILDER TYPEMAKER2_BUILDER
#define TYPEMAKER2_FLAGS_ENUM
TYPEMAKER2_MEMBER_LIST * Typemaker2_Type_GetMembers(const TYPEMAKER2_TYPE *ty)
void GWEN_Buffer_free(GWEN_BUFFER *bf)
static int _addMember(TYPEMAKER2_MEMBER *tm, GWEN_BUFFER *tbuf)
struct GWEN_BUFFER GWEN_BUFFER
A dynamically resizeable text buffer.
static void _addFlagspecificElements(TYPEMAKER2_TYPE *ty, uint32_t flags, GWEN_BUFFER *tbuf)
#define DBG_ERROR(dbg_logger, format, args...)
struct TYPEMAKER2_TYPE TYPEMAKER2_TYPE
#define DBG_INFO(dbg_logger, format, args...)
#define TYPEMAKER2_TYPEFLAGS_WITH_REFCOUNT
int TM2C_BuildStruct(TYPEMAKER2_BUILDER *tb, TYPEMAKER2_TYPE *ty)
int Typemaker2_Type_GetType(const TYPEMAKER2_TYPE *ty)
struct TYPEMAKER2_MEMBER TYPEMAKER2_MEMBER
#define TYPEMAKER2_TYPEFLAGS_WITH_INHERIT
uint32_t Typemaker2_Type_GetFlags(const TYPEMAKER2_TYPE *ty)
const char * Typemaker2_Member_GetName(const TYPEMAKER2_MEMBER *tm)
const char * Typemaker2_Enum_GetType(const TYPEMAKER2_ENUM *p_struct)
#define TYPEMAKER2_FLAGS_VOLATILE
const char * Typemaker2_VirtualFn_GetName(const TYPEMAKER2_VIRTUALFN *vf)
int GWEN_Buffer_AppendString(GWEN_BUFFER *bf, const char *buffer)
#define TYPEMAKER2_TYPEFLAGS_WITH_LIST1