Raku Land

Trait::IO

zef:raku-community-modules

Actions Status

NAME

Trait::IO - Helper IO traits

SYNOPSIS

use Trait::IO;

for <a b c> {
    my $fh does auto-close = .IO.open: :w;
    # ... do things with the file handle
    # $fh is auto-closed on block leave
}

# Top-level is OK too; will close on scope leave
my $fh does auto-close = "foo".IO.open: :w;
# ...

DESCRIPTION

Useful traits for working with Raku IO.

EXPORTS

-head2 does auto-close

my $fh does auto-close = "foo".IO.open: :w;

Installs a LEAVE phaser to automatically close the file handle when scope is left.

Exports the constant and the trait_mod:<does> multi that accepts it as a value.

Currently works only with variables and not with attributes or parameters. Patches welcome.

AUTHOR

Zoffix Znet

COPYRIGHT AND LICENSE

Copyright 2017 - 2018 Zoffix Znet

Copyright 2019 - 2022 Raku Community

This library is free software; you can redistribute it and/or modify it under the Artistic License 2.0.