lin
Classes | Typedefs | Functions
views.hpp File Reference
#include "core.hpp"
#include "views/const_matrix_view.hpp"
#include "views/const_vector_view.hpp"
#include "views/matrix_view.hpp"
#include "views/vector_view.hpp"
#include <type_traits>

Go to the source code of this file.

Classes

struct  lin::internal::view< C, typename >
 
struct  lin::internal::view< C, std::enable_if_t< is_matrix< C >::value > >
 
struct  lin::internal::view< C, std::enable_if_t< is_col_vector< C >::value > >
 
struct  lin::internal::view< C, std::enable_if_t< is_row_vector< C >::value > >
 
struct  lin::internal::const_view< C, typename >
 
struct  lin::internal::const_view< C, std::enable_if_t< is_matrix< C >::value > >
 
struct  lin::internal::const_view< C, std::enable_if_t< is_col_vector< C >::value > >
 
struct  lin::internal::const_view< C, std::enable_if_t< is_row_vector< C >::value > >
 

Typedefs

template<class C >
using lin::internal::view_t = typename view< C >::type
 
template<class C >
using lin::internal::const_view_t = typename const_view< C >::type
 

Functions

template<class C , typename = std::enable_if_t<internal::has_traits<C>::value>>
constexpr auto lin::view (typename C::Traits::elem_t *elems)
 Creates a tensor view with default dimensions. More...
 
template<class C , typename = std::enable_if_t<internal::conjunction< internal::has_traits<C>, internal::is_vector<C>>::value>>
constexpr auto lin::view (typename C::Traits::elem_t *elems, size_t n)
 Creates a vector view with the provided length. More...
 
template<class C , typename = std::enable_if_t<internal::has_traits<C>::value>>
constexpr auto lin::view (typename C::Traits::elem_t *elems, size_t r, size_t c)
 Creates a tensor view with the provided dimensions. More...
 
template<class C , typename = std::enable_if_t<internal::has_traits<C>::value>>
constexpr auto lin::view (typename C::Traits::elem_t const *elems)
 Creates a constant tensor view with default dimensions. More...
 
template<class C , typename = std::enable_if_t<internal::conjunction< internal::has_traits<C>, internal::is_vector<C>>::value>>
constexpr auto lin::view (typename C::Traits::elem_t const *elems, size_t n)
 Creates a constant vector view with the provided length. More...
 
template<class C , typename = std::enable_if_t<internal::has_traits<C>::value>>
constexpr auto lin::view (typename C::Traits::elem_t const *elems, size_t r, size_t c)
 Creates a constant tensor view with the provided dimensions. More...
 

Detailed Description

Author
Kyle Krol