Lodestar
An integrated real-time control package in C++
ls::aux::TemplateTraits::BinaryOperators Class Reference

Provides binary operator traits. More...

#include <TemplateTraits.hpp>

Classes

struct  addable
 
struct  divisible
 
struct  isBinopableImpl
 
struct  isBinopableImpl< T, U, BinOp, void_t< decltype(::std::declval< BinOp >()(::std::declval< T >(), ::std::declval< U >()))> >
 
struct  multiplicable
 
struct  parseMatrixLike
 Extracts data from matrix-like types. More...
 
struct  parseMatrixLike< TWrapper< TScalar, TRows, TCols, TOtherParams... > >
 Extracts data from matrix-like types. More...
 
struct  sanitizeTypeBinop
 Sanitizes a binary operator return type. More...
 
struct  sanitizeTypeBinop< TWrapper< TWrapperChild1< TScalar, TInts... >, TWrapperChild2< UScalar, UInts... >, TWrapperInts... >, BinOp >
 Sanitizes lazy binary operation output. More...
 
struct  subtractable
 
struct  voider
 

Public Types

template<class... Ts>
using void_t = typename voider< Ts... >::type
 
template<typename T >
using sanitizeTypeMultiplicable = sanitizeTypeBinop< T, multiplicable >
 
template<class T , class U , class BinOp >
using isBinopable = isBinopableImpl< T, U, BinOp >
 
template<class T , class U = T>
using isAddable = isBinopable< T, U, addable >
 
template<class T , class U = T>
using isSubtractable = isBinopable< T, U, subtractable >
 
template<class T , class U = T>
using isMultiplicable = isBinopable< T, U, multiplicable >
 
template<class T , class U = T>
using isDivisble = isBinopable< T, U, divisible >
 

Detailed Description

Provides binary operator traits.


The documentation for this class was generated from the following file: