view lib/IMPL/Const.pm @ 412:30e8c6a74937 ref20150831

working on di container (role based registrations)
author cin
date Mon, 21 Sep 2015 19:54:10 +0300
parents c6e90e02dd17
children
line wrap: on
line source

package IMPL::Const;
use strict;

use parent qw(Exporter);

our %EXPORT_TAGS = (
    all => [
        qw(
          &ACCESS_PUBLIC
          &ACCESS_PROTECTED
          &ACCESS_PRIVATE
          &PROP_GET
          &PROP_SET
          &PROP_OWNERSET
          &PROP_LIST
          &PROP_ALL
          &PROP_DIRECT
          )
    ],
    prop => [
        qw(
          &PROP_GET
          &PROP_SET
          &PROP_OWNERSET
          &PROP_LIST
          &PROP_ALL
          &PROP_RO
          &PROP_RW
          &PROP_DIRECT
          )
    ],
    access => [
        qw(
          &ACCESS_PUBLIC
          &ACCESS_PROTECTED
          &ACCESS_PRIVATE
          )
    ]
    
);

our @EXPORT_OK = keys %{ { map (($_,1) , map (@{$_}, values %EXPORT_TAGS) ) } };

use constant {
    ACCESS_PUBLIC    => 1,
    ACCESS_PROTECTED => 2,
    ACCESS_PRIVATE   => 3,
    PROP_GET         => 1,
    PROP_SET         => 2,
    PROP_OWNERSET    => 10,
    PROP_LIST        => 4,
    PROP_ALL         => 3,
    PROP_RW          => 3,
    PROP_RO          => 11,
    PROP_DIRECT      => 16
};

1;