2021-10-31 | Paul Boddie | raw annotate files changeset graph | Introduced a dedicated integer type based on ssize_t. This allows integers to be used for sizes and lengths in native and low-level operations whilst also supporting their storage in the same amount of space as a pointer, thus avoiding the inflation of attributes that might occur if a larger type were chosen. |
1 from pyparser.automata import DFA, DEFAULT 2 3 def test_states(): 4 d = DFA([{"\x00": 1}, {"\x01": 0}], [False, True]) 5 assert d.states == "\x01\xff\xff\x00" 6 assert d.defaults == "\xff\xff" 7 assert d.max_char == 2 8 9 d = DFA([{"\x00": 1}, {DEFAULT: 0}], [False, True]) 10 assert d.states == "\x01\x00" 11 assert d.defaults == "\xff\x00" 12 assert d.max_char == 1