mercurial/context.py
changeset 3336 e44eadc92ec4
parent 3313 6c68bc1e7873
child 3337 b02e60097bbe
equal deleted inserted replaced
3335:9061613c1593 3336:e44eadc92ec4
    70         """return contexts for each child changeset"""
    70         """return contexts for each child changeset"""
    71         c = self._repo.changelog.children(self._node)
    71         c = self._repo.changelog.children(self._node)
    72         return [ changectx(self._repo, x) for x in c ]
    72         return [ changectx(self._repo, x) for x in c ]
    73 
    73 
    74     def filenode(self, path):
    74     def filenode(self, path):
    75         if hasattr(self, "_manifest"):
    75         if '_manifest' in self.__dict__:
    76             try:
    76             try:
    77                 return self._manifest[path]
    77                 return self._manifest[path]
    78             except KeyError:
    78             except KeyError:
    79                 raise repo.LookupError(_("'%s' not found in manifest") % path)
    79                 raise repo.LookupError(_("'%s' not found in manifest") % path)
    80         node, flag = self._repo.manifest.find(self._changeset[0], path)
    80         node, flag = self._repo.manifest.find(self._changeset[0], path)
   138         elif name == '_changeid':
   138         elif name == '_changeid':
   139             self._changeid = self._filelog.linkrev(self._filenode)
   139             self._changeid = self._filelog.linkrev(self._filenode)
   140             return self._changeid
   140             return self._changeid
   141         elif name == '_filenode':
   141         elif name == '_filenode':
   142             try:
   142             try:
   143                 if hasattr(self, "_fileid"):
   143                 if '_fileid' in self.__dict__:
   144                     self._filenode = self._filelog.lookup(self._fileid)
   144                     self._filenode = self._filelog.lookup(self._fileid)
   145                 else:
   145                 else:
   146                     self._filenode = self._changectx.filenode(self._path)
   146                     self._filenode = self._changectx.filenode(self._path)
   147             except revlog.RevlogError, inst:
   147             except revlog.RevlogError, inst:
   148                 raise repo.LookupError(str(inst))
   148                 raise repo.LookupError(str(inst))
   174     def filerev(self): return self._filerev
   174     def filerev(self): return self._filerev
   175     def filenode(self): return self._filenode
   175     def filenode(self): return self._filenode
   176     def filelog(self): return self._filelog
   176     def filelog(self): return self._filelog
   177 
   177 
   178     def rev(self):
   178     def rev(self):
   179         if hasattr(self, "_changectx"):
   179         if '_changectx' in self.__dict__:
   180             return self._changectx.rev()
   180             return self._changectx.rev()
   181         return self._filelog.linkrev(self._filenode)
   181         return self._filelog.linkrev(self._filenode)
   182 
   182 
   183     def node(self): return self._changectx.node()
   183     def node(self): return self._changectx.node()
   184     def user(self): return self._changectx.user()
   184     def user(self): return self._changectx.user()
   437         opening a new filelog'''
   437         opening a new filelog'''
   438         return filectx(self._repo, self._repopath, fileid=fileid,
   438         return filectx(self._repo, self._repopath, fileid=fileid,
   439                        filelog=self._filelog)
   439                        filelog=self._filelog)
   440 
   440 
   441     def rev(self):
   441     def rev(self):
   442         if hasattr(self, "_changectx"):
   442         if '_changectx' in self.__dict__:
   443             return self._changectx.rev()
   443             return self._changectx.rev()
   444         return self._filelog.linkrev(self._filenode)
   444         return self._filelog.linkrev(self._filenode)
   445 
   445 
   446     def data(self): return self._repo.wread(self._path)
   446     def data(self): return self._repo.wread(self._path)
   447     def renamed(self):
   447     def renamed(self):