/* Ċ Ġ* ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠMIT Ġlicense Ġthat Ġcan Ġbe Ċ Ġ* Ġfound Ġin Ġthe ĠLICENSE Ġfile . Ċ Ġ*/ Ċ Ċ package Ġorg . rust . lang . core . psi . ext Ċ Ċ import Ġcom . intellij . lang . AST Node Ċ import Ġcom . intellij . psi . Psi Element Ċ import Ġcom . intellij . psi . stubs . I Stub ElementType Ċ import Ġorg . rust . lang . core . psi . Rs Assoc Type Binding Ċ import Ġorg . rust . lang . core . psi . Rs Path Ċ import Ġorg . rust . lang . core . resolve . ref . Rs Assoc Type Binding Reference Impl Ċ import Ġorg . rust . lang . core . resolve . ref . Rs Reference Ċ import Ġorg . rust . lang . core . stubs . Rs Assoc Type Binding Stub Ċ Ċ // ĠCurrent Ġgrammar Ġallows Ġto Ġwrite Ġassoc Ġtype Ġbindings Ġin Ġmethod Ġcalls , Ġe . g . Ċ // Ġ` a . foo ::< Item Ġ= Ġi 3 2 >() `, Ġso Ġit 's Ġnullable Ċ val ĠRs Assoc Type Binding . parent Path : ĠRs Path ? ĊĠĠĠ Ġget () Ġ= Ġancestor Strict () Ċ Ċ abstract Ġclass ĠRs Assoc Type Binding Mixin Ġ: ĠRs Stub bed Named Element Impl < Rs Assoc Type Binding Stub >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠRs Assoc Type Binding Ġ{ ĊĊĠĠĠ Ġconstructor ( node : ĠAST Node ) Ġ: Ġsuper ( node ) ĊĊĠĠĠ Ġconstructor ( stub : ĠRs Assoc Type Binding Stub , Ġnode Type : ĠI Stub ElementType < *, Ġ* >) Ġ: Ġsuper ( stub , Ġnode Type ) ĊĊĠĠĠ Ġoverride Ġfun Ġget Reference (): ĠRs Reference Ġ= ĠRs Assoc Type Binding Reference Impl ( this ) ĊĊĠĠĠ Ġoverride Ġval Ġreference Name Element : ĠPsi Element Ġget () Ġ= Ġidentifier ĊĊĠĠĠ Ġoverride Ġval Ġreference Name : ĠString Ġget () Ġ= Ġstub ?. name Ġ?: Ġsuper . reference Name Ċ } Ċ