microfmt
Zero-allocation C++ formatting for constrained environments
Loading...
Searching...
No Matches
Public Member Functions | List of all members
microfmt::transform_sink Class Reference

#include <styled_sink.hpp>

Public Member Functions

constexpr transform_sink (sink target RELOCO_LIFETIME_CAPTURE_BY_THIS, char_transform t=char_transform::none) noexcept
 
 transform_sink (const transform_sink &)=delete
 
transform_sink & operator= (const transform_sink &)=delete
 
 transform_sink (transform_sink &&) noexcept=default
 
transform_sink & operator= (transform_sink &&) noexcept=default
 
sink as_sink () &noexcept RELOCO_LIFETIMEBOUND
 
void set_transform (char_transform t) noexcept
 
void put (char c) noexcept
 
void write (microfmt::string_view sv) noexcept
 

Detailed Description

A sink adapter that transforms characters before writing to its target.

Case transforms affect ASCII letters only. char_transform::sanitize_ascii replaces ASCII control characters except newline, carriage return, and tab with a period.

Constructor & Destructor Documentation

◆ transform_sink() [1/3]

constexpr microfmt::transform_sink::transform_sink ( sink target  RELOCO_LIFETIME_CAPTURE_BY_THIS,
char_transform  t = char_transform::none 
)
inlineexplicitconstexprnoexcept

Create a transform adapter that forwards to target.

◆ transform_sink() [2/3]

microfmt::transform_sink::transform_sink ( const transform_sink &  )
delete

◆ transform_sink() [3/3]

microfmt::transform_sink::transform_sink ( transform_sink &&  )
defaultnoexcept

Member Function Documentation

◆ as_sink()

sink microfmt::transform_sink::as_sink ( ) &
inlinenoexcept

Return a type-erased sink suitable for format_to.

◆ operator=() [1/2]

transform_sink & microfmt::transform_sink::operator= ( const transform_sink &  )
delete

◆ operator=() [2/2]

transform_sink & microfmt::transform_sink::operator= ( transform_sink &&  )
defaultnoexcept

◆ put()

void microfmt::transform_sink::put ( char  c)
inlinenoexcept

◆ set_transform()

void microfmt::transform_sink::set_transform ( char_transform  t)
inlinenoexcept

Change the transformation applied to subsequent output.

◆ write()

void microfmt::transform_sink::write ( microfmt::string_view  sv)
inlinenoexcept

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