Sequoia
Loading...
Searching...
No Matches
Classes | Typedefs | Enumerations | Functions | Variables
GeometryTestingUtilities.hpp File Reference
#include "sequoia/Maths/Geometry/Spaces.hpp"
#include "sequoia/TestFramework/RegularTestCore.hpp"
#include "sequoia/TestFramework/StateTransitionUtilities.hpp"
#include <complex>

Go to the source code of this file.

Classes

struct  sequoia::testing::is_complex< T >
 
struct  sequoia::testing::is_complex< std::complex< T > >
 
struct  sequoia::testing::my_vec_space< Set, Field, D >
 
struct  sequoia::testing::my_affine_space< Set, Field, D >
 
struct  sequoia::testing::canonical_basis< Set, Field, D >
 
struct  sequoia::testing::my_free_module< Set, Ring, D >
 
struct  sequoia::testing::canonical_free_module_basis< Set, Ring, D >
 
struct  sequoia::testing::value_tester< maths::coordinates< ConvexSpace, Basis, Origin, Validator > >
 
class  sequoia::testing::coordinates_operations< Coordinates >
 

Typedefs

template<class T >
using sequoia::testing::is_complex_t = typename is_complex< T >::type
 

Enumerations

enum class  sequoia::testing::inverted_ordering : bool { no , yes }
 

Functions

template<class Label >
requires std::convertible_to<Label, std::size_t>
std::weak_ordering sequoia::testing::to_ordering (Label From, Label To, inverted_ordering invert)
 
template<maths::network Graph, class Label , class Fn >
requires std::convertible_to<Label, std::size_t>
void sequoia::testing::add_transition (Graph &g, Label From, Label To, std::string_view message, Fn f, std::weak_ordering ordering)
 
template<maths::network Graph, class Label , class Fn >
requires std::convertible_to<Label, std::size_t>
void sequoia::testing::add_transition (Graph &g, Label From, Label To, std::string_view message, Fn f)
 
template<class Coords , maths::network Graph, class Label , class Fn >
requires std::is_invocable_r_v<Coords, Fn, Coords> && std::convertible_to<Label, std::size_t>
void sequoia::testing::add_transition (Graph &g, Label From, Label To, std::string_view message, Fn f, inverted_ordering invert={})
 

Variables

template<class T , class U >
constexpr bool sequoia::testing::can_multiply
 
template<class T , class U >
constexpr bool sequoia::testing::can_divide
 
template<class T , class U >
constexpr bool sequoia::testing::can_add
 
template<class T , class U >
constexpr bool sequoia::testing::can_subtract
 
template<class T >
constexpr bool sequoia::testing::is_complex_v {is_complex<T>::value}
 
template<class B >
constexpr bool sequoia::testing::is_orthonormal_basis_v
 
template<class T >
constexpr bool sequoia::testing::has_units_type
 

Enumeration Type Documentation

◆ inverted_ordering

enum class sequoia::testing::inverted_ordering : bool
strong

Helper functions for building state-transition graphs

Variable Documentation

◆ can_add

template<class T , class U >
constexpr bool sequoia::testing::can_add
constexpr
Initial value:
{
requires(const T& t, const U& u) { t + u; }
}

◆ can_divide

template<class T , class U >
constexpr bool sequoia::testing::can_divide
constexpr
Initial value:
{
requires(const T& t, const U& u) { t / u; }
}

◆ can_multiply

template<class T , class U >
constexpr bool sequoia::testing::can_multiply
constexpr
Initial value:
{
requires(const T& t, const U& u) { t * u; }
}

◆ can_subtract

template<class T , class U >
constexpr bool sequoia::testing::can_subtract
constexpr
Initial value:
{
requires(const T& t, const U& u) { t - u; }
}

◆ has_units_type

template<class T >
constexpr bool sequoia::testing::has_units_type
inlineconstexpr
Initial value:
{
requires { typename T::units_type; }
}

◆ is_orthonormal_basis_v

template<class B >
constexpr bool sequoia::testing::is_orthonormal_basis_v
inlineconstexpr
Initial value:
{
requires {
typename B::orthonormal;
requires std::same_as<typename B::orthonormal, std::true_type>;
}
}