File: CaseChangingStream.py

package info (click to toggle)
antlr4 4.9.2-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 7,328 kB
  • sloc: java: 45,008; javascript: 1,121; xml: 1,077; python: 73; cs: 71; sh: 29; makefile: 9
file content (13 lines) | stat: -rw-r--r-- 329 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
class CaseChangingStream():
	def __init__(self, stream, upper):
		self._stream = stream
		self._upper = upper

	def __getattr__(self, name):
		return self._stream.__getattribute__(name)

	def LA(self, offset):
		c = self._stream.LA(offset)
		if c <= 0:
			return c
		return ord(chr(c).upper() if self._upper else chr(c).lower())