// This function will only be instantiated if SomeTrait::Value is true for a particular T. // The function's return type is typename Transform::Type. template =""> typename TLazyEnableIf::Value, Transform>Type Function(const T& Obj) { ... }