package Text::Wigwam::Const;

    use strict;
    use warnings;
    our $VERSION = '0.01';

    require Exporter;

    our @ISA = qw(Exporter);

    our %EXPORT_TAGS = (
        all => [
            qw(
                VAR
                NUM
                STRING
                SCALAR
                ARRAY
                HASH
                VOID
                ANY
                BLESSED
                EXPR
                CODE
                BLOCK
                STRICT
                TERM
                OPTIONAL
                ITERATE
                BOOLEAN
                RUNONCE
            ),
            @Text::Wigwam::Globals::EXPORT_OK
        ],
    );

    our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } );
    our @EXPORT = qw(   );

    use constant     VAR         => 0x00000001;
    use constant     NUM         => 0x00000002;
    use constant     STRING      => 0x00000004;
    use constant     SCALAR      => 0x00000008;
    use constant     ARRAY       => 0x00000010;
    use constant     HASH        => 0x00000020;
    use constant     ANY         => 0x00000040;
    use constant     VOID        => 0x00000080;
    use constant     BLESSED     => 0x00000100;
    use constant     EXPR        => 0x00000200;
    use constant     CODE        => 0x00000400;
    use constant     BLOCK       => 0x00000800;
    use constant     STRICT      => 0x00001000;
    use constant     TERM        => 0x00002000;
    use constant     OPTIONAL    => 0x00004000;
    use constant     ITERATE     => 0x00008000;
    use constant     BOOLEAN     => 0x00010000;
    use constant     RUNONCE     => 0x00020000;

1;

__END__

sub SCALAR {
	warn "use of SCALAR at ".join( ", " => caller() );
	return STRING;
}

sub GLOB {
	warn "use of GLOB at ".join( ", " => caller() );
	return ANY;
}

