152 def modified(mctx, x): |
152 def modified(mctx, x): |
153 """File that is modified according to :hg:`status`. |
153 """File that is modified according to :hg:`status`. |
154 """ |
154 """ |
155 # i18n: "modified" is a keyword |
155 # i18n: "modified" is a keyword |
156 getargs(x, 0, 0, _("modified takes no arguments")) |
156 getargs(x, 0, 0, _("modified takes no arguments")) |
157 s = mctx.status().modified |
157 s = set(mctx.status().modified) |
158 return [f for f in mctx.subset if f in s] |
158 return [f for f in mctx.subset if f in s] |
159 |
159 |
160 @predicate('added()', callstatus=True) |
160 @predicate('added()', callstatus=True) |
161 def added(mctx, x): |
161 def added(mctx, x): |
162 """File that is added according to :hg:`status`. |
162 """File that is added according to :hg:`status`. |
163 """ |
163 """ |
164 # i18n: "added" is a keyword |
164 # i18n: "added" is a keyword |
165 getargs(x, 0, 0, _("added takes no arguments")) |
165 getargs(x, 0, 0, _("added takes no arguments")) |
166 s = mctx.status().added |
166 s = set(mctx.status().added) |
167 return [f for f in mctx.subset if f in s] |
167 return [f for f in mctx.subset if f in s] |
168 |
168 |
169 @predicate('removed()', callstatus=True) |
169 @predicate('removed()', callstatus=True) |
170 def removed(mctx, x): |
170 def removed(mctx, x): |
171 """File that is removed according to :hg:`status`. |
171 """File that is removed according to :hg:`status`. |
172 """ |
172 """ |
173 # i18n: "removed" is a keyword |
173 # i18n: "removed" is a keyword |
174 getargs(x, 0, 0, _("removed takes no arguments")) |
174 getargs(x, 0, 0, _("removed takes no arguments")) |
175 s = mctx.status().removed |
175 s = set(mctx.status().removed) |
176 return [f for f in mctx.subset if f in s] |
176 return [f for f in mctx.subset if f in s] |
177 |
177 |
178 @predicate('deleted()', callstatus=True) |
178 @predicate('deleted()', callstatus=True) |
179 def deleted(mctx, x): |
179 def deleted(mctx, x): |
180 """Alias for ``missing()``. |
180 """Alias for ``missing()``. |
181 """ |
181 """ |
182 # i18n: "deleted" is a keyword |
182 # i18n: "deleted" is a keyword |
183 getargs(x, 0, 0, _("deleted takes no arguments")) |
183 getargs(x, 0, 0, _("deleted takes no arguments")) |
184 s = mctx.status().deleted |
184 s = set(mctx.status().deleted) |
185 return [f for f in mctx.subset if f in s] |
185 return [f for f in mctx.subset if f in s] |
186 |
186 |
187 @predicate('missing()', callstatus=True) |
187 @predicate('missing()', callstatus=True) |
188 def missing(mctx, x): |
188 def missing(mctx, x): |
189 """File that is missing according to :hg:`status`. |
189 """File that is missing according to :hg:`status`. |
190 """ |
190 """ |
191 # i18n: "missing" is a keyword |
191 # i18n: "missing" is a keyword |
192 getargs(x, 0, 0, _("missing takes no arguments")) |
192 getargs(x, 0, 0, _("missing takes no arguments")) |
193 s = mctx.status().deleted |
193 s = set(mctx.status().deleted) |
194 return [f for f in mctx.subset if f in s] |
194 return [f for f in mctx.subset if f in s] |
195 |
195 |
196 @predicate('unknown()', callstatus=True) |
196 @predicate('unknown()', callstatus=True) |
197 def unknown(mctx, x): |
197 def unknown(mctx, x): |
198 """File that is unknown according to :hg:`status`. These files will only be |
198 """File that is unknown according to :hg:`status`. These files will only be |
199 considered if this predicate is used. |
199 considered if this predicate is used. |
200 """ |
200 """ |
201 # i18n: "unknown" is a keyword |
201 # i18n: "unknown" is a keyword |
202 getargs(x, 0, 0, _("unknown takes no arguments")) |
202 getargs(x, 0, 0, _("unknown takes no arguments")) |
203 s = mctx.status().unknown |
203 s = set(mctx.status().unknown) |
204 return [f for f in mctx.subset if f in s] |
204 return [f for f in mctx.subset if f in s] |
205 |
205 |
206 @predicate('ignored()', callstatus=True) |
206 @predicate('ignored()', callstatus=True) |
207 def ignored(mctx, x): |
207 def ignored(mctx, x): |
208 """File that is ignored according to :hg:`status`. These files will only be |
208 """File that is ignored according to :hg:`status`. These files will only be |
209 considered if this predicate is used. |
209 considered if this predicate is used. |
210 """ |
210 """ |
211 # i18n: "ignored" is a keyword |
211 # i18n: "ignored" is a keyword |
212 getargs(x, 0, 0, _("ignored takes no arguments")) |
212 getargs(x, 0, 0, _("ignored takes no arguments")) |
213 s = mctx.status().ignored |
213 s = set(mctx.status().ignored) |
214 return [f for f in mctx.subset if f in s] |
214 return [f for f in mctx.subset if f in s] |
215 |
215 |
216 @predicate('clean()', callstatus=True) |
216 @predicate('clean()', callstatus=True) |
217 def clean(mctx, x): |
217 def clean(mctx, x): |
218 """File that is clean according to :hg:`status`. |
218 """File that is clean according to :hg:`status`. |
219 """ |
219 """ |
220 # i18n: "clean" is a keyword |
220 # i18n: "clean" is a keyword |
221 getargs(x, 0, 0, _("clean takes no arguments")) |
221 getargs(x, 0, 0, _("clean takes no arguments")) |
222 s = mctx.status().clean |
222 s = set(mctx.status().clean) |
223 return [f for f in mctx.subset if f in s] |
223 return [f for f in mctx.subset if f in s] |
224 |
224 |
225 def func(mctx, a, b): |
225 def func(mctx, a, b): |
226 if a[0] == 'symbol' and a[1] in symbols: |
226 if a[0] == 'symbol' and a[1] in symbols: |
227 funcname = a[1] |
227 funcname = a[1] |