Mercurial > public > mercurial-scm > hg
comparison mercurial/windows.py @ 31644:f80d9ddc40f3
py3: abuse r'' to preserve str-ness of literals passed to __setattr__()
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Sun, 26 Mar 2017 16:33:12 +0900 |
parents | 52361c4f4dac |
children | 87f293edabb6 |
comparison
equal
deleted
inserted
replaced
31643:6ceb3c4c3ab6 | 31644:f80d9ddc40f3 |
---|---|
59 OPNONE = 0 | 59 OPNONE = 0 |
60 OPREAD = 1 | 60 OPREAD = 1 |
61 OPWRITE = 2 | 61 OPWRITE = 2 |
62 | 62 |
63 def __init__(self, fp): | 63 def __init__(self, fp): |
64 object.__setattr__(self, '_fp', fp) | 64 object.__setattr__(self, r'_fp', fp) |
65 object.__setattr__(self, '_lastop', 0) | 65 object.__setattr__(self, r'_lastop', 0) |
66 | 66 |
67 def __getattr__(self, name): | 67 def __getattr__(self, name): |
68 return getattr(self._fp, name) | 68 return getattr(self._fp, name) |
69 | 69 |
70 def __setattr__(self, name, value): | 70 def __setattr__(self, name, value): |
72 | 72 |
73 def _noopseek(self): | 73 def _noopseek(self): |
74 self._fp.seek(0, os.SEEK_CUR) | 74 self._fp.seek(0, os.SEEK_CUR) |
75 | 75 |
76 def seek(self, *args, **kwargs): | 76 def seek(self, *args, **kwargs): |
77 object.__setattr__(self, '_lastop', self.OPNONE) | 77 object.__setattr__(self, r'_lastop', self.OPNONE) |
78 return self._fp.seek(*args, **kwargs) | 78 return self._fp.seek(*args, **kwargs) |
79 | 79 |
80 def write(self, d): | 80 def write(self, d): |
81 if self._lastop == self.OPREAD: | 81 if self._lastop == self.OPREAD: |
82 self._noopseek() | 82 self._noopseek() |
83 | 83 |
84 object.__setattr__(self, '_lastop', self.OPWRITE) | 84 object.__setattr__(self, r'_lastop', self.OPWRITE) |
85 return self._fp.write(d) | 85 return self._fp.write(d) |
86 | 86 |
87 def writelines(self, *args, **kwargs): | 87 def writelines(self, *args, **kwargs): |
88 if self._lastop == self.OPREAD: | 88 if self._lastop == self.OPREAD: |
89 self._noopeseek() | 89 self._noopeseek() |
90 | 90 |
91 object.__setattr__(self, '_lastop', self.OPWRITE) | 91 object.__setattr__(self, r'_lastop', self.OPWRITE) |
92 return self._fp.writelines(*args, **kwargs) | 92 return self._fp.writelines(*args, **kwargs) |
93 | 93 |
94 def read(self, *args, **kwargs): | 94 def read(self, *args, **kwargs): |
95 if self._lastop == self.OPWRITE: | 95 if self._lastop == self.OPWRITE: |
96 self._noopseek() | 96 self._noopseek() |
97 | 97 |
98 object.__setattr__(self, '_lastop', self.OPREAD) | 98 object.__setattr__(self, r'_lastop', self.OPREAD) |
99 return self._fp.read(*args, **kwargs) | 99 return self._fp.read(*args, **kwargs) |
100 | 100 |
101 def readline(self, *args, **kwargs): | 101 def readline(self, *args, **kwargs): |
102 if self._lastop == self.OPWRITE: | 102 if self._lastop == self.OPWRITE: |
103 self._noopseek() | 103 self._noopseek() |
104 | 104 |
105 object.__setattr__(self, '_lastop', self.OPREAD) | 105 object.__setattr__(self, r'_lastop', self.OPREAD) |
106 return self._fp.readline(*args, **kwargs) | 106 return self._fp.readline(*args, **kwargs) |
107 | 107 |
108 def readlines(self, *args, **kwargs): | 108 def readlines(self, *args, **kwargs): |
109 if self._lastop == self.OPWRITE: | 109 if self._lastop == self.OPWRITE: |
110 self._noopseek() | 110 self._noopseek() |
111 | 111 |
112 object.__setattr__(self, '_lastop', self.OPREAD) | 112 object.__setattr__(self, r'_lastop', self.OPREAD) |
113 return self._fp.readlines(*args, **kwargs) | 113 return self._fp.readlines(*args, **kwargs) |
114 | 114 |
115 def posixfile(name, mode='r', buffering=-1): | 115 def posixfile(name, mode='r', buffering=-1): |
116 '''Open a file with even more POSIX-like semantics''' | 116 '''Open a file with even more POSIX-like semantics''' |
117 try: | 117 try: |