---
name: "__gnu_pbds::detail::ov_tree_node_it_"
section: "3cxx"
platform: "linux"
package: "libstdc++-12-doc"
version: "12.4.0-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/__gnu_pbds::detail::ov_tree_node_it_/3cxx"
---

# \_\_gnu\_pbds::detail::ov\_tree\_node\_it\_(3cxx)

Node reference.

## NAME

\_\_gnu\_pbds::detail::ov\_tree\_node\_it\_\< Value\_Type, Metadata\_Type, \_Alloc \> - Node reference.

## SYNOPSIS

`#include <node_iterators.hpp>`

Inherits **\_\_gnu\_pbds::detail::ov\_tree\_node\_const\_it\_\< Value\_Type, Metadata\_Type, \_Alloc \>**.

### Public Types

typedef **rebind\_traits**\< \_Alloc, typenameremove\_const\< Value\_Type \>::type \>::pointer **const\_reference**\
 typedef **trivial\_iterator\_difference\_type** **difference\_type**\
 typedef **trivial\_iterator\_tag** **iterator\_category**\
 typedef **rebind\_traits**\< \_Alloc, metadata\_type \>::const\_reference **metadata\_const\_reference**\
 typedef Metadata\_Type **metadata\_type**\
 typedef **rebind\_traits**\< \_Alloc, typenameremove\_const\< Value\_Type \>::type \>::pointer **reference**\
 typedef **rebind\_traits**\< \_Alloc, Value\_Type \>::pointer **value\_type**\

### Public Member Functions

**ov\_tree\_node\_it\_** (const\_pointer p\_nd=0, const\_pointer p\_begin\_nd=0, const\_pointer p\_end\_nd=0, const\_metadata\_pointer p\_metadata=0)\
 **ov\_tree\_node\_it\_** **get\_l\_child** () const\
 Returns the node reference associated with the left node.  metadata\_const\_reference **get\_metadata** () const\
 **ov\_tree\_node\_it\_** **get\_r\_child** () const\
 Returns the node reference associated with the right node.  bool **operator!=** (const **this\_type** &other) const\
 reference **operator\*** () const\
 Access.  bool **operator==** (const **this\_type** &other) const\

### Public Attributes

pointer **m\_p\_begin\_value**\
 pointer **m\_p\_end\_value**\
 const\_metadata\_pointer **m\_p\_metadata**\
 pointer **m\_p\_value**\

### Static Protected Member Functions

template\<typename Ptr \> static Ptr **mid\_pointer** (Ptr p\_begin, Ptr p\_end)\

## Detailed Description

### template\<typename Value\_Type, typename Metadata\_Type, typename \_Alloc\>

class \_\_gnu\_pbds::detail::ov\_tree\_node\_it\_\< Value\_Type, Metadata\_Type, \_Alloc \>"Node reference.

## Member Function Documentation

### template\<typename Value\_Type , typename Metadata\_Type , typename \_Alloc \> ov\_tree\_node\_it\_ \_\_gnu\_pbds::detail::ov\_tree\_node\_it\_\< Value\_Type, Metadata\_Type, \_Alloc \>::get\_l\_child () const` [inline]`

Returns the node reference associated with the left node.

### template\<typename Value\_Type , typename Metadata\_Type , typename \_Alloc \> ov\_tree\_node\_it\_ \_\_gnu\_pbds::detail::ov\_tree\_node\_it\_\< Value\_Type, Metadata\_Type, \_Alloc \>::get\_r\_child () const` [inline]`

Returns the node reference associated with the right node.

### template\<typename Value\_Type , typename Metadata\_Type , typename \_Alloc \> reference \_\_gnu\_pbds::detail::ov\_tree\_node\_it\_\< Value\_Type, Metadata\_Type, \_Alloc \>::operator\* () const` [inline]`

Access.

## Author

Generated automatically by Doxygen for libstdc++ from the source code.
