我正在对 ReviewBoard (RBtools) 进行自定义修改;但是,我似乎无法理解 Python 在这一步隐含地在做什么。
我试图了解ReviewBoardServer
它的值在哪里设置self.info.path
。
我通过调试器并跟踪它method check_api_version
在线
self.root_resource = root_resource
在此语句之前,我们有self.info
as None
,但它很快变为SVNRepositoryInfo
上面一行之后的 a。
上面的行没有设置该行中的类字段self.info
。我猜 Python 正在做一些允许它self._info
通过设置来填充的东西self.root_resource
?这个对吗?如果是这样,我在哪里可以找到有关此的更多信息?
作为参考,init 方法如下所示:
185 class ReviewBoardServer(object):
186 """
187 An instance of a Review Board server.
188 """
189 def __init__(self, url, info, cookie_file):
190 self.url = url
191 if self.url[-1] != '/':
192 self.url += '/'
193 self._info = info
194 self._server_info = None
195 self.capabilities = None
196 self.root_resource = None
197 self.deprecated_api = False
198 self.rb_version = "0.0.0.0"
199 self.cookie_file = cookie_file
200 self.cookie_jar = cookielib.MozillaCookieJar(self.cookie_file)
201 self.deprecated_api = False
202 self.root_resource = None
作为参考,具体文件托管在下面的 Github 上: https ://github.com/reviewboard/rbtools/blob/release-0.4.3/rbtools/postreview.py