6 Star 11 Fork 2

翼翼 / oneLineTemplate

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
OneLineTemplate.h 1.07 KB
一键复制 编辑 原始数据 按行查看 历史
翼翼 提交于 2014-12-12 23:27 . first commit
#ifndef ONELINETEMPLATE_H
#define ONELINETEMPLATE_H
#define CONSTTEXTLEN 256
typedef enum {
DATATYPE_CONSTTEXT,
DATATYPE_VARINDEX
} OneLineTemplateDataType;
typedef struct OneLineTemplate {
OneLineTemplateDataType dataType;
union
{
struct
{
size_t varIndex; //1 is the first valid varIndex, 0 is reserve for undefined var
char varName[CONSTTEXTLEN-4];
}var;
char constText[CONSTTEXTLEN];
}data;
struct OneLineTemplate *next;
} OneLineTemplate;
typedef struct {
const char *varName;
char varValue[128];
}SymTable;
OneLineTemplate* OneLineTemplateCreate(const char* text, const SymTable *symTable, size_t symTableLen);
void OneLineTemplateRelase(OneLineTemplate *tpl);
int OneLineTemplateExpand(const OneLineTemplate *tpl, const SymTable *symTable, size_t symTableLen, char *expandText, size_t expandTextLen);
int OneLineTemplateVarify(const OneLineTemplate *tpl, const SymTable *symTable, size_t symTableLen, const char *text);
#endif /* end of include guard: ONELINETEMPLATE_H */
C
1
https://gitee.com/dknlnl/oneLineTemplate.git
git@gitee.com:dknlnl/oneLineTemplate.git
dknlnl
oneLineTemplate
oneLineTemplate
master

搜索帮助