Compare commits

..

1 Commits

Author SHA1 Message Date
Beman Dawes
bceb5f9466 Release 1.40.0
[SVN r55802]
2009-08-27 16:24:59 +00:00
6 changed files with 98 additions and 21 deletions

28
CMakeLists.txt Normal file
View File

@@ -0,0 +1,28 @@
#
# Copyright Troy D. Straszheim
#
# Distributed under the Boost Software License, Version 1.0.
# See http://www.boost.org/LICENSE_1_0.txt
#
#----------------------------------------------------------------------------
# This file was automatically generated from the original CMakeLists.txt file
# Add a variable to hold the headers for the library
set (lib_headers
multi_array.hpp
multi_array
)
# Add a library target to the build system
boost_library_project(
multi_array
# SRCDIRS
TESTDIRS test
HEADERS ${lib_headers}
# DOCDIRS
# DESCRIPTION
MODULARIZED
# AUTHORS
# MAINTAINERS
)

2
module.cmake Normal file
View File

@@ -0,0 +1,2 @@
boost_module(multi_array DEPENDS array iterator detail concept_check mpl static_assert functional)

47
test/CMakeLists.txt Normal file
View File

@@ -0,0 +1,47 @@
#
# Copyright Troy D. Straszheim
#
# Distributed under the Boost Software License, Version 1.0.
# See http://www.boost.org/LICENSE_1_0.txt
#
boost_additional_test_dependencies(multi_array BOOST_DEPENDS test)
boost_test_compile_fail(fail_cbracket)
boost_test_compile_fail(fail_cdata)
boost_test_compile_fail(fail_citerator)
boost_test_compile_fail(fail_cparen)
boost_test_compile_fail(fail_criterator)
boost_test_compile_fail(fail_csubarray)
boost_test_compile_fail(fail_csubarray2)
boost_test_compile_fail(fail_csubarray3)
boost_test_compile_fail(fail_cview)
boost_test_compile_fail(fail_cview2)
boost_test_compile_fail(fail_cview3)
boost_test_compile_fail(fail_ref_cbracket)
boost_test_compile_fail(fail_ref_cdata)
boost_test_compile_fail(fail_ref_citerator)
boost_test_compile_fail(fail_ref_cparen)
boost_test_compile_fail(fail_ref_criterator)
boost_test_compile_fail(fail_ref_csubarray)
boost_test_compile_fail(fail_ref_csubarray2)
boost_test_compile_fail(fail_ref_csubarray3)
boost_test_compile_fail(fail_ref_cview)
boost_test_compile_fail(fail_ref_cview2)
boost_test_compile_fail(fail_ref_cview3)
boost_test_run(constructors DEPENDS boost_test_exec_monitor)
boost_test_run(access DEPENDS boost_test_exec_monitor)
boost_test_run(compare DEPENDS boost_test_exec_monitor)
boost_test_run(iterators DEPENDS boost_test_exec_monitor)
boost_test_run(slice DEPENDS boost_test_exec_monitor)
boost_test_run(assign DEPENDS boost_test_exec_monitor)
boost_test_run(assign_to_array DEPENDS boost_test_exec_monitor)
boost_test_run(index_bases DEPENDS boost_test_exec_monitor)
boost_test_run(storage_order DEPENDS boost_test_exec_monitor)
boost_test_run(reshape DEPENDS boost_test_exec_monitor)
boost_test_run(range1 DEPENDS boost_test_exec_monitor)
boost_test_run(idxgen1 DEPENDS boost_test_exec_monitor)
boost_test_run(stl_interaction DEPENDS boost_test_exec_monitor)
boost_test_run(resize DEPENDS boost_test_exec_monitor)
boost_test_compile(concept_checks)

View File

@@ -1,6 +1,6 @@
// Copyright 2002 The Trustees of Indiana University.
// Use, modification and distribution is subject to the Boost Software
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt)
@@ -10,9 +10,9 @@
// Andrew Lumsdaine
// See http://www.boost.org/libs/multi_array for documentation.
//
//
// assign.cpp - Test out operator=() on the different types
//
//
//
#include "generative_tests.hpp"
#include "boost/array.hpp"
@@ -32,7 +32,7 @@ bool equal(const ArrayA& A, const ArrayB& B)
typename ArrayA::const_iterator ia;
typename ArrayB::const_iterator ib = B.begin();
for (ia = A.begin(); ia != A.end(); ++ia, ++ib)
if (!::equal(*ia, *ib))
if (!equal(*ia, *ib))
return false;
return true;
}
@@ -59,7 +59,7 @@ void access(Array& A, const mutable_array_tag&) {
A = filler;
BOOST_CHECK(::equal(A,filler));
BOOST_CHECK(equal(A,filler));
++tests_run;
}

