AsmGrader 0.0.0
Loading...
Searching...
No Matches
asmgrader::exprs::NAryOp< OpFn, Rep, Args > Struct Template Reference

#include <requirement.hpp>

Public Types

using EvalResT = std::decay_t<std::invoke_result_t<OpFn, Args...>>
 

Public Member Functions

constexpr NAryOp (std::tuple< Args... > args_, std::array< inspection::Tokenizer<>, sizeof...(Args)> arg_tokens_)
 
EvalResT eval () const
 

Public Attributes

std::tuple< Args... > args
 
std::array< inspection::Tokenizer<>, sizeof...(Args)> arg_tokens
 

Static Public Attributes

static constexpr std::string_view raw_str = Rep
 
static constexpr ArityKind arity {sizeof...(Args)}
 

Member Typedef Documentation

◆ EvalResT

template<typename OpFn , StaticString Rep, typename... Args>
using asmgrader::exprs::NAryOp< OpFn, Rep, Args >::EvalResT = std::decay_t<std::invoke_result_t<OpFn, Args...>>

Constructor & Destructor Documentation

◆ NAryOp()

template<typename OpFn , StaticString Rep, typename... Args>
asmgrader::exprs::NAryOp< OpFn, Rep, Args >::NAryOp ( std::tuple< Args... > args_,
std::array< inspection::Tokenizer<>, sizeof...(Args)> arg_tokens_ )
inlineconstexpr

Member Function Documentation

◆ eval()

template<typename OpFn , StaticString Rep, typename... Args>
EvalResT asmgrader::exprs::NAryOp< OpFn, Rep, Args >::eval ( ) const
inline

Member Data Documentation

◆ arg_tokens

template<typename OpFn , StaticString Rep, typename... Args>
std::array<inspection::Tokenizer<>, sizeof...(Args)> asmgrader::exprs::NAryOp< OpFn, Rep, Args >::arg_tokens

◆ args

template<typename OpFn , StaticString Rep, typename... Args>
std::tuple<Args...> asmgrader::exprs::NAryOp< OpFn, Rep, Args >::args

◆ arity

template<typename OpFn , StaticString Rep, typename... Args>
ArityKind asmgrader::exprs::NAryOp< OpFn, Rep, Args >::arity {sizeof...(Args)}
staticconstexpr

◆ raw_str

template<typename OpFn , StaticString Rep, typename... Args>
std::string_view asmgrader::exprs::NAryOp< OpFn, Rep, Args >::raw_str = Rep
staticconstexpr

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