@ file : Suppress (" NE ST ED _ EXTERNAL _ DECL AR ATION ") Ċ package Ġorg . jetbrains . sk ia . sh aper Ċ Ċ import Ġorg . jetbrains . sk ia . External Symbol Name Ċ import Ġorg . jetbrains . sk ia . Managed String Ċ import Ġorg . jetbrains . sk ia . impl . Library . Companion . static Load Ċ import Ġorg . jetbrains . sk ia . impl . Native Pointer Ċ import Ġorg . jetbrains . sk ia . impl . Stats Ċ import Ġorg . jetbrains . sk ia . impl . get Ptr Ċ import Ġorg . jetbrains . sk ia . impl . reach ability Barrier Ċ Ċ class ĠI cu B idi Run Iterator ( text : ĠManaged String ?, Ġmanage Text : ĠBoolean , Ġbidi Level : ĠInt ) Ġ: ĠManaged Run Iterator < B idi Run ? >( ĊĠĠĠ Ġ_ n Make ( get Ptr ( text ), Ġbidi Level ), Ġtext , Ġmanage Text Ċ ) Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstatic Load () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġconstructor ( text : ĠString ?, Ġbidi Level : ĠInt ) Ġ: Ġthis ( Managed String ( text ), Ġtrue , Ġbidi Level ) Ġ{} ĊĊĠĠĠ Ġoverride Ġoperator Ġfun Ġnext (): ĠB idi Run Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ_ n Consume (_ ptr ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠB idi Run (_ get EndOf Current Run (), Ġ_ n GetCurrent Level (_ ptr )) ĊĠĠĠĠĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreach ability Barrier ( this ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ ĠStats . on Native Call () ĊĠĠĠĠĠĠĠ Ġreach ability Barrier ( text ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġremove () Ġ{ ĊĠĠĠĠĠĠĠ ĠTODO (" Not Ġyet Ġimplemented ") ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ External Symbol Name (" org _ jetbrains _ sk ia _ sh aper _ I cu B idi Run Iterator __ 1 n Make ") Ċ private Ġexternal Ġfun Ġ_ n Make ( text Ptr : ĠNative Pointer , Ġbidi Level : ĠInt ): ĠNative Pointer Ċ Ċ @ External Symbol Name (" org _ jetbrains _ sk ia _ sh aper _ I cu B idi Run Iterator __ 1 n GetCurrent Level ") Ċ private Ġexternal Ġfun Ġ_ n GetCurrent Level ( ptr : ĠNative Pointer ): ĠInt Ċ