NAME

PNI::Item - is the base class

SYNOPSIS

package PNI::Point;

use strict;
use base 'PNI::Item';

DESCRIPTION

This is an inside out object, to provide encapsulation for PNI classes.

Every object has an id, for instance, the reference to the object itself is a blessed id.

Objects can be (un)decorated adding/removing attributes at runtime.

Every attribute value is a scalar or a reference.

METHODS

add

$self->add('x'); 
$self->add( y => 1 );

cleanup

del

get

my $x = $self->get('x');

has

id

my $id = $self->id;

init

set

$self->set( x => 10 );

type

my $type = $self->type; # the package name