MWCC/includes/compiler/CTemplateNew.h

24 lines
1.1 KiB
C
Raw Normal View History

#ifndef COMPILER_CTEMPLATENEW_H
#define COMPILER_CTEMPLATENEW_H
#include "compiler/common.h"
2022-12-29 12:32:55 +00:00
extern TemplClass *ctempl_templates;
extern TemplateFunction *ctempl_templatefuncs;
extern TemplStack *ctempl_curinstance;
extern void CTempl_Setup(void);
extern void CTempl_Cleanup(void);
extern TemplArg *CTempl_ParseUncheckTemplArgs(TemplParam *params, Boolean is_global);
extern Type *CTempl_ParseTemplTemplParam(TypeTemplDep *type);
extern Type *CTempl_ClassGetType(TemplClass *templ);
extern Boolean CTempl_IsQualifiedMember(DeclInfo *di, Type *type, NameSpace **resultnspace);
extern void CTempl_Parse(TemplClass *templ, AccessType access);
extern void CTempl_ParseInstanceScopeFunction(Object *funcobj, TemplClassInst *inst, TypeClass *tclass);
extern Boolean CTempl_GenFuncInstance(TemplateFunction *templ, TemplFuncInstance *inst, Boolean flag);
extern void CTempl_InstantiateMember(TemplClass *templ, TemplClassInst *inst, TemplateMember *tmemb, Object *object, Boolean flag);
extern Boolean CTempl_Instantiate(void);
extern Boolean CTempl_InlineFunctionCheck(Object *funcobj);
#endif