Loading...
Searching...
No Matches
Dune::TypeTree::NodeInterface Struct Reference
dune-typetree » Nodes

Interface for nodes in a dune-typetree. More...

`#include <dune/typetree/nodeinterface.hh>`

## Public Types

typedef ImplementationDefined | NodeTag
| The type tag that describes what kind of node this is.
typedef ImplementationDefined | NodeStorage
| container type to pass around a collection of children

## Static Public Member Functions

static auto | degree ()
| Number of children of this node in the dune-typetree.

## Static Public Attributes

static const bool | isLeaf = implementationDefined
| Whether this is a leaf node in a dune-typetree.
static const bool | isPower = implementationDefined
| Whether this is a power node in the dune-typetree.
static const bool | isComposite = implementationDefined
| Whether this is a composite node in the dune-typetree.

## Detailed Description

Interface for nodes in a dune-typetree.

This class cannot be used itself, it is for documentation purposes only.

Note
  Constructor signatures are explicitly not specified by this interface.
  In addition, every node in a tree must be derived from one of the node base classes LeafNode, PowerNode, DynamicPowerNodeTag, or CompositeNode, or from a base class for a yet-to-be-defined new node type.

## Member Typedef Documentation

## NodeStorage

typedef ImplementationDefined Dune::TypeTree::NodeInterface::NodeStorage

container type to pass around a collection of children

Note
  This typedef is not present for leaf nodes.

## NodeTag

typedef ImplementationDefined Dune::TypeTree::NodeInterface::NodeTag

The type tag that describes what kind of node this is.

One of LeafNodeTag, PowerNodeTag or CompositeNodeTag. Other tags are also possible when new kinds of nodes are defined.

## Member Function Documentation

## degree()

auto Dune::TypeTree::NodeInterface::degree | ( |  | ) |

static

Number of children of this node in the dune-typetree.

Note
  Static as long as the the information is known at compilation time, otherwise non-static.

Returns
  Dune::index_constant<k> if static, std::size_t otherwise

## Member Data Documentation

## isComposite

const bool Dune::TypeTree::NodeInterface::isComposite = implementationDefined

static

Whether this is a composite node in the dune-typetree.

## isLeaf

const bool Dune::TypeTree::NodeInterface::isLeaf = implementationDefined

static

Whether this is a leaf node in a dune-typetree.

## isPower

const bool Dune::TypeTree::NodeInterface::isPower = implementationDefined

static

Whether this is a power node in the dune-typetree.

The documentation for this struct was generated from the following file:

- nodeinterface.hh