LLVM 22.0.0git
llvm::InterleavedRange< Range > Class Template Reference

Format object class for interleaved ranges. More...

#include "llvm/Support/InterleavedRange.h"

Public Member Functions

 InterleavedRange (const Range &R, StringRef Separator, StringRef Prefix, StringRef Suffix)
std::string str () const
 operator std::string () const

Friends

template<typename OStream>
OStream & operator<< (OStream &OS, const InterleavedRange &Interleaved)

Detailed Description

template<typename Range>
class llvm::InterleavedRange< Range >

Format object class for interleaved ranges.

Supports specifying the separator and, optionally, the prefix and suffix to be printed surrounding the range. Uses the operator '<<' of the range element type for printing. The range type itself does not have to have an '<<' operator defined.

Definition at line 34 of file InterleavedRange.h.

Constructor & Destructor Documentation

◆ InterleavedRange()

template<typename Range>
llvm::InterleavedRange< Range >::InterleavedRange ( const Range & R,
StringRef Separator,
StringRef Prefix,
StringRef Suffix )
inline

Definition at line 41 of file InterleavedRange.h.

References Range.

Referenced by operator<<.

Member Function Documentation

◆ operator std::string()

template<typename Range>
llvm::InterleavedRange< Range >::operator std::string ( ) const
inline

Definition at line 63 of file InterleavedRange.h.

References str().

◆ str()

template<typename Range>
std::string llvm::InterleavedRange< Range >::str ( ) const
inline

Definition at line 55 of file InterleavedRange.h.

References llvm::raw_ostream::flush().

Referenced by operator std::string().

◆ operator<<

template<typename Range>
template<typename OStream>
OStream & operator<< ( OStream & OS,
const InterleavedRange< Range > & Interleaved )
friend

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