SYNOPSIS

      use Type::Tiny;
      use Type::Tiny::Signatures;
    
      method hello (Str $greeting, Str $fullname) {
        print "$greeting, $fullname\n";
      }

DESCRIPTION

    This module uses Function::Parameters to extend Perl with keywords that
    let you define methods and functions with parameter lists which can be
    validated using Type::Tiny type constraints. The type constraints can
    be provided by the Type::Tiny standard library, Types::Standard, or any
    supported user-defined type library which can be a Moose, MooseX::Type,
    MouseX::Type, or Type::Library library.

      use Type::Tiny;
      use Type::Tiny::Signatures 'MyApp::Types';
    
      method identify (Str $name, SSN $number) {
        print "identifying $name using SSN $number\n";
      }

    The method and function signatures can be configured to validate
    user-defined type constraints by passing the user-defined type library
    package name as an argument to the Type::Tiny::Signatures usage
    declaration. The default behavior configures the Function::Parameters
    pragma using options that mimick the previously default lax-mode, i.e.
    strict-mode disabled.