[#llvm-interleave-0e] = xref:llvm.adoc[llvm]::interleave :relfileprefix: ../ :mrdocs: `interleave` overloads == Synopses Declared in `<llvm/ADT/STLExtras.h>` Apply `each_fn` to every element of `c,` invoking `between_fn` between them. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< typename Container, typename UnaryFunctor, typename NullaryFunctor> requires !std::is_constructible<StringRef, UnaryFunctor>::value && !std::is_constructible<StringRef, NullaryFunctor>::value void xref:llvm/interleave-06f.adoc[interleave]( Container const& c, UnaryFunctor each_fn, NullaryFunctor between_fn); ---- [.small]#xref:llvm/interleave-06f.adoc[_» more..._]# Interleave elements of `c` into `os` using `separator.` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< typename Container, typename StreamT, typename T = /* implementation-defined */> void xref:llvm/interleave-067.adoc[interleave]( Container const& c, StreamT& os, xref:llvm/StringRef.adoc[StringRef] const& separator); ---- [.small]#xref:llvm/interleave-067.adoc[_» more..._]# Apply `each_fn` to each element in []`begin,` `end),` with `between_fn` between. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< typename ForwardIterator, typename UnaryFunctor, typename NullaryFunctor> requires !std::is_constructible<StringRef, UnaryFunctor>::value && !std::is_constructible<StringRef, NullaryFunctor>::value void xref:llvm/interleave-03.adoc[interleave]( ForwardIterator begin, ForwardIterator end, UnaryFunctor each_fn, NullaryFunctor between_fn); ---- [.small]#xref:llvm/interleave-03.adoc[_» more..._]# Interleave elements of `c` into `os` using `each_fn` and `separator.` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< typename Container, typename UnaryFunctor, typename StreamT, typename T = /* implementation-defined */> void xref:llvm/interleave-0a.adoc[interleave]( Container const& c, StreamT& os, UnaryFunctor each_fn, xref:llvm/StringRef.adoc[StringRef] const& separator); ---- [.small]#xref:llvm/interleave-0a.adoc[_» more..._]# == Parameters [cols="1,4"] |=== | Name| Description | *c* | Container whose elements are visited. | *each_fn* | Functor applied to each element. | *between_fn* | Functor invoked between consecutive elements. | *os* | Output stream receiving the interleaved text. | *separator* | Text inserted between elements. | *begin* | Iterator to the first element. | *end* | Iterator past the last element. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#