CIRCT
19.0.0git
|
AcceleratorConnections, Accelerators, and Manifests must all share a context. More...
#include <Context.h>
Public Member Functions | |
std::optional< const Type * > | getType (Type::ID id) const |
Resolve a type id to the type. More... | |
void | registerType (Type *type) |
Register a type with the context. Takes ownership of the pointer type. More... | |
std::unique_ptr< AcceleratorConnection > | connect (std::string backend, std::string connection) |
Connect to an accelerator backend. More... | |
Private Types | |
using | TypeCache = std::map< Type::ID, std::unique_ptr< Type > > |
Private Attributes | |
TypeCache | types |
AcceleratorConnections, Accelerators, and Manifests must all share a context.
It owns all the types, uniquifying them.
|
private |
std::unique_ptr< AcceleratorConnection > Context::connect | ( | std::string | backend, |
std::string | connection | ||
) |
Connect to an accelerator backend.
Definition at line 27 of file Context.cpp.
References esi::registry::connect().
Referenced by PYBIND11_MODULE().
Resolve a type id to the type.
Definition at line 34 of file Context.h.
References types.
Referenced by esi::Manifest::Impl::getType().
void Context::registerType | ( | Type * | type | ) |
Register a type with the context. Takes ownership of the pointer type.
Definition at line 20 of file Context.cpp.
References esi::Type::getID(), and types.
|
private |
Definition at line 49 of file Context.h.
Referenced by getType(), and registerType().