Inverse of Blueprint Function Library

Is there any simple way of making the opposite of a Blueprint Function Library: a library of static functions that can be called from C++, but are defined in BP? The only way I can find is using a Blueprintable singleton to simulate static-ness, which feels inefficient.