Documentation for method flush assembled from the following pages:

Class: IO::CatHandle §

From IO::CatHandle

(IO::CatHandle) method flush §

Defined as:

multi method flush(|)

The IO::CatHandle type overrides this method to throw a X::NYI exception. If you have a good idea for how this method should behave, tell Rakudo developers about it!

Class: IO::Handle §

From IO::Handle

(IO::Handle) method flush §

Defined as:

method flush(IO::Handle:D: --> True)

Will flush the handle, writing any of the buffered data. Returns True on success; otherwise, fails with X::IO::Flush.

given "foo".IO.open: :w {
    LEAVE .close;
    .print: 'something';
    'foo'.IO.slurp.say# (if the data got buffered) OUTPUT: «␤» 
    .flush;             # flush the handle 
    'foo'.IO.slurp.say# OUTPUT: «something␤» 
}