[C++-sig] Improved pyste
Niall Douglas
s_sourceforge at nedprod.com
Tue Jun 7 19:01:32 CEST 2005
(The file is at http://www.nedprod.com/Pyste.zip as it seems you
can't post attachments here)
Enclosed is a further improved version of pyste over the one I sent
some months ago. This is from the pyste in v1.32. Here are the
changes:
* Overloads were being declared multiply per code unit if they
applied to each class, now they are output only once
* friend functions of classes which overload weren't being
distinguished between by casting (fixed by brute force casting all
functions)
* Outputs things missing a policy to a file for more easier browsing
* Fixed a bug where it was missing "artificial" copy constructors ie;
ones generated by the compiler
* Got AllFromHeader() to maintain a list of things it exported so the
pyste file can know what policies to apply. This is very much a hack
and would conflict with anything in the header file called "exporter"
* Fixed AllFromHeader() breaking application of bases<> to class
definitions
* Added new SplitOutput() directive which can split output into
multiple files, thus avoiding MSVC's "internal structure overflow"
error. Note that the implementation of this is pretty hacky
This is in addition to the previous enhancements:
* Support for void* by casting to void_* and treating it as an opaque
pointer. This is a major new feature for wrapping most code.
* Prevents the problem of throw() specifiers confusing Boost.Python
by casting them off
* Passing of gccxml errors out so you can see what's confusing
GCC/GCCXML (handy when you develop primarily with MSVC)
* Protected virtual methods are no longer wrapped as there were
access problems. I've had similar problems with protected
inheritance.
Cheers,
Niall
More information about the Cplusplus-sig
mailing list