MGIS
Loading...
Searching...
No Matches
BinaryOperation.hxx File Reference

Classes

struct  mgis::function::internals::BinaryOperationModifierBase< CallableType, FirstEvaluatorType, SecondEvaluatorType >
 
struct  mgis::function::BinaryOperationModifier< CallableType, FirstEvaluatorType, SecondEvaluatorType >
 
struct  mgis::function::BinaryOperationModifier2< CallableType, FirstEvaluatorType, SecondEvaluatorType >
 
struct  mgis::function::internals::BinaryOperatorCurrying< CallableType, SecondEvaluatorType >
 
struct  mgis::function::internals::BinaryOperatorCurrying2< CallableType, SecondEvaluatorType >
 
struct  mgis::function::internals::binary_operation_modifier< CallableType >
 
struct  mgis::function::internals::binary_operation_modifier2_impl< CallableType >
 

Namespaces

namespace  mgis
 the namespace mgis encloses all the MGIS project.
 

Functions

template<typename CallableType , EvaluatorConcept FirstEvaluatorType, EvaluatorConcept SecondEvaluatorType>
constexpr mgis::size_type mgis::function::getNumberOfComponents (const BinaryOperationModifier< CallableType, FirstEvaluatorType, SecondEvaluatorType > &)
 
template<typename CallableType , EvaluatorConcept FirstEvaluatorType, EvaluatorConcept SecondEvaluatorType>
constexpr mgis::size_type mgis::function::getNumberOfComponents (const BinaryOperationModifier2< CallableType, FirstEvaluatorType, SecondEvaluatorType > &)
 
template<typename CallableType >
constexpr auto mgis::function::internals::binary_operation_modifier2 (CallableType)
 
template<typename CallableType , typename SecondEvaluatorType >
requires (EvaluatorConcept<std::decay_t<SecondEvaluatorType>>)
constexpr auto mgis::function::binary_operation (CallableType &&, SecondEvaluatorType &&)
 
template<typename CallableType , typename FirstEvaluatorType , typename SecondEvaluatorType >
requires ((EvaluatorConcept<std::decay_t<FirstEvaluatorType>>)&& // (EvaluatorConcept<std::decay_t<SecondEvaluatorType>>)&& // (std::invocable< std::decay_t<CallableType>, evaluator_result<std::decay_t<FirstEvaluatorType>>, evaluator_result<std::decay_t<SecondEvaluatorType>>>))
constexpr auto mgis::function::binary_operation (CallableType &&, FirstEvaluatorType &&, SecondEvaluatorType &&)
 

Variables

template<typename CallableType , EvaluatorConcept FirstEvaluatorType, EvaluatorConcept SecondEvaluatorType>
constexpr auto mgis::function::BinaryOperationModifierRequirements
 
template<typename CallableType , EvaluatorConcept FirstEvaluatorType, EvaluatorConcept SecondEvaluatorType>
constexpr auto mgis::function::BinaryOperationModifier2Requirements
 

Detailed Description

Author
Thomas Helfer
Date
11/05/2025

Function Documentation

◆ getNumberOfComponents() [1/2]

template<typename CallableType , EvaluatorConcept FirstEvaluatorType, EvaluatorConcept SecondEvaluatorType>
constexpr mgis::size_type mgis::function::getNumberOfComponents ( const BinaryOperationModifier2< CallableType, FirstEvaluatorType, SecondEvaluatorType > &  e)
constexpr
Returns
the number of components

◆ getNumberOfComponents() [2/2]

template<typename CallableType , EvaluatorConcept FirstEvaluatorType, EvaluatorConcept SecondEvaluatorType>
constexpr mgis::size_type mgis::function::getNumberOfComponents ( const BinaryOperationModifier< CallableType, FirstEvaluatorType, SecondEvaluatorType > &  e)
constexpr
Returns
the number of components

Variable Documentation

◆ BinaryOperationModifier2Requirements

template<typename CallableType , EvaluatorConcept FirstEvaluatorType, EvaluatorConcept SecondEvaluatorType>
constexpr auto mgis::function::BinaryOperationModifier2Requirements
inlineconstexpr
Initial value:
=
(std::is_trivially_default_constructible_v<CallableType>)&&(
std::invocable<CallableType,
evaluator_result<FirstEvaluatorType>,
evaluator_result<SecondEvaluatorType>>)

◆ BinaryOperationModifierRequirements

template<typename CallableType , EvaluatorConcept FirstEvaluatorType, EvaluatorConcept SecondEvaluatorType>
constexpr auto mgis::function::BinaryOperationModifierRequirements
inlineconstexpr
Initial value:
=
(std::is_copy_constructible_v<CallableType>)&&(
std::invocable<CallableType,
evaluator_result<FirstEvaluatorType>,
evaluator_result<SecondEvaluatorType>>)