te
te copied to clipboard
C++17 Run-time polymorphism (type erasure) library
This is the example program provided on the main page which showcases better inlining than vanilla inheritance. https://godbolt.org/z/9h9qf87n5 It fails to compile with certain versions of clang, e.g. 12, 11,...
## Expected Behavior ## Actual Behavior example.cpp https://raw.githubusercontent.com/boost-experimental/te/master/include/boost/te.hpp(18): warning C4068: unknown pragma 'GCC' https://raw.githubusercontent.com/boost-experimental/te/master/include/boost/te.hpp(298): error C2062: type 'bool' unexpected https://raw.githubusercontent.com/boost-experimental/te/master/include/boost/te.hpp(298): error C2143: syntax error: missing ';' before '{' https://raw.githubusercontent.com/boost-experimental/te/master/include/boost/te.hpp(298): error...
Hi there, i am interested in knowing more about your design choices. Why do you store the deleter and cloner functions in the void_ptr instead of the vtable? This seems...
Compilation fails: https://godbolt.org/g/cEX1eL
Hi, I am using g++ (GCC) 8.2.1 20181011 (Red Hat 8.2.1-4) on Fedora 28 I've tried to compile the library with default parameters on CMake and got the following error....
## Actual Behavior Problem with FManager::PropertyHolder::emplace_back This is templated method used to emplace arbitrary items in implementation`s vector As I see how library does, it is not instantiating things to...
## Expected Behavior I expected to be able to find a way to make the poly interface comparable, so one could compare the value stored in it. It's reasonably easy...
I expected to be able to return a const reference to a non-copyable object, like std::type_info: ```cpp struct Introspectable : te::poly { const std::type_info& type() const { return te::call([](auto const&...
## Expected Behavior Compilation of examples by gcc 9,10,11 is successfuly ## Actual Behavior Compilation is failed by gcc 9.4.0, 10.3.0 and 11.1.0 with following errors: Non-member CircleMember Square[ 92%]...
## Expected Behavior See the attached minimal reproducible example. SimpleCall returns an object of type `NoDefaultCtor`. Somehow, the code compiles. This doesn't make sense because how can `NoDefaultCtor` be constructed....