Files
@ 686166c7d5bc
Branch filter:
Location: Diana/src/diana/sgfParser/__init__.py - annotation
686166c7d5bc
599 B
text/x-python
added more whitespace
686166c7d5bc 686166c7d5bc 686166c7d5bc 686166c7d5bc 686166c7d5bc 616c96178973 616c96178973 616c96178973 616c96178973 686166c7d5bc 686166c7d5bc 686166c7d5bc 686166c7d5bc 686166c7d5bc 616c96178973 616c96178973 686166c7d5bc 616c96178973 616c96178973 616c96178973 616c96178973 686166c7d5bc 686166c7d5bc 686166c7d5bc 686166c7d5bc 616c96178973 616c96178973 686166c7d5bc 616c96178973 616c96178973 616c96178973 616c96178973 | def skipWhitespace(s, start):
i = start
while i < len(s) and s[i].isspace():
i+=1
return i
def strRowCol(s, i):
k = 0
(r, c) = (0, 0)
for (r, line) in enumerate(s.splitlines(True)):
c = i-k
if k+len(line) > i:
break
else:
k += len(line)
return (r+1, c+1)
class ParserError(Exception):
def __init__(self, msg, s, i):
self.msg = msg
(self.row, self.col) = strRowCol(s, i)
self.context = s[i:i+16]
def __str__(self):
return "{0} at row {1}, col {2}, got '{3}...' instead".format(self.msg, self.row, self.col, self.context)
class ParserWarning(ParserError):
pass
|