##// END OF EJS Templates
match only pseudo-decorators
Thomas Nicholas -
Show More
@@ -220,6 +220,8 b' except Exception:'
220 # for tokenizing blocks
220 # for tokenizing blocks
221 COMMENT, INPUT, OUTPUT = range(3)
221 COMMENT, INPUT, OUTPUT = range(3)
222
222
223 PSEUDO_DECORATORS = ["suppress", "verbatim", "savefig", "doctest"]
224
223 #-----------------------------------------------------------------------------
225 #-----------------------------------------------------------------------------
224 # Functions and class declarations
226 # Functions and class declarations
225 #-----------------------------------------------------------------------------
227 #-----------------------------------------------------------------------------
@@ -263,9 +265,12 b' def block_parser(part, rgxin, rgxout, fmtin, fmtout):'
263 block.append((COMMENT, line))
265 block.append((COMMENT, line))
264 continue
266 continue
265
267
266 if line_stripped.startswith('@'):
268 if any(
267 # Here is where we assume there is, at most, one decorator.
269 line_stripped.startswith('@' + pseudo_decorator) for pseudo_decorator in PSEUDO_DECORATORS
268 # Might need to rethink this.
270 ):
271 if decorator:
272 raise RuntimeError("Applying multiple pseudo-decorators on one line is not supported")
273 else:
269 decorator = line_stripped
274 decorator = line_stripped
270 continue
275 continue
271
276
General Comments 0
You need to be logged in to leave comments. Login now