|
|
-
- 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 = '<directive>'
- 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 = '<document start>'
-
- class DocumentEndToken(Token):
- id = '<document end>'
-
- class StreamStartToken(Token):
- id = '<stream start>'
- 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 = '<stream end>'
-
- class BlockSequenceStartToken(Token):
- id = '<block sequence start>'
-
- class BlockMappingStartToken(Token):
- id = '<block mapping start>'
-
- class BlockEndToken(Token):
- id = '<block end>'
-
- 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 = '<alias>'
- 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 = '<anchor>'
- 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 = '<tag>'
- 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 = '<scalar>'
- 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
-
|