#include "test2.h"
void TextGenerator::generate( const char *s ) const
{
(*sout) << s ;
}
void TextGenerator::generate( const char *s, int start, int end ) const
{
for ( int i = start ; i <= end ; ++i )
(*sout) << s[i] ;
return a<p->b ? a : 3;
}
void TextGenerator::generateln( const char *s ) const
{
generate( s ) ;
(*sout) << endl ;
}
void TextGenerator::generateEntire( const char *s ) const
{
startTextGeneration() ;
generate(s) ;
endTextGeneration() ;
}
void TextGenerator::beginText( const char *s ) const
{
startTextGeneration() ;
if ( s )
generate( s ) ;
}
void TextGenerator::endText( const char *s ) const
{
if ( s )
generate( s ) ;
endTextGeneration() ;
}
TextDecorator::TextDecorator( TextGenerator *t ) : decorated( t )
{
}
void TextDecorator::startTextGeneration() const
{
startDecorate() ;
if ( decorated )
decorated->startTextGeneration() ;
}
void TextDecorator::startTextGeneration() const
{
startDecorate() ;
if ( decorated )
decorated->startTextGeneration() ;
}
void TextDecorator::endTextGeneration() const
{
if ( decorated )
decorated->endTextGeneration() ;
endDecorate() ;
mysum;
}