Class::MixinFactory::Factory(3) Class Factory with Selection of Mixins

SYNOPSIS


use Class::MixinFactory::Factory;
my $factory = Class::MixinFactory::Factory->new();

$factory->base_class( "MyClass");
$factory->mixin_prefix( "MyMixins" );
$factory->mixed_prefix( "MyClasses" );
my $class = $factory->class( @mixins );

DESCRIPTION

A mixin factory generates new classes at run-time which inherit from each of several classes.

PUBLIC METHODS

new()
  $factory_class->new() : $factory
  $factory_class->new( %attributes ) : $factory

Create a new factory object.

May be passed a hash of attributes, with the key matching one of the supported accessor methods named below and the value containing the value to assign.

base_class()
  $factory->base_class() : $package_name
  $factory->base_class( $package_name )

Required. Get or set the base class to be inherited from by all mixed classes.

mixin_prefix()
  $factory->mixin_prefix() : $package_name
  $factory->mixin_prefix( $package_name )

Optional. Get or set a prefix to be placed before all mixin class names that don't contain a double-colon. Defaults to the name of the base class.

mixed_prefix()
  $factory->mixed_prefix() : $package_name
  $factory->mixed_prefix( $package_name )

Optional. Get or set a prefix to be placed before all generated class names. Defaults to the name of the base class or the factory class followed by ``::AUTO''

class()
  $factory->class( @mixins ) : $package_name

Find or generate a class combining the requested mixin classes.