package Ġorg . vit riv r . cott ont ail . execution . operators . definition Ċ Ċ import Ġkotlinx . coroutines . flow . Flow Ċ import Ġkotlinx . coroutines . flow . flow Ċ import Ġorg . vit riv r . cott ont ail . database . catalog ue . Catalog ue Tx Ċ import Ġorg . vit riv r . cott ont ail . database . catalog ue . Default Catalog ue Ċ import Ġorg . vit riv r . cott ont ail . database . entity . Entity Tx Ċ import Ġorg . vit riv r . cott ont ail . database . schema . Schema Tx Ċ import Ġorg . vit riv r . cott ont ail . execution . Transaction Context Ċ import Ġorg . vit riv r . cott ont ail . execution . operators . basics . Operator Ċ import Ġorg . vit riv r . cott ont ail . model . basics . Name Ċ import Ġorg . vit riv r . cott ont ail . model . basics . Record Ċ import Ġkotlin . time . Experimental Time Ċ import Ġkotlin . time . measure Timed Value Ċ Ċ /** Ċ Ġ* ĠAn Ġ[ Operator . Source Operator ] Ġused Ġduring Ġquery Ġexecution . ĠD rops Ġan Ġ[ Index ] Ċ Ġ* Ċ Ġ* Ġ@ author ĠR alph ĠG asser Ċ Ġ* Ġ@ version Ġ 1 . 0 . 0 Ċ Ġ*/ Ċ @ Experimental Time Ċ class ĠDrop Index Operator ( val Ġcatalog ue : ĠDefault Catalog ue , Ġval Ġname : ĠName . Index Name ) Ġ: ĊĠĠĠ ĠAbstract Data Definition Operator ( name , Ġ" DROP ĠINDEX ") Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġto Flow ( context : ĠTransaction Context ): ĠFlow < Record > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcat Txn Ġ= Ġcontext . get Tx ( this . catalog ue ) Ġas ĠCatalog ue Tx ĊĠĠĠĠĠĠĠ Ġval Ġschema Txn Ġ= Ġcontext . get Tx ( cat Txn . schema For Name ( this . name . schema ())) Ġas ĠSchema Tx ĊĠĠĠĠĠĠĠ Ġval Ġentity Txn Ġ= Ġcontext . get Tx ( schema Txn . entity For Name ( this . name . entity ())) Ġas ĠEntity Tx ĊĠĠĠĠĠĠĠ Ġreturn Ġflow Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtimed Tuple Id Ġ= Ġmeasure Timed Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġentity Txn . drop Index ( this @ Drop Index Operator . name ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġemit ( this @ Drop Index Operator . status Record ( timed Tuple Id . duration )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }