NAME Class::Container - Glues object frameworks together
transparently SYNOPSIS package Car; use Class::Container; @ISA =
qw(Class::Container); __PACKAGE__->valid_params ( paint =>
{default => 'burgundy'}, style => {default => 'coupe'},
windshield => {isa => 'Glass'}, radio => {isa =>
'Audio::Device'}, ); __PACKAGE__->contained_objects ( windshield
=> 'Glass::Shatterproof', wheel => { class => 'Vehicle::Wheel',
delayed => 1 }, radio => 'Audio::MP3', ); sub new { my $package
= shift; # 'windshield' and 'radio' objects are created
automatically by # SUPER::new() my $self =
$package->SUPER::new(@_); $self->{right_wheel} =
$self->create_delayed_object('wheel'); ... do any more
initialization here ... return $self; } DESCRIPTION This class
facilitates building frameworks of several classes that inter-
operate. It was first designed and built for "HTML::Mason", in
which the Compiler, Lexer, Interpreter, Resolver, Component,
Buffer, and several other objects must create each other
transparently, passing the appropria