Ejemplo n.º 1
0
 //assert_stmt: 'assert' expression [',' expression]
 private AssertStatement ParseAssertStmt()
 {
     Eat(TokenKind.KeywordAssert);
     string whiteSpace = _tokenWhiteSpace;
     var start = GetStart();
     Expression expr = ParseExpression();
     Expression message = null;
     string commaWhiteSpace = null;
     if (MaybeEat(TokenKind.Comma)) {
         commaWhiteSpace = _tokenWhiteSpace;
         message = ParseExpression();
     }
     AssertStatement ret = new AssertStatement(expr, message);
     if (_verbatim) {
         AddPreceedingWhiteSpace(ret, whiteSpace);
         AddSecondPreceedingWhiteSpace(ret, commaWhiteSpace);
     }
     ret.SetLoc(start, GetEnd());
     return ret;
 }
Ejemplo n.º 2
0
 // AssertStatement
 public override bool Walk(AssertStatement node)
 {
     return ShouldWalkWorker(node);
 }
Ejemplo n.º 3
0
        public override bool Walk(AssertStatement node)
        {
            // check if the assert statement contains any isinstance calls.
            CallExpression callExpr = node.Test as CallExpression;

            var isInstanceNames = GetIsInstanceNamesAndExpressions(node.Test);
            if (isInstanceNames != null) {
                // we need to introduce a new scope
                PushIsInstanceScope(node, isInstanceNames, _curSuite);
            } else {
                UpdateChildRanges(node);
            }
            return base.Walk(node);
        }
Ejemplo n.º 4
0
 public override void PostWalk(AssertStatement node)
 {
     PostWalkWorker(node);
 }