Class/PublicPrivate version 0.80
========================

NAME
    Class::PublicPrivate - Class with public keys with any name and a
    separate set of private keys

SYNOPSIS
    PublicPrivate is intended for use as a base class for other classes.
    Users of class based on PublicPrivate can assign any keys to the object
    hash without interfering with keys used internally. The private data can
    be accessed by retrieving the private hash with the "private" method.
    For example, the following code outputs two different values, one for
    the public value of "start" and another for the private value of
    "start".

     package ExtendedClass;
     use Class::PublicPrivate;
     @ExtendedClass::ISA=('Class::PublicPrivate');
 
     sub new{
        my $class = shift;
        my $self = $class->SUPER::new();
        my $private = $self->private;
    
        # initialize one of the private properties
        $private->{'start'}=time();
    
        return $self;
     }
 
     package main;
     my ($var);
     $var = ExtendedClass->new();
     $var->{'start'} = 1;

     print $var->{'start'}, "\n";
     print $var->private()->{'start'}, "\n";

INSTALLATION
    Class::PublicPrivate can be installed with the usual routine:

            perl Makefile.PL
            make
            make test
            make install

    You can also just copy PublicPrivate.pm into the Class/ directory of one
    of your library trees.

METHODS
  YourClass->new(classname ,[initikey1=>initvalue [, ...]])

    Returns an instantiation of YourClass, where YourClass is a class that
    extends Class::PublicPrivate. Additional key=>value pairs are stored in
    the private hash. Programs that use your class can store any date
    directly in it w/o affecting the object's private data.

  $ob->private()

    Returns a reference to the hash of private data.

TERMS AND CONDITIONS
    Copyright (c) 2000 by Miko O'Sullivan. All rights reserved. This program
    is free software; you can redistribute it and/or modify it under the
    same terms as Perl itself. This software comes with NO WARRANTY of any
    kind.

AUTHOR
    Miko O'Sullivan miko@idocs.com

