// ĠCopyright Ġ 2 0 0 0 - 2 0 2 0 ĠJetBrains Ġs . r . o . ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe ĠLICENSE Ġfile . Ċ package Ġorg . jetbrains . plugins . groovy . lang . resolve . imports . impl Ċ Ċ import Ġit . un imi . ds i . fast util . Hash Ċ import Ġorg . jetbrains . plugins . groovy . lang . resolve . imports . Regular Import Ċ import Ġorg . jetbrains . plugins . groovy . lang . resolve . imports . Star Import Ċ Ċ internal Ġobject ĠRegular Import Hash ing Strategy Ġ: ĠHash . Strategy < Regular Import > Ġ{ ĊĠ Ġoverride Ġfun Ġequals ( o 1 : ĠRegular Import ?, Ġo 2 : ĠRegular Import ?): ĠBoolean Ġ{ ĊĠĠĠ Ġif Ġ( o 1 Ġ=== Ġo 2 ) Ġreturn Ġtrue ĊĠĠĠ Ġif Ġ( o 1 Ġ== Ġnull Ġ|| Ġo 2 Ġ== Ġnull ) Ġreturn Ġfalse ĊĠĠĠ Ġreturn Ġo 1 . class F qn Ġ== Ġo 2 . class F qn Ġ&& Ġo 1 . name Ġ== Ġo 2 . name ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun ĠhashCode ( o : ĠRegular Import ?): ĠInt Ġ= Ġif Ġ( o Ġ== Ġnull ) Ġ 0 Ġelse Ġ 3 1 Ġ* Ġo . class F qn . hashCode () Ġ+ Ġo . name . hashCode () Ċ } Ċ Ċ internal Ġobject ĠStar Import Hash ing Strategy Ġ: ĠHash . Strategy < Star Import > Ġ{ ĊĠ Ġoverride Ġfun Ġequals ( o 1 : ĠStar Import ?, Ġo 2 : ĠStar Import ?): ĠBoolean Ġ{ ĊĠĠĠ Ġif Ġ( o 1 Ġ=== Ġo 2 ) Ġreturn Ġtrue ĊĠĠĠ Ġif Ġ( o 1 Ġ== Ġnull Ġ|| Ġo 2 Ġ== Ġnull ) Ġreturn Ġfalse ĊĠĠĠ Ġreturn Ġo 1 . package F qn Ġ== Ġo 2 . package F qn ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun ĠhashCode ( o : ĠStar Import ?): ĠInt Ġ= Ġo ?. package F qn ?. hashCode () Ġ?: Ġ 0 Ċ } Ċ