User defined operations in NCCL

I am wondering if NCCL reduce and allreduce support user defined operations?
I looked at the nccl.h, the ncclRedOp_t is a enum, not a function pointer, so I guess the answer is No?