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

# std::indirectly\_writable(3cxx)

Requirements for writing a value into an iterator's referenced object.

## NAME

std::indirectly\_writable - Requirements for writing a value into an iterator's referenced object.

## SYNOPSIS

`#include <iterator>`

## Concept definition

```
template<typename _Out, typename _Tp>
concept std::indirectly_writable =  requires(_Out&& __o, _Tp&& __t)
      {
        *__o = std::forward<_Tp>(__t);
        *std::forward<_Out>(__o) = std::forward<_Tp>(__t);
        const_cast<const iter_reference_t<_Out>&&>(*__o)
          = std::forward<_Tp>(__t);
        const_cast<const iter_reference_t<_Out>&&>(*std::forward<_Out>(__o))
          = std::forward<_Tp>(__t);
      }
```

## Detailed Description

Requirements for writing a value into an iterator's referenced object.

## Author

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