// // Copyright (c) 2018, Cem Bassoy, cem.bassoy@gmail.com // // Distributed under 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) // // The authors gratefully acknowledge the support of // Fraunhofer IOSB, Ettlingen Germany // #ifndef _BOOST_STORAGE_TRAITS_HPP_ #define _BOOST_STORAGE_TRAITS_HPP_ #include #include namespace boost { namespace numeric { namespace ublas { template struct storage_traits; template struct storage_traits> { using array_type = std::vector; using size_type = typename array_type::size_type; using difference_type = typename array_type::difference_type; using value_type = typename array_type::value_type; using reference = typename array_type::reference; using const_reference = typename array_type::const_reference; using pointer = typename array_type::pointer; using const_pointer = typename array_type::const_pointer; using iterator = typename array_type::iterator; using const_iterator = typename array_type::const_iterator; using reverse_iterator = typename array_type::reverse_iterator; using const_reverse_iterator = typename array_type::const_reverse_iterator; template using rebind = std::vector::template rebind_alloc>; }; template struct storage_traits> { using array_type = std::array; using size_type = typename array_type::size_type; using difference_type = typename array_type::difference_type; using value_type = typename array_type::value_type; using reference = typename array_type::reference; using const_reference = typename array_type::const_reference; using pointer = typename array_type::pointer; using const_pointer = typename array_type::const_pointer; using iterator = typename array_type::iterator; using const_iterator = typename array_type::const_iterator; using reverse_iterator = typename array_type::reverse_iterator; using const_reverse_iterator = typename array_type::const_reverse_iterator; template using rebind = std::array; }; } // ublas } // numeric } // boost #endif // _BOOST_STORAGE_TRAITS_HPP_