Types::Standard::ScalarRef − exporter utility for the ScalarRef type constraint
use
Types::Standard −types;
# Normal way to validate a reference to a string.
#
ScalarRef−>of( Str )−>assert_valid( \
"foo" );
use Types::Standard::ScalarRef StrRef => { of => Str
},
# Exported shortcut
#
assert_StrRef \ "foo";
This module is not covered by the Type−Tiny stability policy.
This is mostly internal code, but can also act as an exporter utility.
Types::Standard::ScalarRef can be used experimentally as an exporter.
use
Types::Standard 'Str';
use Types::Standard::ScalarRef StrRef => { of => Str
};
This will export
the following functions into your namespace:
"StrRef"
is_StrRef( $value )
assert_StrRef( $value )
to_StrRef( $value )
Multiple types can be exported at once:
use
Types::Standard −types;
use Types::Standard::ScalarRef (
IntRef => { of => Int },
StrRef => { of => Str },
);
assert_IntRef \42; # should not die
It's possible to further constrain the reference using "where":
use Types::Standard::ScalarRef MyThing => { of => Str, where => sub { ... } };
Please report any bugs to <https://github.com/tobyink/p5−type−tiny/issues>.
Types::Standard.
Toby Inkster <[email protected]>.
This software is copyright (c) 2013−2025 by Toby Inkster.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.