diff --git a/Lib/java/std_map.i b/Lib/java/std_map.i index 357401a4d..4b891e74a 100644 --- a/Lib/java/std_map.i +++ b/Lib/java/std_map.i @@ -46,10 +46,10 @@ namespace std { -template > class map { +template > class map { -%typemap(javabase) std::map - "java.util.AbstractMap<$typemap(jboxtype, KeyType), $typemap(jboxtype, MappedType)>" +%typemap(javabase) std::map< K, T, C > + "java.util.AbstractMap<$typemap(jboxtype, K), $typemap(jboxtype, T)>" %proxycode %{ @@ -58,19 +58,19 @@ template } public boolean containsKey(Object key) { - if (!(key instanceof $typemap(jboxtype, KeyType))) { + if (!(key instanceof $typemap(jboxtype, K))) { return false; } - return containsImpl(($typemap(jboxtype, KeyType))key); + return containsImpl(($typemap(jboxtype, K))key); } - public $typemap(jboxtype, MappedType) get(Object key) { - if (!(key instanceof $typemap(jboxtype, KeyType))) { + public $typemap(jboxtype, T) get(Object key) { + if (!(key instanceof $typemap(jboxtype, K))) { return null; } - Iterator itr = find(($typemap(jboxtype, KeyType)) key); + Iterator itr = find(($typemap(jboxtype, K)) key); if (itr.isNot(end())) { return itr.getValue(); } @@ -78,10 +78,10 @@ template return null; } - public $typemap(jboxtype, MappedType) put($typemap(jboxtype, KeyType) key, $typemap(jboxtype, MappedType) value) { - Iterator itr = find(($typemap(jboxtype, KeyType)) key); + public $typemap(jboxtype, T) put($typemap(jboxtype, K) key, $typemap(jboxtype, T) value) { + Iterator itr = find(($typemap(jboxtype, K)) key); if (itr.isNot(end())) { - $typemap(jboxtype, MappedType) oldValue = itr.getValue(); + $typemap(jboxtype, T) oldValue = itr.getValue(); itr.setValue(value); return oldValue; } else { @@ -90,14 +90,14 @@ template } } - public $typemap(jboxtype, MappedType) remove(Object key) { - if (!(key instanceof $typemap(jboxtype, KeyType))) { + public $typemap(jboxtype, T) remove(Object key) { + if (!(key instanceof $typemap(jboxtype, K))) { return null; } - Iterator itr = find(($typemap(jboxtype, KeyType)) key); + Iterator itr = find(($typemap(jboxtype, K)) key); if (itr.isNot(end())) { - $typemap(jboxtype, MappedType) oldValue = itr.getValue(); + $typemap(jboxtype, T) oldValue = itr.getValue(); removeUnchecked(itr); return oldValue; } else { @@ -105,31 +105,31 @@ template } } - public java.util.Set> entrySet() { - java.util.Set> setToReturn = - new java.util.HashSet>(); + public java.util.Set> entrySet() { + java.util.Set> setToReturn = + new java.util.HashSet>(); Iterator itr = begin(); final Iterator end = end(); while (itr.isNot(end)) { - setToReturn.add(new Entry<$typemap(jboxtype, KeyType), $typemap(jboxtype, MappedType)>() { + setToReturn.add(new Entry<$typemap(jboxtype, K), $typemap(jboxtype, T)>() { private Iterator iterator; - private Entry<$typemap(jboxtype, KeyType), $typemap(jboxtype, MappedType)> init(Iterator iterator) { + private Entry<$typemap(jboxtype, K), $typemap(jboxtype, T)> init(Iterator iterator) { this.iterator = iterator; return this; } - public $typemap(jboxtype, KeyType) getKey() { + public $typemap(jboxtype, K) getKey() { return iterator.getKey(); } - public $typemap(jboxtype, MappedType) getValue() { + public $typemap(jboxtype, T) getValue() { return iterator.getValue(); } - public $typemap(jboxtype, MappedType) setValue($typemap(jboxtype, MappedType) newValue) { - $typemap(jboxtype, MappedType) oldValue = iterator.getValue(); + public $typemap(jboxtype, T) setValue($typemap(jboxtype, T) newValue) { + $typemap(jboxtype, T) oldValue = iterator.getValue(); iterator.setValue(newValue); return oldValue; } @@ -144,9 +144,9 @@ template public: typedef size_t size_type; typedef ptrdiff_t difference_type; - typedef KeyType key_type; - typedef MappedType mapped_type; - typedef std::pair< const KeyType, MappedType > value_type; + typedef K key_type; + typedef T mapped_type; + typedef std::pair< const K, T > value_type; typedef value_type* pointer; typedef const value_type* const_pointer; typedef value_type& reference; @@ -158,8 +158,8 @@ template struct iterator { %typemap(javaclassmodifiers) iterator "protected class" %extend { - std::map::iterator getNextUnchecked() { - std::map::iterator copy = (*$self); + std::map< K, T, C >::iterator getNextUnchecked() { + std::map< K, T, C >::iterator copy = (*$self); return ++copy; } @@ -167,15 +167,15 @@ template return (*$self != other); } - KeyType getKey() const { + K getKey() const { return (*$self)->first; } - MappedType getValue() const { + T getValue() const { return (*$self)->second; } - void setValue(const MappedType& newValue) { + void setValue(const T& newValue) { (*$self)->second = newValue; } } @@ -184,7 +184,7 @@ template %rename(isEmpty) empty; bool empty() const; void clear(); - iterator find(const KeyType& key); + iterator find(const K& key); iterator begin(); iterator end(); %extend { @@ -194,15 +194,15 @@ template return SWIG_MapSize(self->size()); } - bool containsImpl(const KeyType& key) { + bool containsImpl(const K& key) { return (self->count(key) > 0); } - void putUnchecked(const KeyType& key, const MappedType& value) { + void putUnchecked(const K& key, const T& value) { (*self)[key] = value; } - void removeUnchecked(const std::map::iterator itr) { + void removeUnchecked(const std::map< K, T, C >::iterator itr) { self->erase(itr); } } diff --git a/Lib/java/std_unordered_map.i b/Lib/java/std_unordered_map.i index 57ebe4e39..8f62d7290 100644 --- a/Lib/java/std_unordered_map.i +++ b/Lib/java/std_unordered_map.i @@ -46,10 +46,10 @@ namespace std { -template class unordered_map { +template class unordered_map { -%typemap(javabase) std::unordered_map - "java.util.AbstractMap<$typemap(jboxtype, KeyType), $typemap(jboxtype, MappedType)>" +%typemap(javabase) std::unordered_map + "java.util.AbstractMap<$typemap(jboxtype, K), $typemap(jboxtype, T)>" %proxycode %{ @@ -58,19 +58,19 @@ template class unordered_map { } public boolean containsKey(Object key) { - if (!(key instanceof $typemap(jboxtype, KeyType))) { + if (!(key instanceof $typemap(jboxtype, K))) { return false; } - return containsImpl(($typemap(jboxtype, KeyType))key); + return containsImpl(($typemap(jboxtype, K))key); } - public $typemap(jboxtype, MappedType) get(Object key) { - if (!(key instanceof $typemap(jboxtype, KeyType))) { + public $typemap(jboxtype, T) get(Object key) { + if (!(key instanceof $typemap(jboxtype, K))) { return null; } - Iterator itr = find(($typemap(jboxtype, KeyType)) key); + Iterator itr = find(($typemap(jboxtype, K)) key); if (itr.isNot(end())) { return itr.getValue(); } @@ -78,10 +78,10 @@ template class unordered_map { return null; } - public $typemap(jboxtype, MappedType) put($typemap(jboxtype, KeyType) key, $typemap(jboxtype, MappedType) value) { - Iterator itr = find(($typemap(jboxtype, KeyType)) key); + public $typemap(jboxtype, T) put($typemap(jboxtype, K) key, $typemap(jboxtype, T) value) { + Iterator itr = find(($typemap(jboxtype, K)) key); if (itr.isNot(end())) { - $typemap(jboxtype, MappedType) oldValue = itr.getValue(); + $typemap(jboxtype, T) oldValue = itr.getValue(); itr.setValue(value); return oldValue; } else { @@ -90,14 +90,14 @@ template class unordered_map { } } - public $typemap(jboxtype, MappedType) remove(Object key) { - if (!(key instanceof $typemap(jboxtype, KeyType))) { + public $typemap(jboxtype, T) remove(Object key) { + if (!(key instanceof $typemap(jboxtype, K))) { return null; } - Iterator itr = find(($typemap(jboxtype, KeyType)) key); + Iterator itr = find(($typemap(jboxtype, K)) key); if (itr.isNot(end())) { - $typemap(jboxtype, MappedType) oldValue = itr.getValue(); + $typemap(jboxtype, T) oldValue = itr.getValue(); removeUnchecked(itr); return oldValue; } else { @@ -105,31 +105,31 @@ template class unordered_map { } } - public java.util.Set> entrySet() { - java.util.Set> setToReturn = - new java.util.HashSet>(); + public java.util.Set> entrySet() { + java.util.Set> setToReturn = + new java.util.HashSet>(); Iterator itr = begin(); final Iterator end = end(); while (itr.isNot(end)) { - setToReturn.add(new Entry<$typemap(jboxtype, KeyType), $typemap(jboxtype, MappedType)>() { + setToReturn.add(new Entry<$typemap(jboxtype, K), $typemap(jboxtype, T)>() { private Iterator iterator; - private Entry<$typemap(jboxtype, KeyType), $typemap(jboxtype, MappedType)> init(Iterator iterator) { + private Entry<$typemap(jboxtype, K), $typemap(jboxtype, T)> init(Iterator iterator) { this.iterator = iterator; return this; } - public $typemap(jboxtype, KeyType) getKey() { + public $typemap(jboxtype, K) getKey() { return iterator.getKey(); } - public $typemap(jboxtype, MappedType) getValue() { + public $typemap(jboxtype, T) getValue() { return iterator.getValue(); } - public $typemap(jboxtype, MappedType) setValue($typemap(jboxtype, MappedType) newValue) { - $typemap(jboxtype, MappedType) oldValue = iterator.getValue(); + public $typemap(jboxtype, T) setValue($typemap(jboxtype, T) newValue) { + $typemap(jboxtype, T) oldValue = iterator.getValue(); iterator.setValue(newValue); return oldValue; } @@ -144,9 +144,9 @@ template class unordered_map { public: typedef size_t size_type; typedef ptrdiff_t difference_type; - typedef KeyType key_type; - typedef MappedType mapped_type; - typedef std::pair< const KeyType, MappedType > value_type; + typedef K key_type; + typedef T mapped_type; + typedef std::pair< const K, T > value_type; typedef value_type* pointer; typedef const value_type* const_pointer; typedef value_type& reference; @@ -158,8 +158,8 @@ template class unordered_map { struct iterator { %typemap(javaclassmodifiers) iterator "protected class" %extend { - std::unordered_map::iterator getNextUnchecked() { - std::unordered_map::iterator copy = (*$self); + std::unordered_map< K, T >::iterator getNextUnchecked() { + std::unordered_map< K, T >::iterator copy = (*$self); return ++copy; } @@ -167,15 +167,15 @@ template class unordered_map { return (*$self != other); } - KeyType getKey() const { + K getKey() const { return (*$self)->first; } - MappedType getValue() const { + T getValue() const { return (*$self)->second; } - void setValue(const MappedType& newValue) { + void setValue(const T& newValue) { (*$self)->second = newValue; } } @@ -184,7 +184,7 @@ template class unordered_map { %rename(isEmpty) empty; bool empty() const; void clear(); - iterator find(const KeyType& key); + iterator find(const K& key); iterator begin(); iterator end(); %extend { @@ -194,15 +194,15 @@ template class unordered_map { return SWIG_MapSize(self->size()); } - bool containsImpl(const KeyType& key) { + bool containsImpl(const K& key) { return (self->count(key) > 0); } - void putUnchecked(const KeyType& key, const MappedType& value) { + void putUnchecked(const K& key, const T& value) { (*self)[key] = value; } - void removeUnchecked(const std::unordered_map::iterator itr) { + void removeUnchecked(const std::unordered_map< K, T >::iterator itr) { self->erase(itr); } }