comparison mercurial/revlogutils/flagutil.py @ 42991:eb5048f8c533

flagprocessors: make `processflagsread` a module level function One more steps toward removing the mixin. Differential Revision: https://phab.mercurial-scm.org/D6819
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Sat, 07 Sep 2019 00:11:58 +0200
parents a04b2c010d03
children dff95420480f
comparison
equal deleted inserted replaced
42990:a04b2c010d03 42991:eb5048f8c533
94 msg = ('_processflag(...) use the specialized variant') 94 msg = ('_processflag(...) use the specialized variant')
95 util.nouideprecwarn(msg, '5.2', stacklevel=2) 95 util.nouideprecwarn(msg, '5.2', stacklevel=2)
96 if raw: 96 if raw:
97 return text, self._processflagsraw(text, flags) 97 return text, self._processflagsraw(text, flags)
98 elif operation == 'read': 98 elif operation == 'read':
99 return self._processflagsread(text, flags) 99 return processflagsread(self, text, flags)
100 else: # write operation 100 else: # write operation
101 return processflagswrite(self, text, flags) 101 return processflagswrite(self, text, flags)
102
103 def _processflagsread(self, text, flags):
104 """Inspect revision data flags and applies read transformations defined
105 by registered flag processors.
106
107 ``text`` - the revision data to process
108 ``flags`` - the revision flags
109 ``raw`` - an optional argument describing if the raw transform should be
110 applied.
111
112 This method processes the flags in the order (or reverse order if
113 ``operation`` is 'write') defined by REVIDX_FLAGS_ORDER, applying the
114 flag processors registered for present flags. The order of flags defined
115 in REVIDX_FLAGS_ORDER needs to be stable to allow non-commutativity.
116
117 Returns a 2-tuple of ``(text, validatehash)`` where ``text`` is the
118 processed text and ``validatehash`` is a bool indicating whether the
119 returned text should be checked for hash integrity.
120 """
121 return _processflagsfunc(self, text, flags, 'read')
122 102
123 def _processflagsraw(self, text, flags): 103 def _processflagsraw(self, text, flags):
124 """Inspect revision data flags to check is the content hash should be 104 """Inspect revision data flags to check is the content hash should be
125 validated. 105 validated.
126 106
154 processed text and ``validatehash`` is a bool indicating whether the 134 processed text and ``validatehash`` is a bool indicating whether the
155 returned text should be checked for hash integrity. 135 returned text should be checked for hash integrity.
156 """ 136 """
157 return _processflagsfunc(revlog, text, flags, 'write', 137 return _processflagsfunc(revlog, text, flags, 'write',
158 sidedata=sidedata)[:2] 138 sidedata=sidedata)[:2]
139
140 def processflagsread(revlog, text, flags):
141 """Inspect revision data flags and applies read transformations defined
142 by registered flag processors.
143
144 ``text`` - the revision data to process
145 ``flags`` - the revision flags
146 ``raw`` - an optional argument describing if the raw transform should be
147 applied.
148
149 This method processes the flags in the order (or reverse order if
150 ``operation`` is 'write') defined by REVIDX_FLAGS_ORDER, applying the
151 flag processors registered for present flags. The order of flags defined
152 in REVIDX_FLAGS_ORDER needs to be stable to allow non-commutativity.
153
154 Returns a 2-tuple of ``(text, validatehash)`` where ``text`` is the
155 processed text and ``validatehash`` is a bool indicating whether the
156 returned text should be checked for hash integrity.
157 """
158 return _processflagsfunc(revlog, text, flags, 'read')
159 159
160 def _processflagsfunc(revlog, text, flags, operation, sidedata=None): 160 def _processflagsfunc(revlog, text, flags, operation, sidedata=None):
161 """internal function to process flag on a revlog 161 """internal function to process flag on a revlog
162 162
163 This function is private to this module, code should never needs to call it 163 This function is private to this module, code should never needs to call it