Types::Standard::Map(3) User Contributed Perl Documentation Types::Standard::Map(3)

# [NAME](#NAME)

Types::Standard::Map - exporter utility for the Map type constraint

# [SYNOPSIS](#SYNOPSIS)

```
  use Types::Standard -types;
  
  # Normal way to validate map.
  #
  Map->of( Int, Str )->assert_valid( { 1 => "one" } );
  
  use Types::Standard::Map IntsToStrs => { keys => Int, values => Str },
  
  # Exported shortcut
  #
  assert_IntsToStrs { 1 => "one" };
```

# [STATUS](#STATUS)

This module is not covered by the Type-Tiny stability policy.

# [DESCRIPTION](#DESCRIPTION)

This is mostly internal code, but can also act as an exporter utility.

## [Exports](#Exports)

Types::Standard::Map can be used experimentally as an exporter.

```
  use Types::Standard 'Int';
  use Types::Standard::Map IntsToStrs => { keys => Int, values => Str },
```

This will export the following functions into your namespace:

"IntsToStrs"

[is\_IntsToStrs( $value )](#is_IntsToStrs%28)

[assert\_IntsToStrs( $value )](#assert_IntsToStrs%28)

[to\_IntsToStrs( $value )](#to_IntsToStrs%28)

Multiple types can be exported at once:

```
  use Types::Standard -types;
  use Types::Standard::Map (
    IntsToStrs  => { keys => Int, values => Str },
    StrsToInts  => { keys => Str, values => Int },
  );
  
  assert_StrsToInts { two => 2 };   # should not die
```

It's possible to further constrain the hashref using "where":

```
  use Types::Standard::Dict MyThing => {
    keys   => Str->where( sub { ... } ),
    values => Int->where( sub { ... } ),
    where  => sub { ... },
  };
```

# [BUGS](#BUGS)

Please report any bugs to &lt;https://github.com/tobyink/p5-type-tiny/issues&gt;.

# [SEE ALSO](#SEE_ALSO)

Types::Standard.

# [AUTHOR](#AUTHOR)

Toby Inkster &lt;tobyink@cpan.org&gt;.

# [COPYRIGHT AND LICENCE](#COPYRIGHT_AND_LICENCE)

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.

# [DISCLAIMER OF WARRANTIES](#DISCLAIMER_OF_WARRANTIES)

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.

2026-06-28 perl v5.42.2

---

Document: Types::Standard::Map(3pm) from perl-type-tiny 2.010001-r3 (Chainguard OS)
Source: https://github.com/tobyink/p5-type-tiny
