subtype File
=> as Object
+ => where { $_->isa('Path::Class::File') }
+ => message { "Must be a file" };
+
+subtype Upload
+ => as Object
=> where { $_->isa('Catalyst::Request::Upload') }
=> message { "Must be a file" };
+coerce File
+ => from Upload
+ => via { Path::Class::File->new($_->tempname) };
+
1;
=head1 NAME