package Ġorg . jetbrains . dataframe . internal . code Gen Ċ Ċ import Ġorg . jetbrains . dataframe . internal . schema . DataFrame Schema Ċ Ċ internal Ġopen Ġclass ĠMarker ( ĊĠĠĠ Ġval Ġname : ĠString , ĊĠĠĠ Ġval ĠisOpen : ĠBoolean , ĊĠĠĠ Ġval Ġfields : ĠList < Generated Field >, ĊĠĠĠ Ġbase : ĠList < Marker > Ċ ) Ġ{ ĊĊĠĠĠ Ġval Ġshort Name Ġ: ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġname . substring After Last (".") ĊĊĠĠĠ Ġval Ġbase Markers Ġ= Ġbase . associate By Ġ{ Ġit . name Ġ} ĊĊĠĠĠ Ġval Ġall Base Markers : ĠMap < String , ĠMarker > Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġbase Markers . to Mutable Map () ĊĠĠĠĠĠĠĠ Ġbase Markers . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult . put All ( it . value . all Base Markers ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġresult ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġall Fields : ĠList < Generated Field > Ġby Ġlazy Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġfields Map Ġ= Ġmutable Map Of < String , ĠGenerated Field >() ĊĠĠĠĠĠĠĠ Ġbase Markers . values . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . all Fields . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfields Map [ it . fieldName ] Ġ= Ġit ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġfields . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfields Map [ it . fieldName ] Ġ= Ġit ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġfields Map . values . sorted By Ġ{ Ġit . fieldName Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġall Fields By Column Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ Ġall Fields . associate By Ġ{ Ġit . columnName Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcontains Column ( columnName : ĠString ) Ġ= Ġall Fields By Column . containsKey ( columnName ) ĊĊĠĠĠ Ġval Ġcolumn Names Ġget () Ġ= Ġall Fields . map Ġ{ Ġit . columnName Ġ} ĊĊĠĠĠ Ġval Ġschema Ġby Ġlazy Ġ{ ĠDataFrame Schema ( all Fields . map Ġ{ Ġit . columnName Ġto Ġit . column Schema Ġ}. toMap ()) Ġ} ĊĊĠĠĠ Ġfun Ġimplements ( schema : ĠMarker ): ĠBoolean Ġ= Ġif ( schema . name Ġ== Ġname ) Ġtrue Ġelse Ġbase Markers [ schema . name ]?. let Ġ{ Ġit Ġ=== Ġschema Ġ} Ġ?: Ġfalse ĊĊĠĠĠ Ġfun Ġimplements All ( schemas : ĠIterable < Marker >): ĠBoolean Ġ= Ġschemas . all Ġ{ Ġimplements ( it ) Ġ} Ċ }