NAME
Badger::Constants - defines constants for other Badger modules
SYNOPSIS
use Badger::Constants 'HASH';if (ref $something eq HASH) {# rejoice! No need to quote the word 'HASH'}
DESCRIPTION
This module defines a number of constants used by other "Badger" modules. They can be imported into the caller's namespace by naming them as options to the "use Badger::Constants" statement:
use Badger::Constants 'HASH';print HASH; # HASH
Alternatively, one of the tagset identifiers may be specified to import different sets of constants.
use Badger::Constants ':types';print HASH; # HASH
EXPORTABLE CONSTANTS
CONSTANTS
Set to "Badger::Constants".
SCALAR
The literal word "SCALAR", typically used for testing references.
if (ref $data eq SCALAR) {...}
ARRAY
The literal word "ARRAY", typically used for testing references.
if (ref $data eq ARRAY) {...}
HASH
The literal word "HASH", typically used for testing references.
if (ref $data eq HASH) {...}
CODE
The literal word "CODE", typically used for testing references.
if (ref $data eq CODE) {...}
GLOB
The literal word "GLOB", typically used for testing references.
if (ref $data eq GLOB) {...}
REGEX
The literal word "Regexp", typically used for testing references.
if (ref $data eq REGEX) {...}
FALSE
A false value (0)
TRUE
A true value (1)
OFF
A generic flag used to disable things (0).
ON
A generic flag used to enable things (1).
ALL
The literal string "all".
NONE
The literal string "none".
DEFAULT
The literal string "default".
WARN
The literal string "warn".
LAST
The value "-1", used to index the last item in an array.
$array[LAST];
CRLF
An unambiguous carriage return and newline sequence: "\015\012"
PKG
An alias for the "::" symbol used to delimiter Perl packages. Typically used to construct symbol references.
use Badger::Constants 'PKG';use constant EXAMPLE => 'EXAMPLE';my $var = ${ $pkg.PKG.EXAMPLE }; # same as: ${"${pkg}::EXAMPLE"}
DOT
An alias for a dot ".".
REFS
The literal string "refs". Typically used like so:
no strict REFS;
ONCE
The literal string "once". Typically used like so:
no warnings ONCE;
BLANK
An empty string. How much more blank could this be? And the answer is none. None more blank.
SPACE
A single space character. Not to be confused with the three dimensional fabric of reality that it happens to share a name with.
SLASH
A forward slash as used to separate path segments in URIs and filesystem paths on sane operating systems.
DELIMITER
A regular expression used to split whitespace delimited tokens. Also accepts commas with optional trailing whitespace as a delimiter.
$names = [ split DELIMITER, $names ]unless ref $names eq ARRAY;
WILDCARD
A regular expression used to match strings containing the "*" or "?" wildcard characters.
if ($path =~ WILDCARD) {# do something...}
UTF8
The literal string "utf8".
JSON
The literal string "json".
YAML
The literal string "yaml".
LOADED
Contains the literal string "BADGER_LOADED". The Badger::Class module uses it to define the $BADGER_LOADED variable in any modules that it loads.
EXPORTABLE TAG SETS
The following tag sets and associated constants are defined:
:types
SCALAR HASH ARRAY CODE REGEX
:values
FALSE TRUE OFF ON ALL NONE DEFAULT
:all
All the constants.
AUTHOR
Andy Wardley <http://wardley.org/>
COPYRIGHT
Copyright (C) 1996-2009 Andy Wardley. All Rights Reserved.
This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
SEE ALSO
See Badger::Exporter for more information on exporting variables.