blueloveTH 1 год назад
Родитель
Сommit
e8830e6407
1 измененных файлов с 0 добавлено и 27 удалено
  1. 0 27
      include/pocketpy/any.h

+ 0 - 27
include/pocketpy/any.h

@@ -103,31 +103,4 @@ struct function<Ret(Params...)>{
     }
 };
 
-template<typename T>
-struct lightfunction;
-
-template<typename Ret, typename... Params>
-struct lightfunction<Ret(Params...)>{
-    void* _impl;
-    Ret (*_wrapper)(void*, Params...);
-
-    lightfunction() : _impl(nullptr), _wrapper(nullptr) {}
-
-    explicit operator bool() const { return _wrapper != nullptr; }
-
-    template<typename F>
-    lightfunction(const F& f){
-        _impl = (F*)(&f);
-        _wrapper = [](void* impl, Params... params) -> Ret{
-            F* f = (F*)(impl);
-            return (*f)(std::forward<Params>(params)...);
-        };
-    }
-
-    Ret operator()(Params... params) const{
-        if(!_wrapper) throw std::runtime_error("empty function");
-        return _wrapper(_impl, std::forward<Params>(params)...);
-    }
-};
-
 } // namespace pkpy