package Ġmag net . processor . instances . aspect s . factory Ċ Ċ import Ġcom . squareup . jav ap o et . TypeName Ċ import Ġmag net . processor . instances . parser . Attribute Parser Ċ import Ġmag net . processor . instances . parser . Parser Instance Ċ import Ġjavax . lang . model . element . Annotation Value Ċ import Ġjavax . lang . model . element . Element Ċ Ċ object ĠFactory Attribute Parser Ġ: ĠAttribute Parser (" factory ") Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġ< E Ġ: ĠElement > ĠScope < E >. parse ( value : ĠAnnotation Value ): ĠParser Instance < E > Ġ= ĊĠĠĠĠĠĠĠ Ġinstance . copy ( factory Ġ= Ġparse Factory Type ( value )) ĊĊĠĠĠ Ġprivate Ġfun Ġ< E Ġ: ĠElement > ĠScope < E >. parse Factory Type ( value : ĠAnnotation Value ): ĠType Name ? Ġ= ĊĠĠĠĠĠĠĠ ĠType Name . get ( env . annotation . getType Element ( value ). as Type ()) Ċ } Ċ