package Ġorg . elm . ide . ins pe ctions Ċ Ċ import Ġcom . intellij . code Inspection . Local Inspection Tool Ċ import Ġcom . intellij . code Inspection . Problems Holder Ċ import Ġcom . intellij . openapi . project . Project Ċ import Ġcom . intellij . psi . Psi Element Ċ import Ġcom . intellij . psi . Psi Element Visitor Ċ import Ġorg . elm . lang . core . psi . elements . Elm Ex posed Type Ċ import Ġorg . elm . lang . core . psi . elements . Elm Type Alias Declaration Ċ Ċ /** Ċ Ġ* ĠFind Ġstatements Ġlike Ġ` import ĠA Ġexposing ĠB (.. )` Ġwhere Ġ` B ` Ġis Ġa Ġtype Ġalias , Ġmaking Ġthe Ġstatement Ġinvalid . Ċ Ġ*/ Ċ class ĠEl m Ex posing Alias Variants Inspection Ġ: ĠLocal Inspection Tool () Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġbuild Visitor ( holder : ĠPro blems Holder , Ġis On The Fly : ĠBoolean ): ĠPsi Element Visitor Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠPsi Element Visitor () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġvisit Element ( element : ĠPsi Element ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . visit Element ( element ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( element Ġ! is ĠEl m Ex posed Type ) Ġreturn ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( element . ex posed Union Construct ors Ġ!= Ġnull Ġ&& Ġelement . reference . resolve () Ġis ĠEl m Type Alias Declaration ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . register Problem ( element , Ġ" Invalid Ġ(.. ) Ġon Ġalias Ġimport ", ĠRemove Ex posing List Quick Fix ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ private Ġclass ĠRemove Ex posing List Quick Fix Ġ: ĠNamed Quick Fix (" Remove Ġ(.. )") Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġapply Fix ( element : ĠPsi Element , Ġproject : ĠProject ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ( element Ġas ? ĠEl m Ex posed Type )?. ex posed Union Construct ors ?. delete () ĊĠĠĠ Ġ} Ċ } Ċ