diff --git a/coord/ops.hpp b/coord/ops.hpp index 800fb1bb..dcf0afa6 100644 --- a/coord/ops.hpp +++ b/coord/ops.hpp @@ -87,6 +87,27 @@ namespace util { constexpr bool is_coord_v = is_coord::value; + + /////////////////////////////////////////////////////////////////////////// + template + constexpr + std::enable_if_t, std::size_t> + arity (void) + { + return T::dimension; + } + + + //------------------------------------------------------------------------- + template + constexpr + std::enable_if_t::value, std::size_t> + arity (void) + { + return 1; + } + + /////////////////////////////////////////////////////////////////////////// // vector operators #define ELEMENT_OP(OP) \