elliptic.Kernel.TreeBuilder module

class elliptic.Kernel.TreeBuilder.TreeBuild(template_manager, libraries=None, include_dirs=None)[source]

Bases: object

Class responsible for processing a DSL tree and consolidating the generated Cython code.

Parameters:
  • template_manager (TemplateManagerBase) – A template manager object.
  • dsl_contract – A dsl contract object.
  • libraries (Optional[List[str]]) – A list containing any libraries that should be statically linked.
  • include_dirs (Optional[List[str]]) – A list containing extra include directories. Cypyler adds numpy includes by default.
build(root)[source]

Processes the DSL tree and returns the built Cython module.

Parameters:root (Expression) – The DSL tree root.
Return type:module