Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Path::IsDev::Result(3)User Contributed Perl DocumentatioPath::IsDev::Result(3)

NAME
       Path::IsDev::Result - Result container

VERSION
       version 1.001002

SYNOPSIS
	   use Path::IsDev::Result;

	   my $result =	Path::IsDev::Result->new( path => '/some/path/that/exists' ):

	   if (	$heuristcset->matches( $result ) ) {
	       print Dumper($result);
	   }

DESCRIPTION
       This is a reasonably new	internal component for Path::IsDev.

       Its purpose is to communicate state between internal things, and	give
       some sort of introspectable context for why things happened in various
       places without resorting	to spamming debug everywhere.

       Now instead of turning on debug,	as long	as you can get a result, you
       can inspect and dump that result	at the point you need it.

METHODS
   "BUILD"
   "add_reason"
       Call this method	from a heuristic to record checking of the heuristic
       and the relevant	meta-data.

	   $result->add_reason(	$heuristic, $matchvalue, $reason_summary, \%contextinfo	);

       For example:

	   sub Foo::matches  {
	       my ( $self , $result_object ) = @_;
	       if ( $result_object->path->child('bar')->exists ) {
		   $result_object->add_reason( $self, 1, "child	'bar' exists" ,	{
		       child =>	'bar',
		       'exists?' => 1,
		       child_path => $result_object->path->child('bar')
		   });
		   $result_object->result(1);
		   return 1;
	       }
	       return;
	   }

       Note that here, $matchvalue should be the result	of the relevant
       matching	logic, not the global impact.

       For instance, "excludes"	compositions should still add reasons of
       "$matchvalue == 1", but they should not set
       "$result_object->result(1)". ( In fact, setting "result"	is the job of
       the individual heuristic, not the matches that are folded into it )

ATTRIBUTES
   "path"
   "result"
   "reasons"
AUTHOR
       Kent Fredric <kentfredric@gmail.com>

COPYRIGHT AND LICENSE
       This software is	copyright (c) 2014 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.

perl v5.24.1			  2014-08-16		Path::IsDev::Result(3)

NAME | VERSION | SYNOPSIS | DESCRIPTION | METHODS | ATTRIBUTES | AUTHOR | COPYRIGHT AND LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Path::IsDev::Result&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help