Ignore:
Timestamp:
02/19/06 17:17:28 (9 years ago)
Author:
xi
Message:

Parser is done. Add iterator interfaces for Scanner and Parser.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/pyyaml3000/lib/yaml/tokens.py

    r48 r51  
    44        self.start_marker = start_marker 
    55        self.end_marker = end_marker 
     6    def __repr__(self): 
     7        attributes = [key for key in self.__dict__ 
     8                if not key.endswith('_marker')] 
     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>' 
    616 
    717class DirectiveToken(Token): 
    8     code = '<directive>' 
     18    id = '<directive>' 
    919    def __init__(self, name, value, start_marker, end_marker): 
    1020        self.name = name 
     
    1424 
    1525class DocumentStartToken(Token): 
    16     code = '<document start>' 
     26    id = '<document start>' 
    1727 
    1828class DocumentEndToken(Token): 
    19     code = '<document end>' 
     29    id = '<document end>' 
    2030 
    2131class StreamEndToken(Token): 
    22     code = '<stream end>' 
     32    id = '<stream end>' 
    2333 
    2434class BlockSequenceStartToken(Token): 
    25     code = '<block sequence start>' 
     35    id = '<block sequence start>' 
    2636 
    2737class BlockMappingStartToken(Token): 
    28     code = '<block mapping end>' 
     38    id = '<block mapping end>' 
    2939 
    3040class BlockEndToken(Token): 
    31     code = '<block end>' 
     41    id = '<block end>' 
    3242 
    3343class FlowSequenceStartToken(Token): 
    34     code = '[' 
     44    id = '[' 
    3545 
    3646class FlowMappingStartToken(Token): 
    37     code = '{' 
     47    id = '{' 
    3848 
    3949class FlowSequenceEndToken(Token): 
    40     code = ']' 
     50    id = ']' 
    4151 
    4252class FlowMappingEndToken(Token): 
    43     code = '}' 
     53    id = '}' 
    4454 
    4555class KeyToken(Token): 
    46     code = '?' 
     56    id = '?' 
    4757 
    4858class ValueToken(Token): 
    49     code = ':' 
     59    id = ':' 
    5060 
    51 class EntryToken(Token): 
    52     code = '- or ,' 
     61class BlockEntryToken(Token): 
     62    id = '-' 
     63 
     64class FlowEntryToken(Token): 
     65    id = ',' 
    5366 
    5467class AliasToken(Token): 
    55     code = '<alias>' 
     68    id = '<alias>' 
    5669    def __init__(self, value, start_marker, end_marker): 
    5770        self.value = value 
     
    6073 
    6174class AnchorToken(Token): 
    62     code = '<anchor>' 
     75    id = '<anchor>' 
    6376    def __init__(self, value, start_marker, end_marker): 
    6477        self.value = value 
     
    6780 
    6881class TagToken(Token): 
    69     code = '<tag>' 
     82    id = '<tag>' 
    7083    def __init__(self, value, start_marker, end_marker): 
    7184        self.value = value 
     
    7487 
    7588class ScalarToken(Token): 
    76     code = '<scalar>' 
     89    id = '<scalar>' 
    7790    def __init__(self, value, plain, start_marker, end_marker): 
    7891        self.value = value 
Note: See TracChangeset for help on using the changeset viewer.