�
�c@s6ddklZddkZdefd��YZdS(i�(t_Nt
repositorycBs5eZd�Zd�Zd�Zd�Zd�ZRS(cCs\||ijotSn|d}x3|iD](}|i|�o|t|�Sq,q,WtS(s�tell whether repo supports named capability.
return False if not supported.
if boolean capability, return True.
if string capability, return string.t=(tcapabilitiestTruet
startswithtlentFalse(tselftnametname_eqtcap((s!/sys/lib/python/mercurial/repo.pytcapable
s
cCs7|i|�p#titd�||f��ndS(s9raise an exception if the given capability is not presents?cannot %s; remote repository does not support the %r capabilityN(RterrortCapabilityErrorR(RR tpurpose((s!/sys/lib/python/mercurial/repo.pyt
requirecaps cCstS(N(R(R((s!/sys/lib/python/mercurial/repo.pytlocal!scCs
|i�S(N(R(R((s!/sys/lib/python/mercurial/repo.pytcancopy$scCs4|i�}|id�o||Sn|d|S(Nt/(turltendswith(RtpathR((s!/sys/lib/python/mercurial/repo.pytrjoin's(t__name__t
__module__RRRRR(((s!/sys/lib/python/mercurial/repo.pyRs
(ti18nRR
tobjectR(((s!/sys/lib/python/mercurial/repo.pys<module> s
|