Halide 22.0.0 Halide compiler and libraries

Classes | Namespaces | Functions
Scope.h File Reference

Defines the Scope class, which is used for keeping track of names in a scope while traversing IR. More...

`#include <iostream>`
`#include <map>`
`#include <stack>`
`#include <string>`
`#include <utility>`
`#include <vector>`
`#include "Debug.h"`
`#include "Error.h"`

Go to the source code of this file.

## Classes
class | Halide::Internal::SmallStack< T >
| A stack which can store one item very efficiently. More...
class | Halide::Internal::SmallStack< void >
class | Halide::Internal::Scope< T >
| A common pattern when traversing Halide IR is that you need to keep track of stuff when you find a Let or a LetStmt, and that it should hide previous values with the same name until you leave the Let or LetStmt nodes This class helps with that. More...
struct | Halide::Internal::Scope< T >::PushToken
class | Halide::Internal::Scope< T >::const_iterator
| Iterate through the scope. More...
struct | Halide::Internal::ScopedBinding< T >
| Helper class for pushing/popping Scope<> values, to allow for early-exit in Visitor/Mutators that preserves correctness. More...
struct | Halide::Internal::ScopedBinding< void >

## Namespaces
namespace | Halide
| This file defines the class FunctionDAG, which is our representation of a Halide pipeline, and contains methods to using Halide's bounds tools to query properties of it.
namespace | Halide::Internal

## Functions
template<typename T >
std::ostream & | Halide::Internal::operator<< (std::ostream &stream, const Scope< T > &s)

## Detailed Description

Defines the Scope class, which is used for keeping track of names in a scope while traversing IR.

Definition in file Scope.h.