NebulaStream  0.6.213
NebulaStream is a data and application management framework for the internet of things
Array.hpp File Reference
#include <Common/ExecutableType/NESType.hpp>
#include <Util/Logger/Logger.hpp>
#include <algorithm>
#include <array>
#include <cstring>
#include <stdexcept>
#include <string>
#include <utility>
#include <vector>
Include dependency graph for Array.hpp:
This graph shows which files directly or indirectly include this file:

Classes

class  NES::ExecutableTypes::ArrayBase< T, s, typename >
 Container for fixed size arrays of primitive types. More...
 
class  NES::ExecutableTypes::Array< T, size, typename >
 Default ArrayType template which defaults to ArrayBase. More...
 
class  NES::ExecutableTypes::Array< char, size >
 Partial specialization which adds additional functionality for arrays of type char. Unlike fixed-size arrays of type != char, fixed size char arrays are allowed to contain less characters than specified by size. More...
 
struct  std::hash< NES::ExecutableTypes::Array< T, N > >
 
struct  fmt::formatter< NES::ExecutableTypes::Array< char, size > >
 

Namespaces

 NES
 This exception represents a network error.
 
 NES::ExecutableTypes
 
 fmt
 

Functions

template<typename T , std::size_t sl, std::size_t sr, typename = std::enable_if_t<std::is_same_v<std::decay_t<T>, char> || sl == sr>>
bool NES::ExecutableTypes::operator== (Array< T, sl > const &&l, Array< T, sl > const &&r) noexcept
 
template<typename T , std::size_t sl, std::size_t sr, typename = std::enable_if_t<std::is_same_v<std::decay_t<T>, char> || sl == sr>>
bool NES::ExecutableTypes::operator>= (Array< T, sl > const &l, Array< T, sl > const &r) noexcept
 
template<typename T , std::size_t sl, std::size_t sr, typename = std::enable_if_t<std::is_same_v<std::decay_t<T>, char> || sl == sr>>
bool NES::ExecutableTypes::operator> (Array< T, sl > const &l, Array< T, sl > const &r) noexcept
 
template<typename T , std::size_t sl, std::size_t sr, typename = std::enable_if_t<std::is_same_v<std::decay_t<T>, char> || sl == sr>>
bool NES::ExecutableTypes::operator<= (Array< T, sl > const &l, Array< T, sl > const &r) noexcept
 
template<typename T , std::size_t sl, std::size_t sr, typename = std::enable_if_t<std::is_same_v<std::decay_t<T>, char> || sl == sr>>
bool NES::ExecutableTypes::operator< (Array< T, sl > const &l, Array< T, sl > const &r) noexcept
 
template<typename T , std::size_t sl, std::size_t sr, typename = std::enable_if_t<std::is_same_v<std::decay_t<T>, char> || sl == sr>>
bool NES::ExecutableTypes::operator!= (Array< T, sl > const &l, Array< T, sl > const &r) noexcept
 
template<typename T , std::size_t s, typename O , typename = std::enable_if_t<std::is_constructible_v<Array<T, s>, O> && !std::is_same_v<Array<T, s>, std::decay_t<O>>>>
bool NES::ExecutableTypes::operator== (Array< T, s > const &l, O &&os) noexcept
 
template<typename T , std::size_t s, typename O , typename = std::enable_if_t<std::is_constructible_v<Array<T, s>, O> && !std::is_same_v<Array<T, s>, std::decay_t<O>>>>
bool NES::ExecutableTypes::operator== (O &&os, Array< T, s > const &l) noexcept
 
template<typename T , std::size_t s, typename O , typename = std::enable_if_t<std::is_constructible_v<Array<T, s>, O> && !std::is_same_v<Array<T, s>, std::decay_t<O>>>>
bool NES::ExecutableTypes::operator>= (Array< T, s > const &l, O &&os) noexcept
 
template<typename T , std::size_t s, typename O , typename = std::enable_if_t<std::is_constructible_v<Array<T, s>, O> && !std::is_same_v<Array<T, s>, std::decay_t<O>>>>
bool NES::ExecutableTypes::operator>= (O &&os, Array< T, s > const &l) noexcept
 
template<typename T , std::size_t s, typename O , typename = std::enable_if_t<std::is_constructible_v<Array<T, s>, O> && !std::is_same_v<Array<T, s>, std::decay_t<O>>>>
bool NES::ExecutableTypes::operator> (Array< T, s > const &l, O &&os) noexcept
 
template<typename T , std::size_t s, typename O , typename = std::enable_if_t<std::is_constructible_v<Array<T, s>, O> && !std::is_same_v<Array<T, s>, std::decay_t<O>>>>
bool NES::ExecutableTypes::operator> (O &&os, Array< T, s > const &l) noexcept
 
template<typename T , std::size_t s, typename O , typename = std::enable_if_t<std::is_constructible_v<Array<T, s>, O> && !std::is_same_v<Array<T, s>, std::decay_t<O>>>>
bool NES::ExecutableTypes::operator<= (Array< T, s > const &l, O &&os) noexcept
 
template<typename T , std::size_t s, typename O , typename = std::enable_if_t<std::is_constructible_v<Array<T, s>, O> && !std::is_same_v<Array<T, s>, std::decay_t<O>>>>
bool NES::ExecutableTypes::operator<= (O &&os, Array< T, s > const &l) noexcept
 
template<typename T , std::size_t s, typename O , typename = std::enable_if_t<std::is_constructible_v<Array<T, s>, O> && !std::is_same_v<Array<T, s>, std::decay_t<O>>>>
bool NES::ExecutableTypes::operator< (Array< T, s > const &l, O &&os) noexcept
 
template<typename T , std::size_t s, typename O , typename = std::enable_if_t<std::is_constructible_v<Array<T, s>, O> && !std::is_same_v<Array<T, s>, std::decay_t<O>>>>
bool NES::ExecutableTypes::operator< (O &&os, Array< T, s > const &l) noexcept
 
template<typename T , std::size_t s, typename O , typename = std::enable_if_t<std::is_constructible_v<Array<T, s>, O> && !std::is_same_v<Array<T, s>, std::decay_t<O>>>>
bool NES::ExecutableTypes::operator!= (Array< T, s > const &l, O &&os) noexcept
 
template<typename T , std::size_t s, typename O , typename = std::enable_if_t<std::is_constructible_v<Array<T, s>, O> && !std::is_same_v<Array<T, s>, std::decay_t<O>>>>
bool NES::ExecutableTypes::operator!= (O &&os, Array< T, s > const &l) noexcept
 
template<typename T , typename... Ts, typename = std::enable_if_t<std::conjunction_v<std::is_same<std::decay_t<T>, std::decay_t<Ts>>...>>>
 NES::ExecutableTypes::Array (T, Ts...) -> Array< T, sizeof...(Ts)+1 >
 Compiler hint which computes the size of a NES::Array and its type from the arguments. More...
 
template<typename J , std::size_t size>
 NES::ExecutableTypes::Array (std::array< J, size > &&) -> Array< J, size >
 std::array More...
 
template<typename J >
 NES::ExecutableTypes::Array (J const &array) -> Array< std::decay_t< decltype(array[0])>, std::extent< J >::value >
 c-style array More...