Skip to content
Snippets Groups Projects

Add assertion that headers follow the pattern /"..."/ or /<...>/

Merged Stephan Seitz requested to merge seitz/pystencils:assertion-headers into master
2 files
+ 44
0
Compare changes
  • Side-by-side
  • Inline
Files
2
import re
from collections import namedtuple
from typing import Set
@@ -24,6 +25,9 @@ except ImportError:
__all__ = ['generate_c', 'CustomCodeNode', 'PrintNode', 'get_headers', 'CustomSympyPrinter']
HEADER_REGEX = re.compile(r'^[<"].*[">]$')
KERNCRAFT_NO_TERNARY_MODE = False
@@ -112,6 +116,9 @@ def get_headers(ast_node: Node) -> Set[str]:
if isinstance(g, Node):
headers.update(get_headers(g))
for h in headers:
assert HEADER_REGEX.match(h), f'header /{h}/ does not follow the pattern /"..."/ or /<...>/'
return sorted(headers)
Loading