comparison Lib/IMPL/template.pm @ 167:1f7a6d762394

SQL schema in progress
author sourcer
date Thu, 12 May 2011 08:57:19 +0400
parents 76515373dac0
children d1676be8afcc
comparison
equal deleted inserted replaced
166:4267a2ac3d46 167:1f7a6d762394
8 shift; 8 shift;
9 my %args = @_; 9 my %args = @_;
10 10
11 my $class = caller; 11 my $class = caller;
12 12
13 my @paramNames = grep /\w+/, @{$args{parameters} || []}; 13 my @paramNames = grep m/\w+/, @{$args{parameters} || []};
14 my $declare = $args{declare}; 14 my $declare = $args{declare};
15 my @isa = (@{$args{base} || []}, $class); 15 my @isa = (@{$args{base} || []}, $class);
16 my %instances; 16 my %instances;
17 17
18 no strict 'refs'; 18 no strict 'refs';
89 base => [qw(IMPL::Object)], 89 base => [qw(IMPL::Object)],
90 declare => sub { 90 declare => sub {
91 my ($class) = @_; 91 my ($class) = @_;
92 my $item_t = spec KeyValuePair($class->TKey,$class->TValue); 92 my $item_t = spec KeyValuePair($class->TKey,$class->TValue);
93 93
94 public $class->CreateProperty(items => prop_get | prop_list, { type => $item_t } ) 94 public $class->CreateProperty(items => prop_get | prop_list, { type => $item_t } );
95 95
96 $class->static_accessor( ItemType => $item_t ); 96 $class->static_accessor( ItemType => $item_t );
97 } 97 }
98 ) 98 )
99 99