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