// ĠCopyright Ġ 2 0 0 0 - 2 0 2 1 ĠJetBrains Ġs . r . o . ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe ĠLICENSE Ġfile . Ċ package Ġcom . intellij . util . indexing Ċ Ċ import Ġcom . intellij . openapi . vfs . Virtual File Ċ import Ġcom . intellij . openapi . vfs . new vfs . Man aging FS Ċ import Ġcom . intellij . openapi . vfs . new vfs . impl . Virtual FileSystem Entry Ċ import Ġorg . jetbrains . annotations . Api Status Ċ Ċ /** Ċ Ġ* ĠAn Ġobject Ġdedicated Ġto Ġmanage Ġin Ġmemory Ġ` is Indexed ` Ġfile Ġflag . Ċ Ġ*/ Ċ @ Api Status . Internal Ċ object ĠIndex ing Flag Ġ{ ĊĠ Ġ@ Jvm Static ĊĠ Ġfun Ġcleanup Processed Flag () Ġ{ ĊĠĠĠ Ġval Ġroots Ġ= ĠMan aging FS . getInstance (). roots ĊĠĠĠ Ġfor Ġ( root Ġin Ġroots ) Ġ{ ĊĠĠĠĠĠ Ġclean Processed Flag Re cursively ( root ) ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġ@ Jvm Static ĊĠ Ġfun Ġclean Processed Flag Re cursively ( file : ĠVirtual File ) Ġ{ ĊĠĠĠ Ġif Ġ( file Ġ! is ĠVirtual FileSystem Entry ) Ġreturn ĊĠĠĠ Ġclean Processing Flag ( file ) ĊĠĠĠ Ġif Ġ( file . isDirectory ()) Ġ{ ĊĠĠĠĠĠ Ġfor Ġ( child Ġin Ġfile . cached Children ) Ġ{ ĊĠĠĠĠĠĠĠ Ġclean Processed Flag Re cursively ( child ) ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġ@ Jvm Static ĊĠ Ġfun Ġclean Processing Flag ( file : ĠVirtual File ) Ġ{ ĊĠĠĠ Ġif Ġ( file Ġis ĠVirtual FileSystem Entry ) Ġ{ ĊĠĠĠĠĠ Ġfile . isFile Indexed Ġ= Ġfalse ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġ@ Jvm Static ĊĠ Ġfun Ġset File Indexed ( file : ĠVirtual File ) Ġ{ ĊĠĠĠ Ġif Ġ( file Ġis ĠVirtual FileSystem Entry ) Ġ{ ĊĠĠĠĠĠ Ġfile . isFile Indexed Ġ= Ġtrue ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ }