예제 #1
0
        public virtual bool VisitTemplateParameter(TypeTemplateParameter templateParameter)
        {
            if (!VisitDeclaration(templateParameter))
            {
                return(false);
            }

            return(true);
        }
예제 #2
0
        public virtual string VisitTemplateParameterDecl(TypeTemplateParameter templateParameter)
        {
            if (templateParameter.DefaultArgument.Type == null)
            {
                return(templateParameter.Name);
            }

            return($"{templateParameter.Name} = {templateParameter.DefaultArgument.Visit(this)}");
        }
예제 #3
0
        public virtual string VisitTemplateParameterDecl(TypeTemplateParameter templateParameter)
        {
            if (templateParameter.DefaultArgument.Type == null)
            {
                return(templateParameter.Name);
            }

            return(string.Format("{0} = {1}", templateParameter.Name,
                                 templateParameter.DefaultArgument.Visit(this)));
        }
예제 #4
0
 public TemplateParameterType(TemplateParameterType type)
     : base(type)
 {
     Parameter = new TypeTemplateParameter
     {
         Constraint = type.Parameter.Constraint,
         Name       = type.Parameter.Name
     };
     Depth           = type.Depth;
     Index           = type.Index;
     IsParameterPack = type.IsParameterPack;
 }