#ifndef ALSK_ALSK_EDSL_LINK_H #define ALSK_ALSK_EDSL_LINK_H #include #include "op/op.h" namespace alsk { namespace edsl { template constexpr decltype(auto) link(Expression&& expression) { return std::forward(expression).template link(); } template 1)>* = nullptr> constexpr decltype(auto) link(Expressions&&... expressions) { return link(serial(std::forward(expressions)...)); } template>* = nullptr> constexpr decltype(auto) link() { return link(makeOperand()); } template>* = nullptr> constexpr decltype(auto) link() { return link(); } } } #endif