class Token(object):
def __init__(self, start_mark, end_mark):
self.start_mark = start_mark
self.end_mark = end_mark
def __repr__(self):
attributes = [key
for key
in self.__dict__
if not key.endswith(
'_mark')]
attributes.sort()
arguments =
', '.join([
'%s=%r' % (key, getattr(self, key))
for key
in attributes])
return '%s(%s)' % (self.__class__.__name__, arguments)
#class BOMToken(Token):
# id = '<byte order mark>'
class DirectiveToken(Token):
id =
''
def __init__(self, name, value, start_mark, end_mark):
self.name = name
self.value = value
self.start_mark = start_mark
self.end_mark = end_mark
class DocumentStartToken(Token):
id =
''
class DocumentEndToken(Token):
id =
''
class StreamStartToken(Token):
id =
''
def __init__(self, start_mark=
None, end_mark=
None,
encoding=
None):
self.start_mark = start_mark
self.end_mark = end_mark
self.encoding = encoding
class StreamEndToken(Token):
id =
''
class BlockSequenceStartToken(Token):
id =
''
class BlockMappingStartToken(Token):
id =
''
class BlockEndToken(Token):
id =
''
class FlowSequenceStartToken(Token):
id =
'['
class FlowMappingStartToken(Token):
id =
'{'
class FlowSequenceEndToken(Token):
id =
']'
class FlowMappingEndToken(Token):
id =
'}'
class KeyToken(Token):
id =
'?'
class ValueToken(Token):
id =
':'
class BlockEntryToken(Token):
id =
'-'
class FlowEntryToken(Token):
id =
','
class AliasToken(Token):
id =
''
def __init__(self, value, start_mark, end_mark):
self.value = value
self.start_mark = start_mark
self.end_mark = end_mark
class AnchorToken(Token):
id =
''
def __init__(self, value, start_mark, end_mark):
self.value = value
self.start_mark = start_mark
self.end_mark = end_mark
class TagToken(Token):
id =
''
def __init__(self, value, start_mark, end_mark):
self.value = value
self.start_mark = start_mark
self.end_mark = end_mark
class ScalarToken(Token):
id =
''
def __init__(self, value, plain, start_mark, end_mark, style=
None):
self.value = value
self.plain = plain
self.start_mark = start_mark
self.end_mark = end_mark
self.style = style