// // Copyright (C) 2011-15 DyND Developers // BSD 2-Clause License, see LICENSE.txt // #pragma once #include #include namespace dynd { namespace nd { template struct greater_kernel : base_strided_kernel, 2> { typedef typename type_of::type A0; typedef typename type_of::type A1; typedef typename std::common_type::type T; void single(char *dst, char *const *src) { *reinterpret_cast(dst) = static_cast(*reinterpret_cast(src[0])) > static_cast(*reinterpret_cast(src[1])); } }; template struct greater_kernel : base_strided_kernel, 2> { typedef typename type_of::type A0; void single(char *dst, char *const *src) { *reinterpret_cast(dst) = *reinterpret_cast(src[0]) > *reinterpret_cast(src[1]); } }; } // namespace dynd::nd namespace ndt { template struct traits> { static type equivalent() { return callable_type::make(make_type(), {type(Src0TypeID), type(Src1TypeID)}); } }; } // namespace dynd::ndt } // namespace dynd