SAT Solver Template
Loading...
Searching...
No Matches
Classes | Namespaces | Concepts | Variables
concepts.hpp File Reference

Contains various type traits and concepts. More...

#include <ostream>
#include <concepts>
#include <ranges>
Include dependency graph for concepts.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  sat::traits::is_same_template< Template, T >
 
struct  sat::traits::is_same_template< Template, Template< Args... > >
 
struct  sat::traits::is_scalar< T >
 
struct  sat::traits::always_false<... >
 

Namespaces

namespace  sat
 
namespace  sat::traits
 namespace containing various type traits. Prefer using the concepts.
 
namespace  sat::concepts
 namespace containing various type concepts
 

Concepts

concept  sat::concepts::callable_r
 
concept  sat::concepts::scalar
 
concept  sat::concepts::typed_range
 
concept  sat::concepts::ctyped_range
 
concept  sat::concepts::ttyped_range
 
concept  sat::concepts::same_template
 
concept  sat::concepts::same_template_lvref
 
concept  sat::concepts::same_template_clvref
 
concept  sat::concepts::enum_type
 

Variables

template<template< typename ... > typename Template, typename T >
constexpr bool sat::traits::is_same_template_v = is_same_template<Template, std::remove_cvref_t<T>>::value
 
template<typename T >
constexpr bool sat::traits::is_scalar_v = is_scalar<T>::value
 
template<typename ... Ts>
constexpr bool sat::traits::always_false_v = always_false<Ts...>::value
 

Detailed Description

Contains various type traits and concepts.

Author
Tim Luchterhand
Date
26.11.24
Note
If you are familiar with the c++ type system, you might find these things useful. If not, don't be scared, you don't need to understand them