コード例 #1
0
        protected virtual void WriteActionOutput(TemplateContext _, IActionOut output)
        {
            if (output.ActionFieldInfo != null && output.ActionFieldInfo.IsReturn)
            {
                return;
            }
            if (output.ActionFieldInfo != null && output.ActionFieldInfo.IsDelegateMember)
            {
                return;
            }
            _._("{0} = {1}.{2}", output.VariableName, VariableName, output.Name);
            var variableReference = output.OutputTo <IContextVariable>();

            if (variableReference != null)
            {
                _.CurrentStatements.Add(new CodeAssignStatement(new CodeSnippetExpression(variableReference.VariableName),
                                                                new CodeSnippetExpression(output.VariableName)));
            }
            var actionIn = output.OutputTo <IActionIn>();

            if (actionIn != null)
            {
                _.CurrentStatements.Add(new CodeAssignStatement(
                                            new CodeSnippetExpression(actionIn.VariableName),
                                            new CodeSnippetExpression(output.VariableName)));
            }
            var outputChildItem = output.OutputTo <OutputsChildItem>();

            if (outputChildItem != null)
            {
                _.CurrentStatements.Add(new CodeAssignStatement(new CodeSnippetExpression(outputChildItem.Name),
                                                                new CodeSnippetExpression(output.VariableName)));
            }
        }
コード例 #2
0
        public override void VisitOutput(IActionOut output)
        {
            base.VisitOutput(output);
            if (output.ActionFieldInfo != null)
                _.TryAddNamespace(output.ActionFieldInfo.MemberType.Namespace);

            if (output is ActionBranch) return;
            var varDecl = new CodeMemberField(
                output.VariableType.FullName.Replace("&", "").ToCodeReference(),
                output.VariableName
                )
            {
                InitExpression = new CodeSnippetExpression(string.Format("default( {0} )", output.VariableType.FullName.Replace("&", "")))
            };
            _.CurrentDeclaration.Members.Add(varDecl);

        }
コード例 #3
0
        public override void VisitOutput(IActionOut output)
        {
            base.VisitOutput(output);
            if (output.ActionFieldInfo != null)
            {
                _.TryAddNamespace(output.ActionFieldInfo.MemberType.Namespace);
            }

            if (output is ActionBranch)
            {
                return;
            }
            var varDecl = new CodeMemberField(
                output.VariableType.FullName.Replace("&", "").ToCodeReference(),
                output.VariableName
                )
            {
                InitExpression = new CodeSnippetExpression(string.Format("default( {0} )", output.VariableType.FullName.Replace("&", "")))
            };

            _.CurrentDeclaration.Members.Add(varDecl);
        }
コード例 #4
0
 public virtual void AfterVisitOutput(IActionOut actionIn)
 {
         
 }
コード例 #5
0
 public virtual void VisitOutput(IActionOut output)
 {
         
 }
コード例 #6
0
 public virtual void BeforeVisitOutput(IActionOut actionOut)
 {
         
 }
コード例 #7
0
 public virtual void VisitOutput(IActionOut output)
 {
 }
コード例 #8
0
 public virtual void AfterVisitOutput(IActionOut actionIn)
 {
 }
コード例 #9
0
 public virtual void BeforeVisitOutput(IActionOut actionOut)
 {
 }
コード例 #10
0
 protected virtual void WriteActionOutput(TemplateContext _, IActionOut output)
 {
     if (output.ActionFieldInfo != null && output.ActionFieldInfo.IsReturn) return;
     if (output.ActionFieldInfo != null && output.ActionFieldInfo.IsDelegateMember) return;
     _._("{0} = {1}.{2}", output.VariableName, VariableName, output.Name);
     var variableReference = output.OutputTo<IContextVariable>();
     if (variableReference != null)
         _.CurrentStatements.Add(new CodeAssignStatement(new CodeSnippetExpression(variableReference.VariableName),
             new CodeSnippetExpression(output.VariableName)));
     var actionIn = output.OutputTo<IActionIn>();
     if (actionIn != null)
     {
         _.CurrentStatements.Add(new CodeAssignStatement(
             new CodeSnippetExpression(actionIn.VariableName),
             new CodeSnippetExpression(output.VariableName)));
     }
     var outputChildItem = output.OutputTo<OutputsChildItem>();
     if (outputChildItem != null)
     {
         _.CurrentStatements.Add(new CodeAssignStatement(new CodeSnippetExpression(outputChildItem.Name),
             new CodeSnippetExpression(output.VariableName)));
     }
 }