AsmGrader 0.0.0
Loading...
Searching...
No Matches
asmgrader::DecomposedExpr< Op, Types > Struct Template Reference

Stores references to rhs and lhs of a comparison expression, serving as an interface to the "decomposed" expression. More...

#include <decomposer.hpp>

Inheritance diagram for asmgrader::DecomposedExpr< Op, Types >:
[legend]

Public Member Functions

constexpr explicit (false) DecomposedExpr(Types &&... args)
 
template<typename U >
constexpr DecomposedExpr< Op, Types... > & operator= (const U &)
 operator= is disabled via static_assert(false, ...)
 
template<typename U >
constexpr DecomposedExpr< Op, Ts... > & operator= (const U &)
 
- Public Member Functions inherited from asmgrader::NonMovable
 NonMovable ()=default
 
 NonMovable (const NonMovable &)=delete
 
NonMovableoperator= (const NonMovable &)=delete
 
 NonMovable (NonMovable &&)=delete
 
NonMovableoperator= (NonMovable &&)=delete
 
 ~NonMovable ()=default
 
- Public Member Functions inherited from asmgrader::NonCopyable
 NonCopyable ()=default
 
NonCopyableoperator= (const NonCopyable &)=delete
 
 NonCopyable (const NonCopyable &)=delete
 
 NonCopyable (NonCopyable &&)=default
 
NonCopyableoperator= (NonCopyable &&)=default
 
 ~NonCopyable ()=default
 

Public Attributes

std::tuple< Types &&... > operands
 

Static Public Attributes

static constexpr std::size_t arity = sizeof...(Types)
 
static constexpr std::string_view op = Op
 

Detailed Description

template<StaticString Op, typename... Types>
struct asmgrader::DecomposedExpr< Op, Types >

Stores references to rhs and lhs of a comparison expression, serving as an interface to the "decomposed" expression.

Member Function Documentation

◆ explicit()

template<StaticString Op, typename... Types>
asmgrader::DecomposedExpr< Op, Types >::explicit ( false ) &&
inlineconstexpr

◆ operator=() [1/2]

template<StaticString Op, typename... Types>
template<typename U >
DecomposedExpr< Op, Types... > & asmgrader::DecomposedExpr< Op, Types >::operator= ( const U & )
constexpr

operator= is disabled via static_assert(false, ...)

◆ operator=() [2/2]

template<StaticString Op, typename... Types>
template<typename U >
DecomposedExpr< Op, Ts... > & asmgrader::DecomposedExpr< Op, Types >::operator= ( const U & )
constexpr

Member Data Documentation

◆ arity

template<StaticString Op, typename... Types>
std::size_t asmgrader::DecomposedExpr< Op, Types >::arity = sizeof...(Types)
staticconstexpr

◆ op

template<StaticString Op, typename... Types>
std::string_view asmgrader::DecomposedExpr< Op, Types >::op = Op
staticconstexpr

◆ operands

template<StaticString Op, typename... Types>
std::tuple<Types&&...> asmgrader::DecomposedExpr< Op, Types >::operands

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