Mercurial > repos > jjohnson > crest
comparison Tree/Interval/Node/Constants.pm @ 0:acc8d8bfeb9a
Uploaded
author | jjohnson |
---|---|
date | Wed, 08 Feb 2012 16:59:24 -0500 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:acc8d8bfeb9a |
---|---|
1 package Tree::Interval::Node::Constants; | |
2 | |
3 use strict; | |
4 use Carp; | |
5 use vars qw( $VERSION @EXPORT ); | |
6 | |
7 $VERSION = '0.1'; | |
8 | |
9 require Exporter; | |
10 *import = \&Exporter::import; | |
11 | |
12 my @Node_slots; | |
13 my @Node_colors; | |
14 | |
15 BEGIN { | |
16 @Node_slots = qw(PARENT LEFT RIGHT COLOR KEY VAL MAX INTERVAL); | |
17 @Node_colors = qw(RED BLACK); | |
18 } | |
19 | |
20 @EXPORT = (@Node_colors, map {"_$_"} @Node_slots); | |
21 | |
22 use enum @Node_colors; | |
23 use enum @Node_slots; | |
24 | |
25 # enum doesn't allow symbols to start with "_", but we want them | |
26 foreach my $s (@Node_slots) { | |
27 no strict 'refs'; | |
28 *{"_$s"} = \&$s; | |
29 delete $Tree::RB::Node::Constants::{$s}; | |
30 } | |
31 | |
32 1; |