source: pyyaml/trunk/lib/yaml/tokens.py @ 116

Revision 116, 2.2 KB checked in by xi, 9 years ago (diff)

Back to work :). Rename markers to marks.

Line 
1
2class Token:
3    def __init__(self, start_mark, end_mark):
4        self.start_mark = start_mark
5        self.end_mark = end_mark
6    def __repr__(self):
7        attributes = [key for key in self.__dict__
8                if not key.endswith('_mark')]
9        attributes.sort()
10        arguments = ', '.join(['%s=%r' % (key, getattr(self, key))
11                for key in attributes])
12        return '%s(%s)' % (self.__class__.__name__, arguments)
13
14#class BOMToken(Token):
15#    id = '<byte order mark>'
16
17class DirectiveToken(Token):
18    id = '<directive>'
19    def __init__(self, name, value, start_mark, end_mark):
20        self.name = name
21        self.value = value
22        self.start_mark = start_mark
23        self.end_mark = end_mark
24
25class DocumentStartToken(Token):
26    id = '<document start>'
27
28class DocumentEndToken(Token):
29    id = '<document end>'
30
31class StreamEndToken(Token):
32    id = '<stream end>'
33
34class BlockSequenceStartToken(Token):
35    id = '<block sequence start>'
36
37class BlockMappingStartToken(Token):
38    id = '<block mapping start>'
39
40class BlockEndToken(Token):
41    id = '<block end>'
42
43class FlowSequenceStartToken(Token):
44    id = '['
45
46class FlowMappingStartToken(Token):
47    id = '{'
48
49class FlowSequenceEndToken(Token):
50    id = ']'
51
52class FlowMappingEndToken(Token):
53    id = '}'
54
55class KeyToken(Token):
56    id = '?'
57
58class ValueToken(Token):
59    id = ':'
60
61class BlockEntryToken(Token):
62    id = '-'
63
64class FlowEntryToken(Token):
65    id = ','
66
67class AliasToken(Token):
68    id = '<alias>'
69    def __init__(self, value, start_mark, end_mark):
70        self.value = value
71        self.start_mark = start_mark
72        self.end_mark = end_mark
73
74class AnchorToken(Token):
75    id = '<anchor>'
76    def __init__(self, value, start_mark, end_mark):
77        self.value = value
78        self.start_mark = start_mark
79        self.end_mark = end_mark
80
81class TagToken(Token):
82    id = '<tag>'
83    def __init__(self, value, start_mark, end_mark):
84        self.value = value
85        self.start_mark = start_mark
86        self.end_mark = end_mark
87
88class ScalarToken(Token):
89    id = '<scalar>'
90    def __init__(self, value, plain, start_mark, end_mark):
91        self.value = value
92        self.plain = plain
93        self.start_mark = start_mark
94        self.end_mark = end_mark
95
Note: See TracBrowser for help on using the repository browser.