Commit a54ea07e authored by Tom Niget's avatar Tom Niget

Handle import aliases

parent 0a0cdfd7
# coding: utf-8
from typon import is_cpp
import sys
from sys import stdout as truc
test = (2 + 3) * 4
glob = 5
......
......@@ -386,14 +386,19 @@ class BlockVisitor(NodeVisitor):
if alias.name == "typon":
yield ""
else:
yield f'#include "python/{alias.name}.hpp"'
yield from self.import_module(alias.name)
#raise NotImplementedError(node)
def import_module(self, name: str) -> Iterable[str]:
yield f'#include "python/{name}.hpp"'
def visit_ImportFrom(self, node: ast.ImportFrom) -> Iterable[str]:
if node.module == "typon":
yield ""
else:
raise NotImplementedError(node)
yield from self.import_module(node.module)
for alias in node.names:
yield f"auto& {alias.asname or alias.name} = {node.module}.{alias.name};"
def visit_FunctionDef(self, node: ast.FunctionDef) -> Iterable[str]:
templ, args = self.process_args(node.args)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment