コード例 #1
0
ファイル: VarTemplate.cs プロジェクト: CloudIDEaaS/hydra
 public unsafe VarTemplate(DeclarationContext owningDeclarationContext, CppSharp.Parser.AST.VarTemplate varTemplate) : base(owningDeclarationContext, varTemplate)
 {
     this.varTemplate = varTemplate;
     this.varTemplate.AssertNotNullAndOfType <CppSharp.Parser.AST.VarTemplate>();
 }
コード例 #2
0
 public unsafe TemplateTemplateParameter(DeclarationContext owningDeclarationContext, CppSharp.Parser.AST.TemplateTemplateParameter templateTemplateParameter) : base(owningDeclarationContext, templateTemplateParameter)
 {
     this.templateTemplateParameter = templateTemplateParameter;
     this.templateTemplateParameter.AssertNotNullAndOfType <CppSharp.Parser.AST.TemplateTemplateParameter>();
 }
コード例 #3
0
 public unsafe TypeAliasTemplate(DeclarationContext owningDeclarationContext, CppSharp.Parser.AST.TypeAliasTemplate typeAliasTemplate) : base(owningDeclarationContext, typeAliasTemplate)
 {
     this.typeAliasTemplate = typeAliasTemplate;
     this.typeAliasTemplate.AssertNotNullAndOfType <CppSharp.Parser.AST.TypeAliasTemplate>();
 }
コード例 #4
0
ファイル: ClassTemplate.cs プロジェクト: CloudIDEaaS/hydra
 public unsafe ClassTemplate(DeclarationContext owningDeclarationContext, CppSharp.Parser.AST.ClassTemplate classTemplate) : base(owningDeclarationContext, classTemplate)
 {
     this.classTemplate = classTemplate;
     this.classTemplate.AssertNotNullAndOfType <CppSharp.Parser.AST.ClassTemplate>();
 }
コード例 #5
0
        public static Template GetRealTemplateInternal(this CppSharp.Parser.AST.Template template, DeclarationContext owningDeclarationContext)
        {
            var realTemplate = template.GetRealTemplate();

            switch (template.Kind)
            {
            case CppSharp.Parser.AST.DeclarationKind.TemplateTemplateParm:
                return(new TemplateTemplateParameter(owningDeclarationContext, (CppSharp.Parser.AST.TemplateTemplateParameter)realTemplate));

            case CppSharp.Parser.AST.DeclarationKind.TypeAliasTemplate:
                return(new TypeAliasTemplate(owningDeclarationContext, (CppSharp.Parser.AST.TypeAliasTemplate)realTemplate));

            case CppSharp.Parser.AST.DeclarationKind.ClassTemplate:
                return(new ClassTemplate(owningDeclarationContext, (CppSharp.Parser.AST.ClassTemplate)realTemplate));

            case CppSharp.Parser.AST.DeclarationKind.FunctionTemplate:
                return(new FunctionTemplate(owningDeclarationContext, (CppSharp.Parser.AST.FunctionTemplate)realTemplate));

            case CppSharp.Parser.AST.DeclarationKind.VarTemplate:
                return(new VarTemplate(owningDeclarationContext, (CppSharp.Parser.AST.VarTemplate)realTemplate));

            default:
                Debugger.Break();
                return(null);
            }
        }
コード例 #6
0
ファイル: FunctionTemplate.cs プロジェクト: CloudIDEaaS/hydra
 public unsafe FunctionTemplate(DeclarationContext owningDeclarationContext, CppSharp.Parser.AST.FunctionTemplate functionTemplate) : base(owningDeclarationContext, functionTemplate)
 {
     this.functionTemplate = functionTemplate;
     this.functionTemplate.AssertNotNullAndOfType <CppSharp.Parser.AST.FunctionTemplate>();
 }