| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
example
|
|\ |
|
| |
| |
| |
| |
| | |
For testing legacy flattened static method access for when
issue #2137 is applied.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fix access to C++ static member functions using Python class
staticmethod syntax, such as Klass.memberfunction instead of
Klass_memberfunction, when using -fastproxy and -builtin in
combination with %callback.
The docstring containing the callback pointers were not being patched
during module initialisation.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Accept keyword arguments accessing C++ static member functions when
using -builtin and kwargs feature and Python class staticmethod syntax.
The missing keyword argument support was only when using the
class staticmethod syntax, not when using the flat static method
syntax.
|
| |
| |
| |
| |
| |
| | |
Use Python class staticmethod syntax to access C++ static member functions,
such as Klass.memberfunction, instead of Klass_memberfunction.
Examples and test-suite changes in preparation for issue #2137.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Unfortunately Travis CI can't be used for building open source projects
any longer in practice, as extra credits must be manually requested
every time from Travis support, which is just infeasible, as this would
need to be done every couple of days if not more often, and support
reply time is anything from a couple of days to more than a month.
So stop even trying to use it, as it doesn't work anyhow, and switch to
using GitHub Actions only.
Closes #2067
|
| | |
|
| |\
| | |
| | | |
Use suffix for static methods added by %extend
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This avoids conflicts between such functions, which are generated when
using %extend to add static methods to an existing class, and the actual
wrapper functions generated by the backend.
This shouldn't result in any user-visible changes.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
No real changes, just move the test for "code" to the outer scope to
facilitate the upcoming changes.
This commit is best viewed ignoring whitespace-only changes.
|
| | |
| | |
| | |
| | | |
[skip-ci]
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
Support std::array in Golang
Closes #2045
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We've dropped support for the old V8 versions which lacked version
macros, and SWIG_V8_VERSION now gets automatically defined by
Lib/javascript/v8/javascriptruntime.swg which will #undef it first if
it's already defined.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
This serves as a regression test for
https://sourceforge.net/p/swig/bugs/1339/ which was presumably fixed by
the change to use PHP's C API to wrap classes.
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
With C++ comments changed to C comments, these are now identical to
the two cases just above, aside from the `2` suffix on the names.
Follow-on for #2027.
|
| | |
| | |
| | |
| | |
| | | |
Move C++ comment testing into here.
See 7a9bf3307f9436c0f48eecd155c721c86a0f4058.
|
| | | |
|
| | |
| | |
| | |
| | | |
Closes issue #2127
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We have the swig_type_info available and SWIG_TypeCheckStruct
is more efficient because it uses a pointer comparison instead of the
string comparison SWIG_TypeCheck uses (this change speeds up `make
check-php-test-suite` by about 10%).
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Add PHP keyword 'readonly' (added in 8.1) to the list SWIG knows to
automatically rename. This keyword is special in that PHP allows it to
be used as a function (or method) name.
|
| | |
| | |
| | |
| | |
| | | |
Ref count destroying has worked for years (and is explicitly tested
by swig_exception_runme.php).
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
A few files had just <? which only works when the short_open_tag option
is on. It is on by default (at least in current PHP versions) and we
explicitly tell PHP not to read php.ini, but the PHP docs recommended to
avoid it, and PHP can be built with --disable-short-tags.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
The previous version didn't really test anything useful. Now we
check that trying to instantiate any of the abstract classes fails
with the expected error.
|
| |\ \ |
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Previously the zend_class_entry for Foo was named SWIGTYPE_Foo_ce, but
this can collide in some cases - e.g. if there's a class named p_Foo
then its zend_class entry will be SWIGTYPE_p_Foo_ce, but that's the same
as the swig_type_info for a class named p_Foo_ce.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Do more initialisation at module load time.
Use a shared set of handlers for cases when the C/C++ object is
destroyed with free().
Most of the code in the free_obj and create_object handlers is the
same for every wrapped class so factor that out into common functions.
|
| | | | |
|
| |/ /
| | |
| | |
| | |
| | | |
We shouldn't be using symbols starting `php` as that risks collisions
with future symbols defined by PHP.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
The only functional change is that we now recover after
WARN_TYPEMAP_IN_UNDEF better (or at least like most of the other
SWIG backends do).
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
For example, `Char(foo)[0]` now works to get the first character
of DOH String `foo`.
Previously this gave a confusing error because it expanded to
`(char *) Data(foo)[0]` and the `[0]` binds more tightly
than the `(char *)`.
|
| | |
| | |
| | |
| | |
| | |
| | | |
This typemap which would wrap C++ bool as PHP int is later overridden
by another which wraps it as PHP bool. The current result is what
we want so just remove the redundant one.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
We no longer wrap anything as a PHP resource.
|
| | |
| | |
| | |
| | | |
These are leftovers from the work on wrapping using only PHP's C API.
|