示例#1
0
    def check_syntax(self, f_str):
        self.clearParseActions()

        if self.debug_mode:
            self.addDebugActions()

        try:
            FORMULA.parseString(f_str)
        except ParseException, e:
            return (False, str(e))
示例#2
0
    def check_syntax(self, f_str):
        self.clearParseActions()

        if self.debug_mode:
            self.addDebugActions()

        try:
            FORMULA.parseString(f_str)
        except ParseException, e:
            return (False, str(e))
示例#3
0
    def parseFormula(self, state_machine, f_str):
        self.sm = state_machine
        self.solver = self.sm.solver

        self.connective_stack = []
        self.eq_symbol_stack = []
        self.expr_stack = []

        self.setupParseActions()
        FORMULA.parseString(f_str)

        return self.expr_stack.pop()
示例#4
0
    def parseFormula(self, state_machine, f_str):
        self.sm = state_machine
        self.solver = self.sm.solver

        self.connective_stack = []
        self.eq_symbol_stack = []
        self.expr_stack = []

        self.setupParseActions()
        FORMULA.parseString(f_str)

        return self.expr_stack.pop()
示例#5
0
 def testFORMULA(self):
     FORMULA.parseString('EAX <= EBX ^ ECX = 50')
     FORMULA.parseString('EAX <= EBX')
     FORMULA.parseString('EAX = 0x50')
     #FORMULA.parseString('(EAX = 0x50)')
     self.assertRaises(ParseException, 
             FORMULA.parseString, '50 <= EAX')