2022-11-20 05:07:22 +00:00
|
|
|
#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);
|
|
|
|
|
2022-11-20 05:07:22 +00:00
|
|
|
#endif
|