Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
|
#include <ValueOperationAbstraction.hpp>
Public Member Functions | |
abstraction::TypeQualifiers::TypeQualifierSet | getReturnTypeQualifiers () const override |
ext::type_index | getReturnTypeIndex () const override |
![]() | |
virtual void | attachInput (const std::shared_ptr< abstraction::Value > &input, size_t index)=0 |
virtual void | detachInput (size_t index)=0 |
virtual | ~OperationAbstraction () noexcept=default |
virtual bool | inputsAttached () const =0 |
virtual std::shared_ptr< abstraction::Value > | eval ()=0 |
virtual size_t | numberOfParams () const =0 |
virtual bool | isParamTypeUniversal (size_t) const |
virtual bool | isReturnTypeUniversal () const |
virtual ext::type_index | getParamTypeIndex (size_t index) const =0 |
std::string | getParamType (size_t index) const |
virtual abstraction::TypeQualifiers::TypeQualifierSet | getParamTypeQualifiers (size_t index) const =0 |
std::string | getReturnType () const |
virtual std::shared_ptr< abstraction::OperationAbstraction > | getProxyAbstraction () |
Static Public Member Functions | |
template<typename ... ParamTypes, typename Callable > | |
static std::shared_ptr< abstraction::Value > | run_helper (Callable callback, const ext::array< std::shared_ptr< abstraction::Value >, sizeof ...(ParamTypes) > &inputs) |
|
inlineoverridevirtual |
Implements abstraction::OperationAbstraction.
|
inlineoverridevirtual |
Implements abstraction::OperationAbstraction.
|
inlinestatic |