18 # define I18N(m) dgettext("gwenhywfar", m) 27 #include "typemaker_p.h" 28 #include <gwenhywfar/debug.h> 29 #include <gwenhywfar/logger.h> 30 #include <gwenhywfar/xml.h> 35 #include <sys/types.h> 230 if (strcasecmp(mode,
"single")!=0)
252 if (strcasecmp(tmode,
"enum")!=0)
299 if (isPtr && isConst) {
302 if (strcasecmp(tmode,
"enum")!=0)
326 if (strcasecmp(typ,
"GWEN_STRINGLIST")==0) {
396 DBG_ERROR(0,
"No return type for function");
477 if (!aname || !*aname) {
478 DBG_ERROR(0,
"No name for argument %d in function %s", idx, name);
482 if (!atype || !*atype) {
483 DBG_ERROR(0,
"No type for argument %d in function %s", idx, name);
543 if (strcasecmp(s, acc)==0) {
571 DBG_ERROR(0,
"No values in enum description for \"%s\"",
659 if (strcasecmp(sacc, acc)==0) {
676 DBG_ERROR(0,
"No return type for function");
719 if (!aname || !*aname) {
720 DBG_ERROR(0,
"No name for argument %d in function %s", idx, name);
724 if (!atype || !*atype) {
725 DBG_ERROR(0,
"No type for argument %d in function %s", idx, name);
788 snprintf(numbuf,
sizeof(numbuf),
"%d", level);
836 snprintf(numbuf,
sizeof(numbuf),
"%d", level);
1198 fprintf(stderr,
"Parameter error\n");
1213 fprintf(stderr,
"No input file given.\n");
1224 fprintf(stderr,
"ERROR: Error reading file \"%s\"\n", inFile->
param);
1238 inFile=inFile->
next;
int GWEN_SyncIo_WriteForced(GWEN_SYNCIO *sio, const uint8_t *buffer, uint32_t size)
char * GWEN_Buffer_GetStart(const GWEN_BUFFER *bf)
GWENHYWFAR_API int GWEN_XMLNode_toBuffer(const GWEN_XMLNODE *n, GWEN_BUFFER *buf, uint32_t flags)
#define GWEN_XML_FLAGS_DEFAULT
uint32_t GWEN_Buffer_GetUsedBytes(const GWEN_BUFFER *bf)
#define GWEN_XML_FLAGS_SIMPLE
const char * GWEN_XMLNode_GetProperty(const GWEN_XMLNODE *n, const char *name, const char *defaultValue)
void GWEN_Logger_SetLevel(const char *logDomain, GWEN_LOGGER_LEVEL l)
GWEN_XMLNODE * GWEN_XMLNode_FindNextTag(const GWEN_XMLNODE *n, const char *tname, const char *pname, const char *pvalue)
GWEN_XMLNODE * GWEN_XMLNode_GetFirstData(const GWEN_XMLNODE *n)
int write_ha_files_c(ARGUMENTS *args, GWEN_XMLNODE *node)
GWENHYWFAR_API int GWEN_XML_ReadFile(GWEN_XMLNODE *n, const char *filepath, uint32_t flags)
int write_hl_files_c(ARGUMENTS *args, GWEN_XMLNODE *node)
#define DBG_WARN(dbg_logger, format, args...)
#define DBG_ERROR_ERR(dbg_logger, dbg_err)
uint32_t GWEN_Buffer_GetPos(const GWEN_BUFFER *bf)
int write_hp_files_c(ARGUMENTS *args, GWEN_XMLNODE *node)
GWEN_XMLNODE * GWEN_XMLNode_new(GWEN_XMLNODE_TYPE t, const char *data)
GWEN_BUFFER * GWEN_Buffer_new(char *buffer, uint32_t size, uint32_t used, int take)
int write_apidocrec_c(ARGUMENTS *args, GWEN_XMLNODE *node, GWEN_SYNCIO *sio, const char *acc, int level)
int main(int argc, char **argv)
int GWEN_SyncIo_WriteLine(GWEN_SYNCIO *sio, const char *s)
int write_h_funcs(GWEN_UNUSED ARGUMENTS *args, GWEN_XMLNODE *node, GWEN_SYNCIO *sio, const char *acc)
GWEN_XMLNODE * GWEN_XMLNode_FindFirstTag(const GWEN_XMLNODE *n, const char *tname, const char *pname, const char *pvalue)
GWEN_XMLNODE * get_typedef(GWEN_XMLNODE *node, const char *name)
GWEN_XMLNODE * get_struct_node(GWEN_XMLNODE *node)
struct GWEN_SYNCIO GWEN_SYNCIO
GWEN_XMLNODE_TYPE GWEN_XMLNode_GetType(const GWEN_XMLNODE *n)
GWEN_LOGGER_LOGTYPE logType
const char * get_struct_property(GWEN_XMLNODE *node, const char *pname, const char *defval)
GWEN_XMLNODE * GWEN_XMLNode_GetNextTag(const GWEN_XMLNODE *n)
GWEN_LOGGER_LEVEL logLevel
int write_files(ARGUMENTS *args, GWEN_XMLNODE *node)
int GWEN_Buffer_AppendByte(GWEN_BUFFER *bf, char c)
void GWEN_Buffer_free(GWEN_BUFFER *bf)
void GWEN_XMLNode_free(GWEN_XMLNODE *n)
struct GWEN_BUFFER GWEN_BUFFER
A dynamically resizeable text buffer.
GWEN_XMLNODE * GWEN_XMLNode_GetParent(const GWEN_XMLNODE *n)
const char * get_property(GWEN_XMLNODE *node, const char *pname, const char *defval)
int GWEN_Logger_Open(const char *logDomain, const char *ident, const char *file, GWEN_LOGGER_LOGTYPE logtype, GWEN_LOGGER_FACILITY facility)
int GWEN_Buffer_Crop(GWEN_BUFFER *bf, uint32_t pos, uint32_t l)
#define DBG_ERROR(dbg_logger, format, args...)
GWEN_XMLNODE * GWEN_XMLNode_GetFirstTag(const GWEN_XMLNODE *n)
int GWEN_SyncIo_WriteString(GWEN_SYNCIO *sio, const char *s)
const char * GWEN_XMLNode_GetData(const GWEN_XMLNODE *n)
int write_h_enums(ARGUMENTS *args, GWEN_XMLNODE *node, GWEN_SYNCIO *sio, const char *acc)
const char * get_function_name(GWEN_XMLNODE *node, const char *ftype)
int write_code_files_c(ARGUMENTS *args, GWEN_XMLNODE *node)
#define DBG_INFO(dbg_logger, format, args...)
int write_h_setget_c(ARGUMENTS *args, GWEN_XMLNODE *node, GWEN_SYNCIO *sio, const char *acc)
#define GWEN_XML_FLAGS_INDENT
int write_xml_to_bio(GWEN_XMLNODE *n, GWEN_SYNCIO *sio, uint32_t flags)
void write_if_nonnull(GWEN_SYNCIO *sio, const char *str)
const char * get_function_name2(GWEN_XMLNODE *node, const char *ftype, const char *name)
int write_apidoc_c(ARGUMENTS *args, GWEN_XMLNODE *node, GWEN_SYNCIO *sio, const char *acc)
int write_h_header(GWEN_UNUSED ARGUMENTS *args, GWEN_XMLNODE *node, GWEN_SYNCIO *sio, GWEN_UNUSED const char *where)
struct GWEN__XMLNODE GWEN_XMLNODE
int GWEN_Buffer_AppendString(GWEN_BUFFER *bf, const char *buffer)
int GWEN_SyncIo_WriteChar(GWEN_SYNCIO *sio, char s)