View File

@@ -1,6 +1,6 @@
// Copyright 2002 The Trustees of Indiana University.
// Use, modification and distribution is subject to the Boost Software
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt)
@@ -10,10 +10,10 @@
// Andrew Lumsdaine
// See http://www.boost.org/libs/multi_array for documentation.
//
//
// assign_to_array.cpp - multi_array should be constructible from any other
// array type in the library.
//
//
//
#include "generative_tests.hpp"
#include "boost/array.hpp"
@@ -33,7 +33,7 @@ bool equal(const ArrayA& A, const ArrayB& B)
typename ArrayA::const_iterator ia;
typename ArrayB::const_iterator ib = B.begin();
for (ia = A.begin(); ia != A.end(); ++ia, ++ib)
if (!::equal(*ia, *ib))
if (!equal(*ia, *ib))
return false;
return true;
}
@@ -50,7 +50,7 @@ template <typename Array>
void access(Array& A, const const_array_tag&) {
typedef boost::multi_array<int,3> array3;
array3 acopy(A);
BOOST_CHECK(::equal(acopy,A));
BOOST_CHECK(equal(acopy,A));
++tests_run;
}

View File

@@ -1,6 +1,6 @@
// Copyright 2002 The Trustees of Indiana University.
// Use, modification and distribution is subject to the Boost Software
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt)
@@ -25,8 +25,8 @@ void check_shape(const double&, std::size_t*, int*, unsigned int)
{}
template <class Array>
void check_shape(const Array& A,
std::size_t* sizes,
void check_shape(const Array& A,
std::size_t* sizes,
int* strides,
unsigned int num_elements)
{
@@ -49,7 +49,7 @@ bool equal(const ArrayA& A, const ArrayB& B)
typename ArrayA::const_iterator ia;
typename ArrayB::const_iterator ib = B.begin();
for (ia = A.begin(); ia != A.end(); ++ia, ++ib)
if (!::equal(*ia, *ib))
if (!equal(*ia, *ib))
return false;
return true;
}
@@ -76,7 +76,7 @@ test_main(int, char*[])
double* ptr = 0;
boost::multi_array_ref<double,3> B(ptr,sizes);
check_shape(B, &sizes[0], strides, num_elements);
const double* cptr = ptr;
boost::const_multi_array_ref<double,3> C(cptr,sizes);
check_shape(C, &sizes[0], strides, num_elements);
@@ -132,7 +132,7 @@ test_main(int, char*[])
A.assign(vals.begin(),vals.end());
boost::multi_array<double, 3> B(A);
check_shape(B, &sizes[0], strides, num_elements);
BOOST_CHECK(::equal(A, B));
BOOST_CHECK(equal(A, B));
double ptr[27];
boost::multi_array_ref<double, 3> C(ptr,sizes);
@@ -182,7 +182,7 @@ test_main(int, char*[])
A.assign(vals.begin(),vals.end());
B = A;
check_shape(B, &sizes[0], strides, num_elements);
BOOST_CHECK(::equal(A, B));
BOOST_CHECK(equal(A, B));
double ptr1[27];
double ptr2[27];
@@ -190,12 +190,12 @@ test_main(int, char*[])
C.assign(vals.begin(),vals.end());
D = C;
check_shape(D, &sizes[0], strides, num_elements);
BOOST_CHECK(::equal(C,D));
BOOST_CHECK(equal(C,D));
}
// subarray value_type is multi_array
{
{
typedef boost::multi_array<double,3> array;
typedef array::size_type size_type;
size_type num_elements = 27;
@@ -209,8 +209,8 @@ test_main(int, char*[])
subarray::value_type C = B[0];
// should comparisons between the types work?
BOOST_CHECK(::equal(A[1][0],C));
BOOST_CHECK(::equal(B[0],C));
BOOST_CHECK(equal(A[1][0],C));
BOOST_CHECK(equal(B[0],C));
}
return boost::exit_success;
}