Changeset 2963:90d5e340b272 in livinglogic.python.xist

Show
Ignore:
Timestamp:
09/21/07 14:12:30 (12 years ago)
Author:
Walter Doerwald <walter@…>
Branch:
newparser
Message:

Merge functionalit of LLParser.register() and LLParser.begin()

Now the user has to pass the application to begin(). end() will
automatically deregister the application again.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • src/ll/xist/parsers.py

    r2961 r2963  
    3333        self.application = None 
    3434 
    35     def register(self, application): 
     35    def begin(self, application): 
    3636        self.application = application 
    3737 
    38     def begin(self): 
    39         pass 
    40  
    4138    def end(self): 
    42         pass 
     39        self.application = None 
    4340 
    4441    def feed(self, data, final): 
     
    5350        self._parser = None 
    5451 
    55     def begin(self): 
     52    def begin(self, application): 
     53        LLParser.begin(self, application) 
    5654        self._decoder = codecs.getincrementaldecoder("xml")(self.encoding) 
    5755        if self._parser is not None: 
     
    6462 
    6563    def end(self): 
     64        LLParser.end(self) 
    6665        self._parser.close() 
    6766        if self._parser is not None: 
     
    111110        self._transcode = transcode 
    112111 
    113     def begin(self): 
     112    def begin(self, application): 
     113        LLParser.begin(self, application) 
    114114        self._parser = expat.ParserCreate(self.encoding) 
    115115        self._parser.buffer_text = True 
     
    127127 
    128128    def end(self): 
     129        LLParser.end(self) 
    129130        self._parser = None 
    130131        self._encoder = None 
     
    377378        else: 
    378379            parser = self.saxparser 
    379         parser.register(self) 
    380380        self.base = url.URL(base) 
    381381        # XIST nodes do not have a parent link, therefore we have to store the 
     
    386386        # the stack will be our document root. 
    387387        self._nesting = [ (xsc.Frag(), self.prefixes) ] 
    388         parser.begin() 
     388        parser.begin(self) 
    389389        return parser 
    390390 
    391391    def _end(self, parser): 
    392         parser.register(None) 
    393392        parser.end() 
    394393        return self._nesting[0][0]