Loading...
Searching...
No Matches
Visitor.h File Reference

Contains the AX AST Node Visitor, providing default and customizable traversal and visitation methods on a AST hierarchy. Using the visitor pattern is the recommended way to implement custom operations on AST nodes. More...

`#include "AST.h"`
`#include "Tokens.h"`
`#include <openvdb/version.h>`
`#include <type_traits>`

Go to the source code of this file.

## Classes

struct | Visitor< Derived, ConstVisit >

The Visitor class uses the Curiously Recursive Template Pattern (CRTP) to provide a customizable interface intended to be used by clients wishing to perform custom operations over an AX Abstract Syntax Tree (AST). By default the Visitor implements simple traversal of all nodes, ensuring that each node on a well formed AST is visited at least once. By deriving from the Visitor, users are able to customize this default behavior and further manually override specific node behavior to their needs. The function options at the top of visitor can be overridden using CRTP to control the prior default behavior, with the ability to override the traverse() and visit() methods for the latter more granular control. More...

## Namespaces

namespace | openvdb
namespace | openvdb::v10_0
namespace | openvdb::v10_0::ax
namespace | openvdb::v10_0::ax::ast

## Detailed Description

Contains the AX AST Node Visitor, providing default and customizable traversal and visitation methods on a AST hierarchy. Using the visitor pattern is the recommended way to implement custom operations on AST nodes.

Authors
  Nick Avramoussis