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

FreeBSD Manual Pages

  
 
  

home | help
Declare::Constraints::UserlContributedCPerlrDocum::Simple::Library::General(3)

NAME
       Declare::Constraints::Simple::Library::General -	General	Constraints

SYNOPSIS
	 # custom error	messages
	 my $constraint	=
	   And(	Message( 'You need to specify a	Value',	IsDefined ),
		Message( 'The specified	Value is not an	Int', IsInt ));

	 # build results
	 my $valid   = ReturnTrue;
	 my $invalid = ReturnFalse('Just because');

DESCRIPTION
       This library is meant to	contain	those constraints and constraint-like
       elements	that apply generally to	the whole framework.

CONSTRAINTS
   Message($message, $constraint)
       Overrides the "message" set on the result object	for failures in
       $constraint. For	example:

	 my $message = 'How hard is it to give me a number?';
	 my $constraint	= Message($message, IsNumber);

	 my $result = $constraint->('duh...');
	 print $result->message, "\n";

       The "Message" constraint	overrides the error message returned by	it's
       whole subtree, however, the "Message" specification nearest to the
       point of	failure	will win. So while this

	 my $constraint	= Message( 'Foo',
				   IsArrayRef( Message(	'Bar', IsInt )));

	 my $result = $constraint->(['I	am not an Integer']);
	 print $result->message;

       will print "Bar", this

	 my $result = $constraint->('I\'m not even an ArrayRef');
	 print $result->message;

       will output "Foo".

   Scope($name,	$constraint)
       Executes	the passed $constraint in a newly generated scope named	$name.

   SetResult($scope, $name, $constraint)
       Stores the result ov an evaluation of $constraint in $scope under
       $name.

   IsValid($scope, $name)
       Returns a true result if	the result $name, which	has to have been
       stored previously in the	scope named $scope, was	valid.

   ReturnTrue()
       Returns a true result.

   ReturnFalse($msg)
       Returns a false result containing $msg as error message.

SEE ALSO
       Declare::Constraints::Simple, Declare::Constraints::Simple::Library

AUTHOR
       Robert 'phaylon'	Sedlacek "<phaylon@dunkelheit.at>"

LICENSE	AND COPYRIGHT
       This module is free software, you can redistribute it and/or modify it
       under the same terms as perl itself.

perl v5.24.1		     Declare::Constraints::Simple::Library::General(3)

NAME | SYNOPSIS | DESCRIPTION | CONSTRAINTS | SEE ALSO | AUTHOR | LICENSE AND COPYRIGHT

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

home | help