diff options
Diffstat (limited to 'ACE/TAO/tests/Sequence_Unit_Tests/mock_array.cpp')
-rw-r--r-- | ACE/TAO/tests/Sequence_Unit_Tests/mock_array.cpp | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/ACE/TAO/tests/Sequence_Unit_Tests/mock_array.cpp b/ACE/TAO/tests/Sequence_Unit_Tests/mock_array.cpp new file mode 100644 index 00000000000..b9b7e1f35fa --- /dev/null +++ b/ACE/TAO/tests/Sequence_Unit_Tests/mock_array.cpp @@ -0,0 +1,49 @@ +/** + * $Id$ + * + * @author Carlos O'Ryan + */ +#include "mock_array.hpp" + +my_array_slice * +TAO::Array_Traits<my_array,my_array_slice,my_array_tag>::alloc() +{ + return new my_array; +} + +void +TAO::Array_Traits<my_array,my_array_slice,my_array_tag>::free( + my_array_slice * _tao_slice) +{ + delete[] _tao_slice; +} + +my_array_slice * +TAO::Array_Traits<my_array,my_array_slice,my_array_tag>::dup( + my_array_slice const * _tao_source) +{ + // TODO exception safety + my_array_slice * _tao_destination = alloc(); + copy(_tao_destination, _tao_source); + return _tao_destination; +} + +void +TAO::Array_Traits<my_array,my_array_slice,my_array_tag>::copy( + my_array_slice * _tao_destination, + my_array_slice const * _tao_source) +{ + std::copy( + _tao_source, _tao_source + sizeof(my_array)/sizeof(my_array_slice), + _tao_destination); +} + +void +TAO::Array_Traits<my_array,my_array_slice,my_array_tag>:: +zero( + my_array_slice * _tao_slice) +{ + std::fill( + _tao_slice, _tao_slice + sizeof(my_array)/sizeof(my_array_slice), + 0); +} |