55 isl_ctx*
get()
const {
58 explicit operator bool()
const {
59 return ctx_ !=
nullptr;
72template<
typename T, T* (*FreeFn)(T*)>
113 if (ptr_ !=
nullptr) {
119 explicit operator bool()
const {
120 return ptr_ !=
nullptr;
Symbol assumptions for reasoning about bounds, constness, and evolution.
Map from symbols to their assumptions.
Definition assumptions.h:313
IslCtx & operator=(const IslCtx &)=delete
IslCtx(IslCtx &&other) noexcept
IslCtx(const IslCtx &)=delete
IslCtx & operator=(IslCtx &&other) noexcept
isl_ctx * get() const
Definition polyhedral.h:55
Move-only RAII owner of a reference-counted ISL object.
Definition polyhedral.h:73
IslHandle(IslHandle &&other) noexcept
Definition polyhedral.h:86
T * get() const
Borrow the raw pointer without transferring ownership.
Definition polyhedral.h:99
void reset(T *p=nullptr)
Free the current object (if any) and adopt p.
Definition polyhedral.h:112
IslHandle()
Definition polyhedral.h:75
IslHandle(const IslHandle &)=delete
IslHandle(T *ptr)
Definition polyhedral.h:77
~IslHandle()
Definition polyhedral.h:79
IslHandle & operator=(const IslHandle &)=delete
T * release()
Relinquish ownership to the caller (e.g.
Definition polyhedral.h:105
IslHandle & operator=(IslHandle &&other) noexcept
Definition polyhedral.h:89
std::vector< Expression > MultiExpression
Vector of symbolic expressions for multi-dimensional operations.
Definition symbolic.h:89
SymEngine::RCP< const SymEngine::Symbol > Symbol
Reference-counted pointer to a SymEngine Symbol.
Definition symbolic.h:71
Definition polyhedral.h:35
bool equal_on_domain(const MultiExpression &f, const MultiExpression &g, const Symbol indvar, const Assumptions &assums)
Decides whether two access expressions denote the same cell at every point of the domain implied by a...
IslHandle< isl_space, isl_space_free > IslSpace
Definition polyhedral.h:129
IslHandle< isl_set, isl_set_free > IslSet
Definition polyhedral.h:128
IslHandle< isl_map, isl_map_free > IslMap
Definition polyhedral.h:127
Definition assumptions.h:55
Symbolic system for integer-based symbol analysis.