re-enabled the Map.Entry key/value properties (not quite sure why they were disabled, tests all seem to work?) and tidied up the sample code for the kdocs
This commit is contained in:
@@ -4,8 +4,7 @@ import java.util.Map as JMap
|
||||
import java.util.HashMap
|
||||
import java.util.Collections
|
||||
|
||||
// Temporary workaround: commenting out
|
||||
//import java.util.Map.Entry as JEntry
|
||||
import java.util.Map.Entry as JEntry
|
||||
|
||||
// Map APIs
|
||||
|
||||
@@ -26,14 +25,12 @@ public inline fun <K,V> java.util.Map<K,V>?.orEmpty() : java.util.Map<K,V>
|
||||
|
||||
|
||||
/** Returns the key of the entry */
|
||||
// Temporary workaround: commenting out
|
||||
//val <K,V> JEntry<K,V>.key : K
|
||||
// get() = getKey().sure()
|
||||
val <K,V> JEntry<K,V>.key : K
|
||||
get() = getKey().sure()
|
||||
|
||||
/** Returns the value of the entry */
|
||||
// Temporary workaround: commenting out
|
||||
//val <K,V> JEntry<K,V>.value : V
|
||||
// get() = getValue().sure()
|
||||
val <K,V> JEntry<K,V>.value : V
|
||||
get() = getValue().sure()
|
||||
|
||||
/**
|
||||
* Returns the value for the given key or returns the result of the defaultValue function if there was no entry for the given key
|
||||
@@ -69,7 +66,7 @@ public inline fun <K,V> java.util.Map<K,V>.getOrPut(key: K, defaultValue: ()-> V
|
||||
/**
|
||||
* Returns an [[Iterator]] over the entries in the [[Map]]
|
||||
*
|
||||
* @includeFunctionBody ../../test/MapTest.kt iterate
|
||||
* @includeFunctionBody ../../test/MapTest.kt iterateWithProperties
|
||||
*/
|
||||
public inline fun <K,V> java.util.Map<K,V>.iterator(): java.util.Iterator<java.util.Map.Entry<K,V>> {
|
||||
val entrySet = this.entrySet()!!
|
||||
|
||||
@@ -52,42 +52,31 @@ class MapTest {
|
||||
map["location"] = "Mells"
|
||||
map["name"] = "James"
|
||||
|
||||
var list = arrayList<String>()
|
||||
val list = arrayList<String>()
|
||||
for (e in map) {
|
||||
println("key = ${e.getKey()}, value = ${e.getValue()}")
|
||||
|
||||
list.add(e.getKey())
|
||||
list.add(e.getValue())
|
||||
/*
|
||||
// TODO compiler bug
|
||||
list += e.getKey()
|
||||
list += e.getValue()
|
||||
*/
|
||||
}
|
||||
|
||||
assertEquals(6, list.size())
|
||||
assertEquals("beverage,beer,location,Mells,name,James", list.makeString(","))
|
||||
}
|
||||
|
||||
/*
|
||||
TODO compiler bug
|
||||
|
||||
test fun iteratorWithProperties() {
|
||||
test fun iterateWithProperties() {
|
||||
val map = TreeMap<String, String>()
|
||||
map["beverage"] = "beer"
|
||||
map["location"] = "Mells"
|
||||
map["name"] = "James"
|
||||
|
||||
var list = arrayList<String>()
|
||||
val list = arrayList<String>()
|
||||
for (e in map) {
|
||||
println("got $e")
|
||||
println("key = ${e.key}, value = ${e.value}")
|
||||
list += e.key
|
||||
list += e.value
|
||||
list.add(e.key)
|
||||
list.add(e.value)
|
||||
}
|
||||
|
||||
assertEquals(6, list.size())
|
||||
assertEquals("beverage,beer,location,Mells,name,James", list.makeString(","))
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user