package Ġcn . yi ig ux ing . plugin . translate . provider Ċ Ċ import Ġcn . yi ig ux ing . plugin . translate . util . find Child Ċ import Ġcn . yi ig ux ing . plugin . translate . util . getNext Sibling Skipping Condition Ċ import Ġcom . intellij . psi . Psi Comment Ċ import Ġcom . intellij . psi . Psi Doc Comment Base Ċ import Ġcom . intellij . psi . Psi Element Ċ import Ġcom . intellij . psi . Psi WhiteSpace Ċ import Ġcom . jetbrains . cidr . lang . psi . OC Declaration Ċ import Ġcom . jetbrains . cidr . lang . psi . OC Declaration Statement Ċ import Ġcom . jetbrains . cidr . lang . psi . OC Struct Ċ import Ġcom . jetbrains . cidr . lang . types . OC Struct Type Ċ Ċ class ĠObjective C Documentation Element Provider Ġ: ĠAbstract Documentation Element Provider () Ġ{ ĊĊĠĠĠ Ġoverride Ġval ĠPsi Comment . is Doc Comment : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis @ is Doc Comment Ġis ĠPsi Doc Comment Base ĊĊĠĠĠ Ġoverride Ġval ĠPsi Comment . documentation Owner : ĠPsi Element ? ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġ( this @ documentation Owner Ġas ĠPsi Doc Comment Base ). inner Owner ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠIS _ OC _ STRUCT : Ġ( Psi Element ) Ġ-> ĠBoolean Ġ= Ġ{ Ġit Ġis ĠOC Struct Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠSKIP PING _ CONDITION : Ġ( Psi Element ) Ġ-> ĠBoolean Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ( it Ġis ĠPsi WhiteSpace Ġ&& Ġit . text . count Ġ{ Ġchar Ġ-> Ġchar Ġ== Ġ'\ n ' Ġ} Ġ<= Ġ 1 ) Ġ|| ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( it Ġis ĠPsi Comment Ġ&& Ġit Ġ! is ĠPsi Doc Comment Base ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠDOC _ COMMENT _ SKIP PING _ CONDITION : Ġ( Psi Element ) Ġ-> ĠBoolean Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġis ĠPsi WhiteSpace Ġ|| Ġit Ġis ĠPsi Comment ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠPsi Doc Comment Base . inner Owner : ĠPsi Element ? ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfind Owner ()?. let Ġ{ Ġreturn Ġit Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( val Ġelement Ġ= ĠgetNext Sibling Skipping Condition ( DOC _ COMMENT _ SKIP PING _ CONDITION )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠOC Declaration Ġ-> Ġelement . inner Owner ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠOC Declaration Statement Ġ-> Ġelement . declaration . inner Owner ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/* ĊĠĠĠĠĠĠĠ Ġ* ĠæŃ¤ å®ŀçİ° åĮħåĲ« æĻ®éĢļ æ³¨éĩĬ çļĦ ç¿» è¯ĳ ï¼Į çĦ¶ ï¼Į æĻ®éĢļ æ³¨éĩĬ åľ¨ æĸĩæ¡£ ä¸Ń è¢« åĮħ è£ ¹ åľ¨ ` PRE ` åĿĹ åĨħ èĢĮ ä¸įä¼ļ è¢« ç¿» è¯ĳ ï¼Į åĽłæŃ¤ ä¸į çĶ¨ ä¹Ł ç½ ¢ ãĢĤ ĊĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġ@ Suppress (" unused ") ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠPsi Comment . inner Owner : ĠPsi Element ? ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( this Ġis ĠPsi Doc Comment Base ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfind Owner ()?. let Ġ{ Ġreturn Ġit Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( parent Ġas ? ĠOC Declaration )?. inner Owner ?. let Ġ{ Ġreturn Ġit Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcondition Ġ= Ġif Ġ( this Ġis ĠPsi Doc Comment Base ) ĠDOC _ COMMENT _ SKIP PING _ CONDITION Ġelse ĠSKIP PING _ CONDITION ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( val Ġelement Ġ= ĠgetNext Sibling Skipping Condition ( condition )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠOC Declaration Ġ-> Ġelement . inner Owner ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠOC Declaration Statement Ġ-> Ġelement . declaration . inner Owner ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġfun ĠPsi Doc Comment Base . find Owner (): ĠPsi Element ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġowner ?. let Ġ{ Ġowner Ġ-> Ġreturn Ġ( owner Ġas ? ĠOC Declaration )?. inner Owner Ġ?: Ġowner Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠOC Declaration . inner Owner : ĠPsi Element ? ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget () Ġ= Ġif Ġ( type Ġis ĠOC Struct Type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfind Child ( condition Ġ= ĠIS _ OC _ STRUCT ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdecl ar ators . first OrNull () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ }