14#include "tm_virtualfn_p.h"
19#include <gwenhywfar/debug.h>
20#include <gwenhywfar/misc.h>
39 vf->paramList=Typemaker2_VirtualFn_Param_List_new();
48 if (vf->refCount==1) {
54 free(vf->defaultReturnValue);
56 Typemaker2_VirtualFn_Param_List_free(vf->paramList);
136 const char *paramName;
137 const char *paramType;
138 const char *paramDescr;
145 if (!(paramType && *paramType)) {
154 Typemaker2_VirtualFn_Param_List_Add(prm, vf->paramList);
173 assert(vf->refCount);
183 assert(vf->refCount);
197 assert(vf->refCount);
207 assert(vf->refCount);
211 vf->location=strdup(s);
221 assert(vf->refCount);
231 assert(vf->refCount);
245 assert(vf->refCount);
255 assert(vf->refCount);
265 assert(vf->refCount);
275 assert(vf->refCount);
285 assert(vf->refCount);
295 assert(vf->refCount);
305 assert(vf->refCount);
307 return vf->returnType;
315 assert(vf->refCount);
317 free(vf->returnType);
319 vf->returnType=strdup(s);
329 return vf->returnTypeDescr;
337 free(vf->returnTypeDescr);
339 vf->returnTypeDescr=strdup(s);
341 vf->returnTypeDescr=
NULL;
349 assert(vf->refCount);
351 return vf->defaultReturnValue;
359 assert(vf->refCount);
361 free(vf->defaultReturnValue);
363 vf->defaultReturnValue=strdup(s);
365 vf->defaultReturnValue=
NULL;
373 assert(vf->refCount);
375 return vf->paramList;
383 assert(vf->refCount);
393 assert(vf->refCount);
397 vf->preset=strdup(s);
491 prm->descr=strdup(s);
#define DBG_ERROR(dbg_logger, format,...)
#define GWEN_ERROR_BAD_DATA
#define GWEN_LIST_FINI(t, element)
#define GWEN_LIST_FUNCTIONS(t, pr)
#define GWEN_LIST_INIT(t, element)
#define GWEN_FREE_OBJECT(varname)
#define GWEN_NEW_OBJECT(typ, varname)
@ TypeMaker2_Access_Unknown
@ TypeMaker2_Access_Public
int Typemaker2_AccessFromString(const char *s)
uint32_t Typemaker2_FlagsFromString(const char *t)
void Typemaker2_VirtualFn_SetDefaultReturnValue(TYPEMAKER2_VIRTUALFN *vf, const char *s)
const char * Typemaker2_VirtualFn_GetName(const TYPEMAKER2_VIRTUALFN *vf)
const char * Typemaker2_VirtualFn_GetDescr(const TYPEMAKER2_VIRTUALFN *vf)
void Typemaker2_VirtualFn_SetDescr(TYPEMAKER2_VIRTUALFN *vf, const char *s)
void Typemaker2_VirtualFn_SubFlags(TYPEMAKER2_VIRTUALFN *vf, uint32_t fl)
const char * Typemaker2_VirtualFn_GetDefaultReturnValue(const TYPEMAKER2_VIRTUALFN *vf)
void Typemaker2_VirtualFn_Param_SetName(TYPEMAKER2_VIRTUALFN_PARAM *prm, const char *s)
void Typemaker2_VirtualFn_Attach(TYPEMAKER2_VIRTUALFN *vf)
const char * Typemaker2_VirtualFn_GetReturnTypeDescr(const TYPEMAKER2_VIRTUALFN *vf)
const char * Typemaker2_VirtualFn_GetLocation(const TYPEMAKER2_VIRTUALFN *vf)
const char * Typemaker2_VirtualFn_Param_GetDescr(const TYPEMAKER2_VIRTUALFN_PARAM *prm)
const char * Typemaker2_VirtualFn_Param_GetType(const TYPEMAKER2_VIRTUALFN_PARAM *prm)
void Typemaker2_VirtualFn_SetName(TYPEMAKER2_VIRTUALFN *vf, const char *s)
void Typemaker2_VirtualFn_SetReturnTypeDescr(TYPEMAKER2_VIRTUALFN *vf, const char *s)
const char * Typemaker2_VirtualFn_Param_GetName(const TYPEMAKER2_VIRTUALFN_PARAM *prm)
void Typemaker2_VirtualFn_Param_SetType(TYPEMAKER2_VIRTUALFN_PARAM *prm, const char *s)
void Typemaker2_VirtualFn_SetFlags(TYPEMAKER2_VIRTUALFN *vf, uint32_t fl)
uint32_t Typemaker2_VirtualFn_GetFlags(const TYPEMAKER2_VIRTUALFN *vf)
void Typemaker2_VirtualFn_free(TYPEMAKER2_VIRTUALFN *vf)
TYPEMAKER2_VIRTUALFN * Typemaker2_VirtualFn_new()
TYPEMAKER2_VIRTUALFN_PARAM * Typemaker2_VirtualFn_Param_new()
void Typemaker2_VirtualFn_SetPreset(TYPEMAKER2_VIRTUALFN *vf, const char *s)
void Typemaker2_VirtualFn_SetAccess(TYPEMAKER2_VIRTUALFN *vf, int i)
void Typemaker2_VirtualFn_SetReturnType(TYPEMAKER2_VIRTUALFN *vf, const char *s)
void Typemaker2_VirtualFn_AddFlags(TYPEMAKER2_VIRTUALFN *vf, uint32_t fl)
const char * Typemaker2_VirtualFn_GetPreset(const TYPEMAKER2_VIRTUALFN *vf)
int Typemaker2_VirtualFn_GetAccess(const TYPEMAKER2_VIRTUALFN *vf)
void Typemaker2_VirtualFn_Param_SetDescr(TYPEMAKER2_VIRTUALFN_PARAM *prm, const char *s)
void Typemaker2_VirtualFn_Param_free(TYPEMAKER2_VIRTUALFN_PARAM *prm)
TYPEMAKER2_VIRTUALFN_PARAM_LIST * Typemaker2_VirtualFn_GetParamTypeList(const TYPEMAKER2_VIRTUALFN *vf)
int Typemaker2_VirtualFn_readXml(TYPEMAKER2_VIRTUALFN *vf, GWEN_XMLNODE *node)
void Typemaker2_VirtualFn_SetLocation(TYPEMAKER2_VIRTUALFN *vf, const char *s)
const char * Typemaker2_VirtualFn_GetReturnType(const TYPEMAKER2_VIRTUALFN *vf)
struct TYPEMAKER2_VIRTUALFN TYPEMAKER2_VIRTUALFN
struct TYPEMAKER2_VIRTUALFN_PARAM TYPEMAKER2_VIRTUALFN_PARAM
const char * GWEN_XMLNode_GetProperty(const GWEN_XMLNODE *n, const char *name, const char *defaultValue)
GWEN_XMLNODE * GWEN_XMLNode_FindFirstTag(const GWEN_XMLNODE *n, const char *tname, const char *pname, const char *pvalue)
GWEN_XMLNODE * GWEN_XMLNode_FindNextTag(const GWEN_XMLNODE *n, const char *tname, const char *pname, const char *pvalue)
const char * GWEN_XMLNode_GetCharValue(const GWEN_XMLNODE *n, const char *name, const char *defValue)
struct GWEN__XMLNODE GWEN_XMLNODE