示例#1
0
 public static ExecuteMethodTemplate WithParameter(this ExecuteMethodTemplate methodTemplate, ICodeFragment code)
 {
     if (code != null)
     {
         methodTemplate.Parameters.Add(code);
     }
     return(methodTemplate);
 }
示例#2
0
 public static NullCoalescingOperatorTemplate NullCoalescing(this Code _, ICodeFragment codeLeft, ICodeFragment codeRight)
 {
     return(new NullCoalescingOperatorTemplate(codeLeft, codeRight));
 }
 public static AssignTemplate AssignNullishCoalescing(this ChainedCodeFragment template, ICodeFragment code)
 {
     return(new AssignTemplate(code, "??").Chain(template));
 }
 public static ConstructorTemplate WithParameter(this ConstructorTemplate constructorTemplate, TypeTemplate type, string name, ICodeFragment defaultValue = null)
 {
     constructorTemplate.Parameters.Add(new ParameterTemplate(type, name, defaultValue));
     return(constructorTemplate);
 }
示例#5
0
 public static MethodTemplate WithParameter(this MethodTemplate methodTemplate, TypeTemplate type, string name, ICodeFragment defaultValue = null)
 {
     methodTemplate.AddParameter(type, name, defaultValue);
     return(methodTemplate);
 }
示例#6
0
 public ElseIfTemplate(ICodeFragment condition)
 {
     this.Condition = condition;
     this.Code      = new MultilineCodeFragment();
 }
示例#7
0
 public virtual void Write(ICodeFragment fragment, IOutputCache output)
 {
     output.Add("super");
 }
示例#8
0
        public virtual void Write(ICodeFragment fragment, IOutputCache output)
        {
            StringTemplate template = (StringTemplate)fragment;

            output.Add($"\"{template.Value}\"");
        }
 public ParameterTemplate(TypeTemplate type, string name, ICodeFragment defaultValue = null)
 {
     this.Type         = type;
     this.Name         = name;
     this.DefaultValue = defaultValue;
 }
示例#10
0
        public static DeclareTypeTemplate AddDeclareType(this NamespaceTemplate namespaceTemplate, string name, ICodeFragment type)
        {
            DeclareTypeTemplate declareTypeTemplate = new DeclareTypeTemplate(name, type);

            namespaceTemplate.Children.Insert(0, declareTypeTemplate);
            return(declareTypeTemplate);
        }
示例#11
0
 public static NamespaceTemplate WithDeclareType(this NamespaceTemplate namespaceTemplate, string name, ICodeFragment type)
 {
     namespaceTemplate.AddDeclareType(name, type);
     return(namespaceTemplate);
 }
示例#12
0
        public virtual void Write(ICodeFragment fragment, IOutputCache output)
        {
            LocalVariableTemplate template = (LocalVariableTemplate)fragment;

            output.Add(template.Name);
        }
示例#13
0
 public DeclareTypeTemplate(string name, ICodeFragment type)
 {
     this.Name   = name;
     this.Type   = type;
     this.Usings = new List <UsingTemplate>();
 }
 public NullCoalescingTemplate(ICodeFragment code = null)
 {
     this.Code = code;
 }
示例#15
0
        public virtual void Write(ICodeFragment fragment, IOutputCache output)
        {
            NumberTemplate template = (NumberTemplate)fragment;

            output.Add(template.Value.ToString());
        }
示例#16
0
 public static ParameterTemplate Create(TypeTemplate type, string name, ICodeFragment defaultValue = null)
 {
     return(new ParameterTemplate(type, name, defaultValue));
 }
示例#17
0
        public void Write(ICodeFragment fragment, IOutputCache output)
        {
            MathematicalOperatorTemplate template = (MathematicalOperatorTemplate)fragment;

            output.Add(template.OperatorName);
        }
示例#18
0
 public CaseTemplate(ICodeFragment expression)
 {
     this.Expression = expression;
     this.Code       = new MultilineCodeFragment();
 }
示例#19
0
 public NullCoalescingOperatorTemplate(ICodeFragment leftCode, ICodeFragment rightCode)
 {
     this.LeftCode  = leftCode;
     this.RightCode = rightCode;
 }
示例#20
0
 public AccessIndexTemplate(ICodeFragment code)
 {
     this.Code = code;
 }
示例#21
0
        public virtual void Write(ICodeFragment fragment, IOutputCache output)
        {
            BooleanTemplate template = (BooleanTemplate)fragment;

            output.Add(template.Value.ToString().ToLowerInvariant());
        }
 public MultilineCodeFragment AddLine(ICodeFragment code)
 {
     this.Fragments.Add(code);
     return(this);
 }
示例#23
0
        public static ParameterTemplate AddParameter(this MethodTemplate methodTemplate, TypeTemplate type, string name, ICodeFragment defaultValue = null)
        {
            var parameter = new ParameterTemplate(type, name, defaultValue);

            methodTemplate.Parameters.Add(parameter);
            return(parameter);
        }
        public virtual void Write(ICodeFragment fragment, IOutputCache output)
        {
            AccessIndexTemplate template = (AccessIndexTemplate)fragment;

            output.Add("[").Add(template.Code).Add("]");
        }
示例#25
0
 public static MethodTemplate WithCode(this MethodTemplate methodTemplate, ICodeFragment code)
 {
     methodTemplate.Code.Fragments.Add(code);
     return(methodTemplate);
 }
示例#26
0
 public AppendStringTemplate(ICodeFragment code)
 {
     this.Code = code;
 }
 public static AssignTemplate Assign(this ChainedCodeFragment template, ICodeFragment code)
 {
     return(new AssignTemplate(code).Chain(template));
 }
示例#28
0
        public virtual void Write(ICodeFragment fragment, IOutputCache output)
        {
            DateTimeTemplate template = (DateTimeTemplate)fragment;

            output.Add($"new Date({template.Value.Ticks})");
        }
 public static AppendAssignStringTemplate AppendAssign(this ChainedCodeFragment template, ICodeFragment code)
 {
     return(new AppendAssignStringTemplate(code).Chain(template));
 }
示例#30
0
 public virtual void Write(ICodeFragment fragment, IOutputCache output)
 {
 }