Fix std::vector<> Java typemaps for primitive types
For such types, the generated proxy class inherited from java.util.AbstractSet<BoxedType<T>> (where BoxedType<T> is "Integer", for example, when T is "int"), but defined an overloaded add() taking T, instead of overriding the base class virtual add() taking BoxedType<T>, resulting in an exception being thrown whenever add() was called during run-time. Extend Java unit test to bring it to parity with C# one added in the previous commit. See #1568.
This commit is contained in:
parent
28c6140c56
commit
2be293a647
3 changed files with 14 additions and 4 deletions
|
|
@ -57,6 +57,10 @@ class set {
|
|||
return sizeImpl();
|
||||
}
|
||||
|
||||
public boolean add($typemap(jboxtype, T) key) {
|
||||
return addImpl(key);
|
||||
}
|
||||
|
||||
public boolean addAll(java.util.Collection<? extends $typemap(jboxtype, T)> collection) {
|
||||
boolean didAddElement = false;
|
||||
for (java.lang.Object object : collection) {
|
||||
|
|
@ -172,7 +176,7 @@ class set {
|
|||
%fragment("SWIG_SetSize");
|
||||
|
||||
// Returns whether item was inserted.
|
||||
bool add(const T& key) {
|
||||
bool addImpl(const T& key) {
|
||||
return self->insert(key).second;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue