// @topic S-0314-09-01-30 friend functions (C/C++)
// @brief class Container implementation

#include "container.h"

Container::Container( char a, char b, char c, char d )
{
    data[ 0 ] = a;
    data[ 1 ] = b;
    data[ 2 ] = c;
    data[ 3 ] = d;
}

void print_data( Container& container )
{
    //for ( int idx = 0; idx < container.DEFAULT_CONTAINER_SIZE; ++idx ) {
    //    std::cout << container.data[ idx ] << " ";
    //}
    std::cout << container;
}

void print_data( Container* container )
{
    for ( int idx = 0; idx < container->DEFAULT_CONTAINER_SIZE; ++idx ) {
        std::cout << container->data[ idx ] << " ";
    }
    std::cout << *container;
}

std::ostream& operator<<( std::ostream& stream, Container& container )
{
    for ( int idx = 0; idx < container.DEFAULT_CONTAINER_SIZE; ++idx ) {
        stream << container.data[ idx ] << " ";
    }

    return stream;
}