OpenKalman
Classes | Typedefs | Enumerations | Functions
comparison-operators.hpp File Reference

Comparison operators for coordinates::pattern objects. More...

#include <iostream>
#include <type_traits>
#include "basics/global-definitions.hpp"
#include "values/functions/to_number.hpp"
#include "collections/views/single.hpp"
#include "linear-algebra/coordinates/concepts/descriptor.hpp"
#include "linear-algebra/coordinates/concepts/euclidean_pattern.hpp"
#include "linear-algebra/coordinates/functions/internal/get_hash_code.hpp"
#include "linear-algebra/coordinates/functions/get_dimension.hpp"
#include "linear-algebra/coordinates/functions/internal/get_descriptor_collection_element.hpp"
Include dependency graph for comparison-operators.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  OpenKalman::coordinates::detail::ordering
 

Typedefs

using OpenKalman::coordinates::detail::cmp_cat::type = signed char
 

Enumerations

enum  Ord : type { equivalent = 0, less = -1, greater = 1 }
 
enum  Ncmp : type { unordered = 2 }
 

Functions

template<std::size_t ai = 0, std::size_t bi = 0, std::size_t abank = 0, std::size_t bbank = 0, typename A , typename B >
constexpr auto OpenKalman::coordinates::detail::compare_fixed (const A &a, const B &b)
 
template<typename A , typename B >
constexpr ordering OpenKalman::coordinates::detail::compare_impl (const A &a, const B &b, std::size_t ai=0, std::size_t bi=0, std::size_t abank=0, std::size_t bbank=0)
 
template<typename A , typename B , std::enable_if_t< pattern< A > and pattern< B >, int > = 0>
constexpr bool OpenKalman::coordinates::operator== (const A &a, const B &b)
 Comparison operator for library-defined coordinates::pattern objects. More...
 
template<typename A , typename B , std::enable_if_t< pattern< A > and pattern< B >, int > = 0>
constexpr bool OpenKalman::coordinates::operator< (const A &a, const B &b)
 
template<typename A , typename B , std::enable_if_t< pattern< A > and pattern< B >, int > = 0>
constexpr bool OpenKalman::coordinates::operator> (const A &a, const B &b)
 
template<typename A , typename B , std::enable_if_t< pattern< A > and pattern< B >, int > = 0>
constexpr bool OpenKalman::coordinates::operator<= (const A &a, const B &b)
 
template<typename A , typename B , std::enable_if_t< pattern< A > and pattern< B >, int > = 0>
constexpr bool OpenKalman::coordinates::operator>= (const A &a, const B &b)
 
template<typename A , typename B , std::enable_if_t< pattern< A > and pattern< B >, int > = 0>
constexpr bool OpenKalman::coordinates::operator!= (const A &a, const B &b)
 

Detailed Description

Comparison operators for coordinates::pattern objects.

Function Documentation

◆ operator==()

template<typename A , typename B , std::enable_if_t< pattern< A > and pattern< B >, int > = 0>
constexpr bool OpenKalman::coordinates::operator== ( const A &  a,
const B &  b 
)

Comparison operator for library-defined coordinates::pattern objects.

Todo:
Streamline this to avoid re-calculating prefix status