GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  DECLARE::CONSTRAINTS::SIMPLE::LIBRARY::REFERENCIAL (3)

.ds Aq ’

NAME

Declare::Constraints::Simple::Library::Referencial - Ref Constraints

CONTENTS

SYNOPSIS



  # scalar or array references
  my $scalar_or_array = IsRefType( qw(SCALAR ARRAY) );

  # scalar reference
  my $int_ref = IsScalarRef( IsInt );

  # accept mappings of ids to objects with "name" methods
  my $id_obj_map =
    IsHashRef( -keys   => IsInt,
               -values => And( IsObject,
                               HasMethods(name) ));

  # an integer list
  my $int_list = IsArrayRef( IsInt );

  # accept code references
  my $is_closure = IsCodeRef;

  # accept a regular expression
  my $is_regex = IsRegex;



DESCRIPTION

This library contains those constraints that can test the validity of references and their types.

CONSTRAINTS

    IsRefType(@types)

Valid if the value is a reference of a kind in @types.

    IsScalarRef($constraint)

This is true if the value is a scalar reference. A possible constraint for the scalar references target value can be passed. E.g.



  my $test_integer_ref = IsScalarRef(IsInt);



    IsArrayRef($constraint)

The value is valid if the value is an array reference. The contents of the array can be validated by passing an other $constraint as argument.

The stack or path part of IsArrayRef is IsArrayRef[$index] where $index is the index of the failing element.

IsHashRef(-keys => CW$constraint, -values => CW$constraint)

True if the value is a hash reference. It can also take two named parameters: -keys can pass a constraint to check the hashes keys, -values does the same for its values.

The stack or path part of IsHashRef looks like IsHashRef[$type $key] where $type is either val or key depending on what was validated, and $key being the key that didn’t pass validation.

IsCodeRef()

Code references have to be valid to pass this constraint.

IsRegex()

True if the value is a regular expression built with qr. <B>NoteB> however, that a simple string that could be used like /$rx/ will not pass this constraint. You can combine multiple constraints with And(@constraints) though.

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.
Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 DECLARE::CONSTRAINTS::SIMPLE::LIBRARY::REFERENCIAL (3) 2006-09-11

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.