Overridden methods do not override base class methods in REST API.
This is now fixed - most of the work done some time ago, with a recent fix to the partial override of overloaded methods.
Home
RESTProcess of references should support polymorphic types
Fixed.
typeName definitions for some std containers missing some template parameters.
Make containers iterable in pythonBuffer
Methods returning smart pointers don't seem to work with python
RESTProcess of references should support polymorphic types
const qualified return types cause problems with -overload
Done.
RESTService calls base class methods by preference to derived class methods
Done via method a). Fix still in return-restprocess-object-refactor branch.
const qualified return types cause problems with -overload
Try fold expressions in classdesc::functional
Done as much as we can - this only partly worked.
Provide variadic versions of And and Or
Presence of static member prevents method function descriptor being written correctly
Presence of static member prevents method function descriptor being written correctly
pragma mistakenly included in classdesc output
Workaround is to use std::function.
Or ecolab distrand on random.h
Provide variadic versions of And and Or
Problems with maps and RESTService
Overridden methods do not override base class methods in REST API.
RESTService doesn't handle classes derived from standard containers well.
-overload incorrectly handled function pointers.
Try fold expressions in classdesc::functional
Another example: enum FooBar {foo, bar}; struct Bar { std::set<FooBar> foobar={foo,bar}; void update(unsigned width,unsigned height); }; Notice update is missing from the descriptor.
std::array not correct deserialised
const char* parameters do not work correctlywith RESTProcess
On closer inspection, I don't think there is a solution to this. I have rejigged things to throw an exception, rather than silently failing.
Not just windows - adding the following line to Root in RESTProcessExample.h std::string testString(const char* s) {return s;} Gives when running: rusnuc>RESTProcess /root/testString "hello" /root/testString=>"p\u00B0\u00A3\u0001"
const char* parameters do not work correctlywith RESTProcess
Not just windows - adding the following line to Root in RESTProcessExample.h std::string testString(const char* s) {return s;} Give when running: rusnuc>RESTProcess /root/testString "hello" /root/testString=>"p\u00B0\u00A3\u0001"
const char* parameters do not work correctlywith RESTProcess on Windows MXE builds
Associative containers do not json deserialise from a list
Associative containers do not deserialise from a list
RESTService calls base class methods by preference to derived class methods
test/00/t0015a.sh failing
Seems to have been a bash bug. Fixed with little scripting fu.
Classes derived from smart pointers should be treated as such
Check alternative metaprogramming libs to speed up functional compilation
Check alternative metaprogramming libs to speed up functional compilation
test/00/t0015a.sh failing
Overridden members cause problems with xml_pack
Overridden members cause problems with xml_pack
>> causes problem with pragma omit
Braces used in member initialisation also cause problems, even if -overload is not selected.
Incorrect parsing
classdesc doesn't handle -> return type decls
classdesc misparses >> in return type of overloaded function
classdesc misparses >> in return type of overloaded function
classdesc misparses >> in return type of overloaded function
Workaround is to overload the functions instead of using a default argument.
The problem is probably the quoted comma is being interpreted as an argument separator
Classdesc parses default argument incorrectly when -overload slected
functional::eval should be able to call a function taking a non copiable argument
round bracket member initialisation not processed correctly
add C++11 move operations where appropriate
inner class within template processed incorrectly
-Werror complains about unused typedefs
typeName for a template with template parameters could be improved.
Done some time ago, it would appear
add support for std::array to all descriptors
enums declared part of class not exposed to python
Turns out this was being done, but it is necessary to process the outer class first first (SciDAVis) before the enum. Since the enum was being automatically processed in the ApplicationWindow processing, the SciDAVis descriptor needs to be called first.
enums declared part of class not exposed to python
eg typeName<foo<int>> should expand to "Foo<int>" not "Foo<t>".</t></int></foo<int>
Remove objective C support
Fails to emit any descriptors
Fails to emit any descriptors
yaml serialiser
is_integral<unsigned int64_t> missing
It appears that technically, unsigned int64_t is an invalid type (although the compiler appears to accept it :). The correct type to use is uint64_t. The test problem is fixed appropriately.
various valid enum forms do not work with Classdesc.
private class inserted into classdesc output
And clang on OpenSUSE
private class inserted into classdesc output
Added the pragma to classdesc output. The typedefs are required for odd situations where a type has been declared, and then used in a base class definition.
base member imported with using clashes
Added code to classdesc to detect using statements and remove potential overloads.
#ifdef out auto_ptr support if C++17 used.
/Users/rks/usr/ecolab/include/classdesc.h:485:7: note: candidate function not viable: no known conversion from 'minsky::Canvas::LassoMode' to 'std::string' (aka 'basic_string<char, char_traits<char="">, allocator<char> >') for 1st argument T operator()(std::string key) const { ^ /Users/rks/usr/ecolab/include/classdesc.h:490:17: note: candidate function not viable: no known conversion from 'minsky::Canvas::LassoMode' to 'int' for 1st argument std::string operator()(int val) const
enum class not supported on clang on MacOSX
Some enum value definitions cuase invalid code to be emitted.
Some enum value definitions cuase invalid code to be emitted.
add support for std::array to all descriptors
#ifdef out auto_ptr support if C++17 used.
typeName for a template with template parameters could be improved.
C++11 using statements within classes not handled correctly.