ORIGINAL
Loading...
Searching...
No Matches
original::transformStream< TYPE > Class Template Reference

Ordered sequence of transformation operations. More...

#include <transformStream.h>

Collaboration diagram for original::transformStream< TYPE >:
Collaboration graph

Public Member Functions

void operator() (TYPE &t)
 Applies all transformations sequentially.
 
 ~transformStream ()=default
 Virtual destructor for the transformStream class.
 
transformStreamoperator+ (const transform< TYPE > &t)
 Appends single transformation to stream.
 
transformStreamoperator+ (const transformStream &ts)
 Merges another transformation stream.
 

Protected Member Functions

 transformStream ()
 Protected constructor for factory pattern.
 

Related Symbols

(Note that these are not member symbols.)

template<typename T>
transformStream< T > operator+ (const transform< T > &t1, const transform< T > &t2)
 Creates new stream from two transformations.
 
template<typename T>
transformStream< T > operator+ (const transform< T > &t, const transformStream< T > &ots)
 Creates new stream from transformation and existing stream.
 

Detailed Description

template<typename TYPE>
class original::transformStream< TYPE >

Ordered sequence of transformation operations.

Template Parameters
TYPEType of data to be transformed

Manages a chain of transformation objects that will be applied in sequence. Features:

  • Composable through + operator
  • Shared ownership of transformations
  • Lazy evaluation model

Constructor & Destructor Documentation

◆ transformStream()

template<typename TYPE>
original::transformStream< TYPE >::transformStream ( )
explicitprotected

Protected constructor for factory pattern.

Note
Use operator+ for stream creation

Member Function Documentation

◆ operator()()

template<typename TYPE>
void original::transformStream< TYPE >::operator() ( TYPE & t)

Applies all transformations sequentially.

Parameters
tData to be transformed (modified in-place)

◆ operator+() [1/2]

template<typename TYPE>
auto original::transformStream< TYPE >::operator+ ( const transform< TYPE > & t)

Appends single transformation to stream.

Parameters
tTransformation to add
Returns
Reference to modified stream

◆ operator+() [2/2]

template<typename TYPE>
auto original::transformStream< TYPE >::operator+ ( const transformStream< TYPE > & ts)

Merges another transformation stream.

Parameters
tsStream to concatenate
Returns
Reference to modified stream

Friends And Related Symbol Documentation

◆ operator+ [1/2]

template<typename TYPE>
template<typename T>
transformStream< T > operator+ ( const transform< T > & t,
const transformStream< T > & ots )
friend

Creates new stream from transformation and existing stream.

Template Parameters
TData type
Parameters
tTransformation to prepend
otsOriginal stream
Returns
New stream applying t then ots's transformations

◆ operator+ [2/2]

template<typename TYPE>
template<typename T>
transformStream< T > operator+ ( const transform< T > & t1,
const transform< T > & t2 )
friend

Creates new stream from two transformations.

Template Parameters
TData type
Parameters
t1First transformation
t2Second transformation
Returns
New stream applying t1 then t2

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