public BinaryExpressionSharpnode(BinaryExpressionSyntax syntax, string @operator) : base(syntax)
 {
     this._syntax  = syntax;
     this.Operator = @operator;
     this.Left     = RoslynToSharpnode.MapExpression(syntax.Left);
     this.Right    = RoslynToSharpnode.MapExpression(syntax.Right);
 }
예제 #2
0
 public ReturnStatementSharpnode(ReturnStatementSyntax stmt) : base(stmt)
 {
     if (stmt.Expression != null)
     {
         this.Expression = RoslynToSharpnode.MapExpression(stmt.Expression);
     }
 }
예제 #3
0
 public SimpleLocalDeclarationSharpnode(
     TypeSyntax typeSyntax,
     ExpressionSharpnode initialValue,
     VariableDeclaratorSyntax variable) : base(variable)
 {
     this.variable     = variable;
     this.typeSyntax   = typeSyntax;
     this.initialValue = initialValue;
 }
예제 #4
0
        private void Init(VariableDeclarationSyntax syntax)
        {
            var typeSyntax = syntax.Type;

            foreach (var variable in syntax.Variables)
            {
                ExpressionSharpnode initialValue = null;
                if (variable.Initializer != null)
                {
                    initialValue = RoslynToSharpnode.MapExpression(variable.Initializer.Value);
                }
                SimpleLocalDeclarationSharpnode declaration =
                    new SimpleLocalDeclarationSharpnode(
                        typeSyntax,
                        initialValue,
                        variable)
                ;
                this.Declarations.Add(declaration);
            }
        }
예제 #5
0
 public InvocationSeqTakeDrop(bool doTake, bool doDrop, ExpressionSyntax methodGroup, ExpressionSharpnode methodGroupSharpnode)
 {
     this._doTake              = doTake;
     this._doDrop              = doDrop;
     this.MethodGroup          = methodGroup;
     this.MethodGroupSharpnode = methodGroupSharpnode;
 }
예제 #6
0
 public ParenthesizedExpressionSharpnode(ParenthesizedExpressionSyntax syntax) : base(syntax)
 {
     this.InnerExpression = RoslynToSharpnode.MapExpression(syntax.Expression);
 }
 public GotoStatementSharpnode(GotoStatementSyntax stmt) : base(stmt)
 {
     this.Identifier = RoslynToSharpnode.MapExpression(stmt.Expression);
 }
 public ConditionalExpressionSharpnode(ConditionalExpressionSyntax syntax) : base(syntax)
 {
     this.Condition = RoslynToSharpnode.MapExpression(syntax.Condition);
     this.WhenTrue  = RoslynToSharpnode.MapExpression(syntax.WhenTrue);
     this.WhenFalse = RoslynToSharpnode.MapExpression(syntax.WhenFalse);
 }
 public InvocationSeqContains(ExpressionSyntax methodGroup, ExpressionSharpnode methodGroupSharpnode)
 {
     this.MethodGroup          = methodGroup;
     this.MethodGroupSharpnode = methodGroupSharpnode;
 }
예제 #10
0
 public PrefixUnaryExpressionSharpnode(PrefixUnaryExpressionSyntax syntax, string @operator) : base(syntax)
 {
     this.Operator   = @operator;
     this.Expression = RoslynToSharpnode.MapExpression(syntax.Operand);
 }
 public InvocationStandardMethod(ExpressionSyntax methodGroup, ExpressionSharpnode methodGroupSharpnode, SymbolInfo method)
 {
     this.methodGroup          = methodGroup;
     this.methodGroupSharpnode = methodGroupSharpnode;
     this._method = method;
 }
예제 #12
0
 public DoStatementSharpnode(DoStatementSyntax stmt) : base(stmt)
 {
     this.Condition = RoslynToSharpnode.MapExpression(stmt.Condition);
     this.Statement = RoslynToSharpnode.MapStatement(stmt.Statement);
 }
 public SimpleAssignmentExpressionSharpnode(AssignmentExpressionSyntax syntax) : base(syntax)
 {
     this.Left  = RoslynToSharpnode.MapExpression(syntax.Left);
     this.Right = RoslynToSharpnode.MapExpression(syntax.Right);
 }
 public MemberAccessExpressionSharpnode(MemberAccessExpressionSyntax syntax) : base(syntax)
 {
     this.Expression = syntax;
     this.Container  = RoslynToSharpnode.MapExpression(syntax.Expression);
 }