| Index: tools/lexer_generator/transition_keys.py
|
| diff --git a/tools/lexer_generator/transition_keys.py b/tools/lexer_generator/transition_keys.py
|
| index b18cd1085122a856e9c1146f311cd8560b011219..1d9fbfbec5b3dda7dac57b8c0608f5a60a95c5a3 100644
|
| --- a/tools/lexer_generator/transition_keys.py
|
| +++ b/tools/lexer_generator/transition_keys.py
|
| @@ -175,6 +175,20 @@ class TransitionKey:
|
| def __eq__(self, other):
|
| return isinstance(other, self.__class__) and self.__ranges == other.__ranges
|
|
|
| + def to_code(self):
|
| + code = 'if ('
|
| + first = True
|
| + for r in self.__ranges:
|
| + if not first:
|
| + code += ' || '
|
| + if r[0] == r[1]:
|
| + code += 'c == %s' % r[0]
|
| + else:
|
| + code += '(c >= %s && c <= %s)' % (r[0], r[1])
|
| + first = False
|
| + code += ')'
|
| + return code
|
| +
|
| __printable_cache = {
|
| ord('\t') : '\\t',
|
| ord('\n') : '\\n',
|
|
|