Blackmire.CppImplWalker.VisitExpressionStatement C# (CSharp) Method

VisitExpressionStatement() public method

public VisitExpressionStatement ( Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionStatementSyntax node ) : void
node Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionStatementSyntax
return void
        public override void VisitExpressionStatement(ExpressionStatementSyntax node)
        {
            // hack: Console.WriteLine
              var s = node.Expression.GetText().ToString().Trim();
              if (s.StartsWith("Console.WriteLine"))
              {
            var ise = node.Expression as InvocationExpressionSyntax;
            var args = ise.ArgumentList;
            cb.AppendWithIndent("cout << ")
              .Append(args.GetText().ToString().Trim('(', ')').Replace(" + ", " << ").Replace("+", " << "))
              .AppendLine(" << endl;");
              }
              else if (s.StartsWith("Environment.Exit"))
              {
            var ise = node.Expression as InvocationExpressionSyntax;
            var args = ise.ArgumentList;
            cb.AppendWithIndent("exit(")
              .Append(args.GetText().ToString().Trim('(', ')'))
              .AppendLine(");");
              }
              else
              {
            base.VisitExpressionStatement(node);
              }
        }