Halide
|
Helper class for pushing/popping Scope<> values, to allow for early-exit in Visitor/Mutators that preserves correctness. More...
#include <Scope.h>
Public Member Functions | |
ScopedBinding ()=default | |
ScopedBinding (Scope< T > &s, const std::string &n, T value) | |
ScopedBinding (bool condition, Scope< T > &s, const std::string &n, const T &value) | |
bool | bound () const |
~ScopedBinding () | |
ScopedBinding (const ScopedBinding &that)=delete | |
ScopedBinding (ScopedBinding &&that) noexcept | |
void | operator= (const ScopedBinding &that)=delete |
void | operator= (ScopedBinding &&that)=delete |
Public Attributes | |
Scope< T > * | scope = nullptr |
std::string | name |
Helper class for pushing/popping Scope<> values, to allow for early-exit in Visitor/Mutators that preserves correctness.
Note that this name can be a bit confusing, since there are two "scopes" involved here:
|
default |
|
inline |
Definition at line 278 of file Scope.h.
References Halide::Internal::ScopedBinding< T >::name, and Halide::Internal::ScopedBinding< T >::scope.
|
inline |
Definition at line 283 of file Scope.h.
References Halide::Internal::ScopedBinding< T >::name, and Halide::Internal::ScopedBinding< T >::scope.
|
inline |
Definition at line 294 of file Scope.h.
References Halide::Internal::ScopedBinding< T >::name, and Halide::Internal::ScopedBinding< T >::scope.
|
delete |
|
inlinenoexcept |
|
inline |
Definition at line 290 of file Scope.h.
References Halide::Internal::ScopedBinding< T >::scope.
|
delete |
|
delete |
Scope<T>* Halide::Internal::ScopedBinding< T >::scope = nullptr |
Definition at line 273 of file Scope.h.
Referenced by Halide::Internal::ScopedBinding< T >::bound(), Halide::Internal::ScopedBinding< T >::ScopedBinding(), Halide::Internal::ScopedBinding< void >::ScopedBinding(), Halide::Internal::ScopedBinding< T >::~ScopedBinding(), and Halide::Internal::ScopedBinding< void >::~ScopedBinding().
std::string Halide::Internal::ScopedBinding< T >::name |