Badger::Constants(3pm)

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.