NAME

Path::IsDev::Role::Heuristic - Base role for Heuristic things.

VERSION

version 1.001003

ROLE REQUIRES

matches

Implementing classes must provide this method.

return : 1 / undef
         1     -> this path is a development directory as far as this heuristic is concerned
         undef -> this path is not a development directory as far as this heuristic is concerned

args : ( $class , $result_object )
    $class         -> method will be invoked on packages, not objects
    $result_object -> will be a Path::IsDev::Result

Additionally, consuming classes should set $result_object->result( 1 ) prior to returning true.

Composing roles should also invoke $result_object->add_reason( $self, $result_value, $descriptive_reason_for_result, \%contextinfo ).

See Path::IsDev::Result for details

METHODS

name

Returns the name to use in debugging.

By default, this is derived from the classes name with the PIDH prefix removed:

Path::IsDev::Heuristic::Tool::Dzil->name()
→ "+ ::Tool::Dzil"

heuristic_type

Returns a description of the general heuristic type

positive heuristic

AUTHOR

Kent Fredric <kentnl@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2017 by Kent Fredric <kentfredric@gmail.com>.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.