OpenKalman
Classes | Namespaces | Functions | Variables
compare_collection_patterns_with_dimension.hpp File Reference

Definition for patterns::compare_collection_patterns_with_dimension. More...

#include <optional>
#include "collections/collections.hpp"
#include "patterns/functions/get_dimension.hpp"
#include "patterns/traits/dimension_of.hpp"
#include "patterns/concepts/fixed_pattern.hpp"
#include "patterns/concepts/pattern_collection.hpp"
#include "patterns/functions/get_pattern.hpp"
Include dependency graph for compare_collection_patterns_with_dimension.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  OpenKalman::patterns::detail::has_fixed_patt_dim< T, typename >
 
struct  OpenKalman::patterns::detail::has_fixed_patt_dim< T, std::enable_if_t< fixed_pattern< typename T::type > > >
 

Namespaces

 OpenKalman::patterns
 The namespace for features relating to patterns::pattern object.
 

Functions

template<std::size_t n, auto comp, std::size_t i = 0, typename T , typename D >
constexpr auto OpenKalman::patterns::detail::compare_collection_patterns_with_dimension_impl (const T &t, const D &d)
 
template<auto comp = &stdex::is_eq, std::size_t N = values::unbounded_size, typename T , typename D , std::enable_if_t<(N==values::unbounded_size or N > 0>
constexpr auto OpenKalman::patterns::compare_collection_patterns_with_dimension (const T &t, const D &d)
 Compares the dimensions of the first N elements of a pattern_collection with a particular value. More...
 
template<std::size_t dim, auto comp = &stdex::is_eq, std::size_t N = values::unbounded_size, typename T , std::enable_if_t<(N==values::unbounded_size or N > 0>
constexpr auto OpenKalman::patterns::compare_collection_patterns_with_dimension (const T &t)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 

Variables

template<auto comp>
constexpr auto OpenKalman::patterns::detail::do_compare
 

Detailed Description

Definition for patterns::compare_collection_patterns_with_dimension.

Variable Documentation

◆ do_compare

template<auto comp>
constexpr auto OpenKalman::patterns::detail::do_compare
Initial value:
= [](const auto& a, const auto& b) {
return stdex::invoke(comp, stdex::compare_three_way{}(a, b));
}
constexpr auto compare_three_way(A &&a, B &&b, const Comparison &c={})
Compare two patterns::pattern objects lexicographically.
Definition: compare_three_way.hpp:142