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 |
Scope< T >::PushToken | token |
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 |
Referenced by operator=(), operator=(), ScopedBinding(), and ScopedBinding().
|
inline |
|
inline |
|
inline |
|
delete |
References ScopedBinding().
|
inlinenoexcept |
Definition at line 353 of file Scope.h.
References ScopedBinding().
|
inline |
|
delete |
References ScopedBinding().
|
delete |
References ScopedBinding().
Scope<T>* Halide::Internal::ScopedBinding< T >::scope = nullptr |
Definition at line 327 of file Scope.h.
Referenced by bound(), ScopedBinding(), ScopedBinding(), and ~ScopedBinding().
Scope<T>::PushToken Halide::Internal::ScopedBinding< T >::token |
Definition at line 328 of file Scope.h.
Referenced by ScopedBinding(), ScopedBinding(), and ~ScopedBinding().