﻿interface System.Collections.Generic.IDictionary<K, V> System.Collections.IDictionary : ICollection<KeyValuePair<K, V>>  
	arrayitemtype KeyValuePair<K, V>
	java java.util.Map
	python dict
	js service Hashtable
	php service Dictionary
	rust service NDict
	rustref service NDictRef
	rustprim service NDictRef

method IEnumerator<KeyValuePair<K, V>> GetEnumerator()
	java =entrySet
	python iter({!})
	js {!}.entries
	php {!}->GetEntries()->items
	rust {!}.map.iter()

property get int Count
	java {!}.size()
	python len({!})
	js {!}.length
	php {!}->Count()
	rust {!}.len()

method void Clear() changelength
	java =clear
	python =clear
	js =clear
	php =Clear
	rust =clear

indexer get V [K]
	java {!}.get({0})
	python {!}[{0}]
	js {!}.get({0})
	php {!}->Get({0})
	rust {!}.get({0&}) return&
	rustref {!}.get({0&})
	rustprim {!}.get({0&})

indexer set V [K]  
	java {!}.put({0}, {1})
	python {!}[{0}] = {1}
	js {!}.put({0}, {1})
	php {!}->Put({0}, {1})
	rust {!}.set({0&}, {1*}) return&
	rustref {!}.set({0&}, {1&}) return&
	rustprim {!}.set({0&}, {1})

method void Add(K, V) changelength
	java =put
	python {!}[{0}] = {1}
	js =put
	php =Put
	rust {!}.add({0*}, {1*})
	rustref {!}.add({0*}, {1&})
	rustprim {!}.add({0*}, {1})

method void Remove(K) changelength
	java =remove
	python del {!}[{0}]
	js =remove
	php =Remove
	rust {!}.remove({0&})

method bool ContainsKey(K)
	java =containsKey
	python {0} in {!}
	js =containsKey
	php =ContainsKey
	rust {!}.contains({0&})

method bool ContainsValue(V)
	java =containsValue
	python {0} in {!}.values()
	js =containsValue
	php =ContainsValue
	rust {!}.contains_value({0&})
	rustref {!}.contains_value({0&})
	rustprim {!}.contains_value({0})

method bool TryGetValue(K, out V)
	java Utils.tryGetValue({!}, {0}, {1})
	python hardcode DictTryGetValuePython
	js =tryGetValue
	php =TryGetValue
	rust hardcode DictTryGetValueRust

property get ICollection<K> Keys
	java {!}.keySet()
	python {!}.keys()
	js {!}.keys
	php {!}->GetKeys()
	rust {!}.map.keys()

property get ICollection<V> Values
	java {!}.values()
	python {!}.values()
	js {!}.values
	php {!}->GetValues()
	rust {!}.map.values()

