/* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 8 ĠThe ĠAndroid ĠOpen ĠSource ĠProject Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ package Ġorg . jetbrains . android Ċ Ċ import Ġcom . intellij . code Insight . daemon . Implicit Usage Provider Ċ import Ġcom . intellij . psi . Psi Element Ċ import Ġcom . intellij . psi . impl . source . xml . Schema Prefix Ċ import Ġcom . intellij . psi . search . Local Search Scope Ċ import Ġcom . intellij . psi . search . sear ches . References Search Ċ import Ġcom . intellij . psi . util . parent OfType Ċ import Ġcom . intellij . psi . xml . XmlAttribute Ċ import Ġcom . intellij . psi . xml . Xml Tag Ċ import Ġcom . intellij . xml . Xml Extension Ċ import Ġorg . jetbrains . android . dom . converters . Resource Namespace Reference Ċ import Ġorg . jetbrains . android . facet . Android Facet Ċ Ċ @ Suppress (" K Doc Un resolved Reference ") Ġ// ĠWe Ġdon 't Ġdepend Ġon Ġthe ĠXPath Ġplugin . Ċ /** Ċ Ġ* ĠFinds Ġreferences Ġto Ġxmlns Ġdeclarations Ġfrom Ġwithin ĠXML Ġattribute Ġvalues Ġthat Ġare Ġreferences Ġto ĠAndroid Ġresources Ġwith Ġthe Ġnamespace Ċ Ġ* Ġspecified . Ċ Ġ* Ċ Ġ* Ġ@ see ĠX slt Implicit Usage s Provider Ċ Ġ* Ġ@ see ĠResource Namespace Reference Ċ Ġ* Ġ@ see Ġorg . jetbrains . android . dom . converters . Resource Reference Converter . create References Ċ Ġ*/ Ċ class ĠAndroid Xml ns Implicit Usage s Provider Ġ: ĠImp licit Usage Provider Ġ{ ĊĠ Ġoverride Ġfun Ġis Implicit Read ( element : ĠPsi Element ) Ġ= Ġfalse ĊĠ Ġoverride Ġfun Ġis Implicit Write ( element : ĠPsi Element ) Ġ= Ġfalse ĊĊĠ Ġoverride Ġfun Ġis Implicit Usage ( element : ĠPsi Element ): ĠBoolean Ġ{ ĊĠĠĠ Ġif Ġ( element Ġ! is ĠXml Attribute Ġ|| Ġ! element . is Namespace Declaration Ġ|| ĠAndroid Facet . getInstance ( element ) Ġ== Ġnull ) Ġreturn Ġfalse ĊĠĠĠ Ġval Ġxml Tag Ġ= Ġelement . parent OfType < Xml Tag >() Ġ?: Ġreturn Ġfalse ĊĊĠĠĠ Ġ// ĠReferences Ġfrom Ġnamespace Ġprefixes Ġresolve Ġto Ġthe ĠSchema Prefix Ġfake Ġelements , Ġnot Ġthe Ġattribute Ġitself . ĊĠĠĠ Ġval Ġschema Prefix : ĠSchema Prefix Ġ= ĊĠĠĠĠĠ ĠXml Extension . getExtension By Element ( element )?. get Prefix Declaration ( xml Tag , Ġelement . local Name ) Ġ?: Ġreturn Ġfalse ĊĊĠĠĠ Ġreturn ĠReferences Search . search ( schema Prefix , ĠLocal Search Scope ( xml Tag )). any Ġ{ Ġit Ġis ĠResource Namespace Reference Ġ} ĊĠ Ġ} Ċ } Ċ