Package dk.brics.string.stringoperations

Examples of dk.brics.string.stringoperations.AssertInLanguage


        public void caseStaticInvokeExpr(StaticInvokeExpr v) {
            SootMethodRef m = v.getMethodRef();
            if (m.getSignature().equals("<java.lang.Character: boolean isDigit(char)>")) {
              Variable base = getArgument(v, 0);
              if (expected == true) {
                makeUnaryAssertion(base, new AssertInLanguage(Basic.getUnicodeDigits()));
              } else {
                makeUnaryAssertion(base, new AssertInLanguage(Basic.getUnicodeDigits().complement()));
              }
            }
            else if (m.getSignature().equals("<java.lang.Character: boolean isLetter(char)>")) {
              Variable base = getArgument(v, 0);
              if (expected == true) {
                makeUnaryAssertion(base, new AssertInLanguage(Basic.getUnicodeLetters()));
              } else {
                makeUnaryAssertion(base, new AssertInLanguage(Basic.getUnicodeLetters().complement()));
              }
            }
            else if (m.getSignature().equals("<java.lang.Character: boolean isLetterOrDigit(char)>")) {
              Variable base = getArgument(v, 0);
              if (expected == true) {
                makeUnaryAssertion(base, new AssertInLanguage(Basic.getUnicodeLettersAndDigits()));
              } else {
                makeUnaryAssertion(base, new AssertInLanguage(Basic.getUnicodeLettersAndDigits().complement()));
              }
            }
            else if (m.getSignature().equals("<java.lang.Character: boolean isLowerCase(char)>")) {
              Variable base = getArgument(v, 0);
              if (expected == true) {
                makeUnaryAssertion(base, new AssertInLanguage(Basic.getUnicodeLowerCase()));
              } else {
                makeUnaryAssertion(base, new AssertInLanguage(Basic.getUnicodeLowerCase().complement()));
              }
            }
            else if (m.getSignature().equals("<java.lang.Character: boolean isTitleCase(char)>")) {
              Variable base = getArgument(v, 0);
              if (expected == true) {
                makeUnaryAssertion(base, new AssertInLanguage(Basic.getUnicodeTitleCase()));
              } else {
                makeUnaryAssertion(base, new AssertInLanguage(Basic.getUnicodeTitleCase().complement()));
              }
            }
            else if (m.getSignature().equals("<java.lang.Character: boolean isUpperCase(char)>")) {
              Variable base = getArgument(v, 0);
              if (expected == true) {
                makeUnaryAssertion(base, new AssertInLanguage(Basic.getUnicodeUpperCase()));
              } else {
                makeUnaryAssertion(base, new AssertInLanguage(Basic.getUnicodeUpperCase().complement()));
              }
            }
            else if (m.getSignature().equals("<java.lang.Character: boolean isSpaceChar(char)>")) {
              Variable base = getArgument(v, 0);
              if (expected == true) {
                makeUnaryAssertion(base, new AssertInLanguage(Basic.getUnicodeSpaceChars()));
              } else {
                makeUnaryAssertion(base, new AssertInLanguage(Basic.getUnicodeSpaceChars().complement()));
              }
            }
            else if (m.getSignature().equals("<java.lang.Character: boolean isWhitespace(char)>")) {
              Variable base = getArgument(v, 0);
              if (expected == true) {
                makeUnaryAssertion(base, new AssertInLanguage(Basic.getUnicodeWhitespace()));
              } else {
                makeUnaryAssertion(base, new AssertInLanguage(Basic.getUnicodeWhitespace().complement()));
              }
            }
        }
View Full Code Here


        @Override
        public void caseLocal(Local v) {
          // assert the variable itself in case it is used (important for switch statements on a char)
          if (expected >= Character.MIN_VALUE && expected <= Character.MAX_VALUE) {
            if (relation == Relation.EQUAL) {
              makeUnaryAssertion(context.getExpressionVariable(v), new AssertInLanguage(Automaton.makeChar((char)expected)));
            }
            if (relation == Relation.NOT_EQUAL) {
              makeUnaryAssertion(context.getExpressionVariable(v), new AssertInLanguage(Automaton.makeChar((char)expected).complement()));
            }
          }
         
          // backtrack to find more assertions
            builder.startBranch();
View Full Code Here

TOP

Related Classes of dk.brics.string.stringoperations.AssertInLanguage

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.