Пример #1
0
 def test_integerLiteral(self):
     g = JavaGrammar()
     self._parseStringTest(
         g.literal(), '123',
         Schema.IntLiteral(format='decimal', numType='int', value='123'))
     self._parseStringTest(
         g.literal(), '123l',
         Schema.IntLiteral(format='decimal', numType='long', value='123'))
     self._parseStringTest(
         g.literal(), '123L',
         Schema.IntLiteral(format='decimal', numType='long', value='123'))
     self._parseStringFailTest(g.literal(), '12a')
     self._parseStringTest(
         g.literal(), '0x123abc',
         Schema.IntLiteral(format='hex', numType='int', value='0x123abc'))
     self._parseStringTest(
         g.literal(), '0x123abcl',
         Schema.IntLiteral(format='hex', numType='long', value='0x123abc'))
     self._parseStringTest(
         g.literal(), '0x123ABCL',
         Schema.IntLiteral(format='hex', numType='long', value='0x123ABC'))
     self._parseStringFailTest(g.literal(), '0x12g')
     self._parseStringTest(
         g.literal(), '0123',
         Schema.IntLiteral(format='oct', numType='int', value='0123'))
     self._parseStringTest(
         g.literal(), '0123l',
         Schema.IntLiteral(format='oct', numType='long', value='0123'))
     self._parseStringTest(
         g.literal(), '0123L',
         Schema.IntLiteral(format='oct', numType='long', value='0123'))
     self._parseStringFailTest(g.literal(), '012a')
     self._parseStringFailTest(g.literal(), '0128')
Пример #2
0
 def octIntLiteral(self):
     return Tokens.octalInteger.action(
         lambda input, begin, end, x, bindings: Schema.IntLiteral(
             format='oct', numType='int', value=x))
Пример #3
0
 def decimalLongLiteral(self):
     return (Tokens.decimalIntegerNoOctal +
             Suppress(Literal('l') | Literal('L'))).action(
                 lambda input, begin, end, x, bindings: Schema.IntLiteral(
                     format='decimal', numType='long', value=x[0]))
Пример #4
0
 def decimalIntLiteral(self):
     return Tokens.decimalIntegerNoOctal.action(
         lambda input, begin, end, x, bindings: Schema.IntLiteral(
             format='decimal', numType='int', value=x))