package Ġde . u ul m . se . co uched it . util . extensions Ċ Ċ import Ġde . u ul m . se . co uched it . model . base . Element Reference Ċ import Ġde . u ul m . se . co uched it . model . graphic . Sh aped Element Ċ import Ġde . u ul m . se . co uched it . model . graphic . shapes . Shape Ċ Ċ /** Ċ Ġ* ĠConvenience Ġfunction Ġto Ġcast Ġany ĠElement Reference < Sh aped Element <* >> Ġto Ġan ĠElement Reference < Shape >. Ċ Ġ*/ Ċ fun ĠElement Reference < Sh aped Element <* >> . as Generic Shape (): ĠElement Reference < Sh aped Element < Shape >> Ġ{ ĊĠĠĠ Ġ/* ĊĠĠĠĠ Ġ* ĠIn Ġtheory , Ġthis Ġshould Ġnot Ġbe Ġnecessary , Ġas Ġthe Ġtype Ġparameter Ġin ĠSh aped Element Ġis Ġout - project ed . ĊĠĠĠĠ Ġ* ĠThus , Ġevery ĠSh aped Element < *> Ġis Ġalso Ġa ĠSh aped Element < Element >: ĊĠĠĠĠ Ġ* Ġhttps :// kotlin lang . org / docs / reference / gener ics . html # declaration - site - variance ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠHowever , Ġin Ġcombination Ġwith Ġthe ĠService Caller Ġfunction , Ġthis Ġseems Ġto Ġbe Ġtoo Ġmuch Ġfor Ġthe Ġtype Ġsystem : ĊĠĠĠĠ Ġ* Ġe . g . Ġin ĠSpatial Relation Checker . get Spatial Relations ĊĠĠĠĠ Ġ* Ġ< code > ĊĠĠĠĠ Ġ* ĠĠĠĠĠ ĠError :( 2 5 , Ġ 4 6 ) ĠKotlin : ĠType Ġmismatch : Ġinferred Ġtype Ġis ĊĠĠĠĠ Ġ* ĠĠĠĠĠ ĠK Function 2 < @ ParameterName ĠElement Reference < Sh aped Element < Nothing >>, ĊĠĠĠĠ Ġ* ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ ParameterName ĠMap < Element Reference <* >, ĠElement >, ĠNothing ? ĊĠĠĠĠ Ġ* ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ> ĊĠĠĠĠ Ġ* ĠĠĠĠĠ Ġbut Ġ( Element Reference < Sh aped Element <* >>, ĠMap < Element Reference <* >, ĠElement >) Ġ-> ĠNothing ? Ġwas Ġexpected ĊĠĠĠĠ Ġ* Ġ</ code > ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġreturn Ġthis Ċ } Ċ