@ file : Suppress (" unused ") čĊč Ċ package Ġgod ot . core čĊč Ċ import Ġgod ot . annotation . Core Type Helper č Ċ import Ġgod ot . util . Map Iterator č Ċ import Ġgod ot . util . Void Ptr čĊč Ċ class ĠDictionary < K , ĠV > Ġ: ĠNative Core Type , ĠMutable Map < K , ĠV >{ čĊčĊĠĠĠ Ġinternal Ġvar Ġkey Variant Type Ġ= ĠVariant Type . NIL čĊĠĠĠ Ġinternal Ġvar Ġvalue Variant Type Ġ= ĠVariant Type . NIL čĊčĊĠĠĠ Ġ@ Published Api čĊĠĠĠ Ġinternal Ġconstructor ( handle : ĠVoid Ptr ) Ġ{ čĊĠĠĠĠĠĠĠ Ġkey Variant Type Ġ= ĠVariant Type . ANY čĊĠĠĠĠĠĠĠ Ġvalue Variant Type Ġ= ĠVariant Type . ANY čĊĠĠĠĠĠĠĠ Ġ_ handle Ġ= Ġhandle čĊĠĠĠĠĠĠĠ ĠG arbage Collector . register Native Core Type ( this , ĠVariant Type . DI CTIONARY ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ@ Published Api čĊĠĠĠ Ġinternal Ġconstructor ( key Variant Type : ĠVariant Type , Ġvalue Variant Type : ĠVariant Type ) Ġ{ čĊĠĠĠĠĠĠĠ Ġthis . key Variant Type Ġ= Ġkey Variant Type čĊĠĠĠĠĠĠĠ Ġthis . value Variant Type Ġ= Ġvalue Variant Type čĊĠĠĠĠĠĠĠ Ġ_ handle Ġ= ĠBridge . engine _ call _ constructor () čĊĠĠĠĠĠĠĠ ĠG arbage Collector . register Native Core Type ( this , ĠVariant Type . DI CTIONARY ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ// ######################## PUBLIC ######################## ####### čĊĠĠĠ Ġ// PROPERTIES čĊĠĠĠ Ġoverride Ġval Ġsize : ĠInt čĊĠĠĠĠĠĠĠ Ġget () Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠ ĠBridge . engine _ call _ size (_ handle ) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠTransfer Context . read ReturnValue ( Variant Type . JVM _ INT ) Ġas ĠInt čĊĠĠĠĠĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġval Ġkeys : ĠMutable Set < K > čĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġobject Ġ: ĠAbstract Mutable Set < K >() Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġadd ( element : ĠK ): ĠBoolean Ġ= Ġthrow ĠUnsupportedOperationException (" Add Ġis Ġnot Ġsupported Ġon Ġkeys ") čĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġclear () Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Dictionary . clear () čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊčĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġoperator Ġfun Ġcontains ( element : ĠK ): ĠBoolean Ġ= Ġcontains Key ( element ) čĊčĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġoperator Ġfun Ġiterator (): ĠMutable Iterator < K > Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġentry Iterator Ġ= Ġkeys (). iterator () čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠMutable Iterator < K > Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġhas Next (): ĠBoolean Ġ= Ġentry Iterator . hasNext () čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġnext (): ĠK Ġ= Ġentry Iterator . next () čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġremove () Ġ= Ġthrow ĠUnsupportedOperationException (" Remove Ġis Ġnot Ġsupported Ġon Ġkeys ") čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊčĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġremove ( element : ĠK ): ĠBoolean Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( containsKey ( element )) Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Dictionary . remove ( element ) čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊčĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġval Ġsize : ĠInt Ġget () Ġ= Ġthis @ Dictionary . size čĊĠĠĠĠĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġval Ġvalues : ĠMutable Collection < V > čĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġobject Ġ: ĠAbstract Mutable Collection < V >() Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġadd ( element : ĠV ): ĠBoolean Ġ= čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠUnsupportedOperationException (" Add Ġis Ġnot Ġsupported Ġon Ġvalues ") čĊčĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġclear () Ġ= Ġthis @ Dictionary . clear () čĊčĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġoperator Ġfun Ġcontains ( element : ĠV ): ĠBoolean Ġ= Ġcontains Value ( element ) čĊčĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġoperator Ġfun Ġiterator (): ĠMutable Iterator < V > Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġentry Iterator Ġ= Ġvalues (). iterator () čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠMutable Iterator < V > Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġhas Next (): ĠBoolean Ġ= Ġentry Iterator . hasNext () čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġnext (): ĠV Ġ= Ġentry Iterator . next () čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġremove () Ġ= Ġthrow ĠUnsupportedOperationException (" Remove Ġis Ġnot Ġsupported Ġon Ġvalues ") čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊčĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġval Ġsize : ĠInt Ġget () Ġ= Ġthis @ Dictionary . size čĊĠĠĠĠĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġval Ġentries : ĠMutable Set < Mutable Map . Mutable Entry < K , ĠV >> čĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġobject Ġ: ĠAbstract Mutable Set < Mutable Map . Mutable Entry < K , ĠV >>() Ġ{ čĊčĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġadd ( element : ĠMutable Map . Mutable Entry < K , ĠV >): ĠBoolean Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġret Ġ= Ġhas ( element . key ) čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Dictionary [ element . key ] Ġ= Ġelement . value čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġret čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊčĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġclear () Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Dictionary . clear () čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊčĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġoperator Ġfun Ġcontains ( element : ĠMutable Map . Mutable Entry < K , ĠV >): ĠBoolean Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġget ( element . key , Ġnull ) čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( value Ġ== Ġelement . value ) Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊčĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġoperator Ġfun Ġiterator (): ĠMap Iterator < K , ĠV > Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠMap Iterator ( čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Dictionary . keys . iterator (), čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Dictionary :: get , čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Dictionary :: set , čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Dictionary :: erase čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊčĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġremove ( element : ĠMutable Map . Mutable Entry < K , ĠV >): ĠBoolean Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġget ( element . key , Ġnull ) čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( value Ġ== Ġelement . value ) Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Dictionary . remove ( element . key ) čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊčĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġval Ġsize : ĠInt Ġget () Ġ= Ġthis @ Dictionary . size čĊĠĠĠĠĠĠĠ Ġ} čĊč Ċ // CON STRUCTOR čĊĠĠĠ Ġ/** čĊĠĠĠĠ Ġ* ĠCreate Ġa Ġshallow Ġcopy Ġof Ġthe ĠDictionary čĊĠĠĠĠ Ġ*/ čĊĠĠĠ Ġconstructor ( other : ĠDictionary < K , ĠV >) Ġ{ čĊĠĠĠĠĠĠĠ Ġkey Variant Type Ġ= Ġother . key Variant Type čĊĠĠĠĠĠĠĠ Ġvalue Variant Type Ġ= Ġother . value Variant Type čĊĠĠĠĠĠĠĠ Ġ_ handle Ġ= Ġother ._ handle čĊĠĠĠĠĠĠĠ ĠG arbage Collector . register Native Core Type ( this , ĠVariant Type . DI CTIONARY ) čĊĠĠĠ Ġ} čĊčĊč Ċ // API čĊĠĠĠ Ġ/** čĊĠĠĠĠ Ġ* ĠClear Ġthe Ġdictionary , Ġremoving Ġall Ġkey / value Ġpairs . čĊĠĠĠĠ Ġ*/ čĊĠĠĠ Ġoverride Ġfun Ġclear () Ġ{ čĊĠĠĠĠĠĠĠ ĠBridge . engine _ call _ clear (_ handle ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġfun Ġcontains Key ( key : ĠK ) Ġ= Ġcontains ( key ) čĊčĊĠĠĠ Ġoverride Ġfun Ġcontains Value ( value : ĠV ): ĠBoolean Ġ{ čĊĠĠĠĠĠĠĠ Ġvalues . forEach Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( it Ġ== Ġvalue ) čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue čĊĠĠĠĠĠĠĠ Ġ} čĊĠĠĠĠĠĠĠ Ġreturn Ġfalse čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ/** čĊĠĠĠĠ Ġ* ĠCreates Ġa Ġcopy Ġof Ġthe Ġdictionary , Ġand Ġreturns Ġit . čĊĠĠĠĠ Ġ* ĠThe Ġdeep Ġparameter Ġcauses Ġinner Ġdictionaries Ġand Ġarrays Ġto Ġbe Ġcopied Ġrecursively , Ġbut Ġdoes Ġnot Ġapply Ġto Ġobjects . čĊĠĠĠĠ Ġ*/ čĊčĊĠĠĠ Ġfun Ġduplicate ( deep : ĠBoolean ): ĠDictionary < K , ĠV > Ġ{ čĊĠĠĠĠĠĠĠ ĠTransfer Context . write Arguments ( Variant Type . BOOL Ġto Ġdeep ) čĊĠĠĠĠĠĠĠ ĠBridge . engine _ call _ duplicate (_ handle ) čĊĠĠĠĠĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") čĊĠĠĠĠĠĠĠ Ġreturn Ġ( Transfer Context . read ReturnValue ( Variant Type . DI CTIONARY ) Ġas ĠDictionary < K , ĠV >). also Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . key Variant Type Ġ= Ġkey Variant Type čĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . value Variant Type Ġ= Ġvalue Variant Type čĊĠĠĠĠĠĠĠ Ġ} čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ/** čĊĠĠĠĠ Ġ* ĠReturns Ġtrue Ġif Ġthe Ġdictionary Ġis Ġempty . čĊĠĠĠĠ Ġ*/ čĊĠĠĠ Ġfun Ġempty (): ĠBoolean Ġ{ čĊĠĠĠĠĠĠĠ ĠBridge . engine _ call _ empty (_ handle ) čĊĠĠĠĠĠĠĠ Ġreturn ĠTransfer Context . read ReturnValue ( Variant Type . BOOL ) Ġas ĠBoolean čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ/** čĊĠĠĠĠ Ġ* ĠE rase Ġa Ġdictionary Ġkey / value Ġpair Ġby Ġkey . ĠDoes n 't Ġreturn Ġa ĠBoolean Ġlike Ġthe ĠG D Script Ġversion Ġbecause Ġthe ĠG D Native Ġfunction Ġdoesn 't Ġreturn Ġanything čĊĠĠĠĠ Ġ*/ čĊĠĠĠ Ġfun Ġerase ( key : ĠK ) Ġ{ čĊĠĠĠĠĠĠĠ ĠTransfer Context . write Arguments ( key Variant Type Ġto Ġkey ) čĊĠĠĠĠĠĠĠ ĠBridge . engine _ call _ erase (_ handle ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ/** čĊĠĠĠĠ Ġ* ĠReturns Ġthe Ġcurrent Ġvalue Ġfor Ġthe Ġspecified Ġkey Ġin Ġthe ĠDictionary . čĊĠĠĠĠ Ġ* ĠIf Ġthe Ġkey Ġdoes Ġnot Ġexist , Ġthe Ġmethod Ġreturns Ġthe Ġvalue Ġof Ġthe Ġoptional Ġdefault Ġargument , Ġor Ġnull Ġif Ġit Ġis Ġomitted . čĊĠĠĠĠ Ġ*/ čĊĠĠĠ Ġfun Ġget ( key : ĠK , Ġdefault : ĠV ?): ĠV ? Ġ{ čĊĠĠĠĠĠĠĠ ĠTransfer Context . write Arguments ( key Variant Type Ġto Ġkey , Ġvalue Variant Type Ġto Ġdefault ) čĊĠĠĠĠĠĠĠ ĠBridge . engine _ call _ get (_ handle ) čĊĠĠĠĠĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") čĊĠĠĠĠĠĠĠ Ġreturn ĠTransfer Context . read ReturnValue ( value Variant Type , Ġtrue ) Ġas ĠV čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ/** čĊĠĠĠĠ Ġ* ĠReturns Ġtrue Ġif Ġthe Ġdictionary Ġhas Ġa Ġgiven Ġkey . čĊĠĠĠĠ Ġ* ĠNote : ĠThis Ġis Ġequivalent Ġto Ġusing Ġthe Ġin Ġoperator Ġas Ġfollows : čĊĠĠĠĠ Ġ*/ čĊĠĠĠ Ġfun Ġhas ( key : ĠK ): ĠBoolean Ġ{ čĊĠĠĠĠĠĠĠ ĠTransfer Context . write Arguments ( key Variant Type Ġto Ġkey ) čĊĠĠĠĠĠĠĠ ĠBridge . engine _ call _ has (_ handle ) čĊĠĠĠĠĠĠĠ Ġreturn ĠTransfer Context . read ReturnValue ( Variant Type . BOOL ) Ġas ĠBoolean čĊĠĠĠ Ġ} čĊčĊčĊĠĠĠ Ġ/** čĊĠĠĠĠ Ġ* ĠReturns Ġtrue Ġif Ġthe Ġdictionary Ġhas Ġall Ġof Ġthe Ġkeys Ġin Ġthe Ġgiven Ġarray . čĊĠĠĠĠ Ġ*/ čĊĠĠĠ Ġfun Ġhas All ( keys : ĠVariant Array < K >): ĠBoolean Ġ{ čĊĠĠĠĠĠĠĠ ĠTransfer Context . write Arguments ( Variant Type . ARRAY Ġto Ġkeys ) čĊĠĠĠĠĠĠĠ ĠBridge . engine _ call _ has All (_ handle ) čĊĠĠĠĠĠĠĠ Ġreturn ĠTransfer Context . read ReturnValue ( Variant Type . BOOL ) Ġas ĠBoolean čĊĠĠĠ Ġ} čĊčĊčĊĠĠĠ Ġ/** čĊĠĠĠĠ Ġ* ĠReturns Ġa Ġhashed Ġinteger Ġvalue Ġrepresenting Ġthe Ġdictionary Ġcontents . ĠThis Ġcan Ġbe Ġused Ġto Ġcompare Ġdictionaries Ġby Ġvalue čĊĠĠĠĠ Ġ*/ čĊĠĠĠ Ġfun Ġhash (): ĠInt Ġ{ čĊĠĠĠĠĠĠĠ ĠBridge . engine _ call _ hash (_ handle ) čĊĠĠĠĠĠĠĠ Ġreturn ĠTransfer Context . read ReturnValue ( Variant Type . JVM _ INT ) Ġas ĠInt čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġfun ĠisEmpty () Ġ= Ġempty () čĊčĊĠĠĠ Ġ/** čĊĠĠĠĠ Ġ* ĠReturns Ġthe Ġlist Ġof Ġkeys Ġin Ġthe ĠDictionary . čĊĠĠĠĠ Ġ*/ čĊĠĠĠ Ġfun Ġkeys (): ĠVariant Array < K > Ġ{ čĊĠĠĠĠĠĠĠ ĠBridge . engine _ call _ keys (_ handle ) čĊĠĠĠĠĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") čĊĠĠĠĠĠĠĠ Ġreturn Ġ( Transfer Context . read ReturnValue ( Variant Type . ARRAY ) Ġas ĠVariant Array < K >). also Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . variant Type Ġ= Ġkey Variant Type čĊĠĠĠĠĠĠĠ Ġ} čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġfun Ġput ( key : ĠK , Ġvalue : ĠV ): ĠV ? Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġret Ġ= Ġget ( key , Ġnull ) čĊĠĠĠĠĠĠĠ Ġset ( key , Ġvalue ) čĊĠĠĠĠĠĠĠ Ġreturn Ġret čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġfun Ġput All ( from : ĠMap < out ĠK , ĠV >) Ġ{ čĊĠĠĠĠĠĠĠ Ġfrom . forEach Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠ Ġset ( it . key , Ġit . value ) čĊĠĠĠĠĠĠĠ Ġ} čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġfun Ġremove ( key : ĠK ): ĠV ? Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġret Ġ= Ġget ( key , Ġnull ) čĊĠĠĠĠĠĠĠ Ġerase ( key ) čĊĠĠĠĠĠĠĠ Ġreturn Ġret čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ/** čĊĠĠĠĠ Ġ* ĠReturns Ġthe Ġlist Ġof Ġvalues Ġin Ġthe ĠDictionary . čĊĠĠĠĠ Ġ*/ čĊĠĠĠ Ġfun Ġvalues (): ĠVariant Array < V > Ġ{ čĊĠĠĠĠĠĠĠ ĠBridge . engine _ call _ values (_ handle ) čĊĠĠĠĠĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") čĊĠĠĠĠĠĠĠ Ġreturn Ġ( Transfer Context . read ReturnValue ( Variant Type . ARRAY ) Ġas ĠVariant Array < V >). also Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . variant Type Ġ= Ġvalue Variant Type čĊĠĠĠĠĠĠĠ Ġ} čĊĠĠĠ Ġ} čĊčĊčĊĠĠĠ Ġ// UTIL ITIES čĊĠĠĠ Ġoverride Ġoperator Ġfun Ġget ( key : ĠK ): ĠV Ġ{ čĊĠĠĠĠĠĠĠ ĠTransfer Context . write Arguments ( key Variant Type Ġto Ġkey ) čĊĠĠĠĠĠĠĠ ĠBridge . engine _ call _ operator _ get (_ handle ) čĊĠĠĠĠĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") čĊĠĠĠĠĠĠĠ Ġreturn ĠTransfer Context . read ReturnValue ( value Variant Type , Ġtrue ) Ġas ĠV čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ@ Core Type Helper čĊĠĠĠ Ġinline Ġfun Ġ< R > Ġget ( key : ĠK , Ġblock : ĠV . () Ġ-> ĠR ): ĠR Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġlocal Copy Ġ= Ġthis [ key ] čĊĠĠĠĠĠĠĠ Ġval Ġret Ġ= Ġlocal Copy . block () čĊĠĠĠĠĠĠĠ Ġthis [ key ] Ġ= Ġlocal Copy čĊĠĠĠĠĠĠĠ Ġreturn Ġret čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġoperator Ġfun Ġset ( key : ĠK , Ġvalue : ĠV ) Ġ{ čĊĠĠĠĠĠĠĠ ĠTransfer Context . write Arguments ( key Variant Type Ġto Ġkey , Ġvalue Variant Type Ġto Ġvalue ) čĊĠĠĠĠĠĠĠ ĠBridge . engine _ call _ operator _ set (_ handle ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġoperator Ġfun Ġcontains ( key : ĠK ): ĠBoolean Ġ= Ġhas ( key ) čĊčĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ{ čĊĠĠĠĠĠĠĠ Ġif Ġ( other Ġ== Ġnull Ġ|| Ġother Ġ! is ĠDictionary < *, Ġ* >) Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse čĊĠĠĠĠĠĠĠ Ġ} čĊĠĠĠĠĠĠĠ ĠTransfer Context . write Arguments ( Variant Type . DI CTIONARY Ġto Ġthis , ĠVariant Type . DI CTIONARY Ġto Ġother ) čĊĠĠĠĠĠĠĠ ĠBridge . engine _ call _ equals (_ handle ) čĊĠĠĠĠĠĠĠ Ġreturn ĠTransfer Context . read ReturnValue ( Variant Type . BOOL ) Ġas ĠBoolean čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ{ čĊĠĠĠĠĠĠĠ Ġreturn Ġ_ handle . hashCode () čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ čĊĠĠĠĠĠĠĠ Ġreturn Ġ" Dictionary ($ size )" čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ@ Suppress (" FunctionName ") čĊĠĠĠ Ġprivate Ġobject ĠBridge Ġ{ čĊĠĠĠĠĠĠĠ Ġexternal Ġfun Ġengine _ call _ constructor (): ĠVoid Ptr čĊčĊĠĠĠĠĠĠĠ Ġexternal Ġfun Ġengine _ call _ clear (_ handle : ĠVoid Ptr ) čĊĠĠĠĠĠĠĠ Ġexternal Ġfun Ġengine _ call _ duplicate (_ handle : ĠVoid Ptr ) čĊĠĠĠĠĠĠĠ Ġexternal Ġfun Ġengine _ call _ empty (_ handle : ĠVoid Ptr ) čĊĠĠĠĠĠĠĠ Ġexternal Ġfun Ġengine _ call _ erase (_ handle : ĠVoid Ptr ) čĊĠĠĠĠĠĠĠ Ġexternal Ġfun Ġengine _ call _ get (_ handle : ĠVoid Ptr ) čĊĠĠĠĠĠĠĠ Ġexternal Ġfun Ġengine _ call _ has (_ handle : ĠVoid Ptr ) čĊĠĠĠĠĠĠĠ Ġexternal Ġfun Ġengine _ call _ has All (_ handle : ĠVoid Ptr ) čĊĠĠĠĠĠĠĠ Ġexternal Ġfun Ġengine _ call _ hash (_ handle : ĠVoid Ptr ) čĊĠĠĠĠĠĠĠ Ġexternal Ġfun Ġengine _ call _ keys (_ handle : ĠVoid Ptr ) čĊĠĠĠĠĠĠĠ Ġexternal Ġfun Ġengine _ call _ size (_ handle : ĠVoid Ptr ) čĊĠĠĠĠĠĠĠ Ġexternal Ġfun Ġengine _ call _ values (_ handle : ĠVoid Ptr ) čĊĠĠĠĠĠĠĠ Ġexternal Ġfun Ġengine _ call _ operator _ get (_ handle : ĠVoid Ptr ) čĊĠĠĠĠĠĠĠ Ġexternal Ġfun Ġengine _ call _ operator _ set (_ handle : ĠVoid Ptr ) čĊĠĠĠĠĠĠĠ Ġexternal Ġfun Ġengine _ call _ equals (_ handle : ĠVoid Ptr ) čĊĠĠĠ Ġ} č Ċ } čĊč Ċ @ Suppress (" FunctionName ") č Ċ inline Ġfun Ġ< re ified ĠK , Ġre ified ĠV > ĠDictionary (): ĠDictionary < K , ĠV > Ġ{ čĊĠĠĠ Ġval Ġkey Variant Type Ġ= Ġvariant Mapper [ K :: class ] čĊĠĠĠ ĠcheckNotNull ( key Variant Type ) Ġ{ čĊĠĠĠĠĠĠĠ Ġ" Can 't Ġcreate Ġa ĠDictionary Ġwith Ġgeneric Ġkey Ġ${ K :: class } ." čĊĠĠĠ Ġ} čĊĠĠĠ Ġval Ġval Variant Type Ġ= Ġvariant Mapper [ V :: class ] čĊĠĠĠ ĠcheckNotNull ( val Variant Type ) Ġ{ čĊĠĠĠĠĠĠĠ Ġ" Can 't Ġcreate Ġa ĠDictionary Ġwith Ġgeneric Ġvalue Ġ${ V :: class } ." čĊĠĠĠ Ġ} čĊĠĠĠ Ġreturn ĠDictionary < K , ĠV >( key Variant Type , Ġval Variant Type ) č Ċ } čĊč Ċ inline Ġfun Ġ< re ified ĠK , Ġre ified ĠV > Ġdictionary Of ( var arg Ġargs : ĠPair < K , ĠV >) Ġ= ĠDictionary < K , ĠV >(). also Ġ{ čĊĠĠĠ Ġit . put All ( args ) č Ċ } čĊč Ċ /** čĊ Ġ* ĠConvert Ġan ĠMap Ġinto Ġa ĠDictionary čĊ Ġ*/ č Ċ inline Ġfun Ġ< re ified ĠK , Ġre ified ĠV > ĠMap < K , ĠV >. to Dictionary () Ġ= ĠDictionary < K , ĠV >(). also Ġ{ čĊĠĠĠ Ġit . put All ( this ) č Ċ } čĊ