Acme-Oil

 view release on metacpan or  search on metacpan

lib/Acme/Oil/Ashed/Scalar.pm  view on Meta::CPAN

use base qw(Acme::Oil::ed);


sub TIESCALAR {
	my $class  = shift;
	my $scalar = shift;
	my $self   = {
		value => $scalar,
		level => 10,
	};
	bless $self, $class;
}


sub FETCH {
	'ASH';
}


sub STORE {}

lib/Acme/Oil/ed.pm  view on Meta::CPAN

	my $self = shift;
	my $ash  = 'ASH';

	carp "Don't bring the fire close!  ...Bom!"
	  if(warnings::enabled('Acme::Oil'));

	$self =~ /Acme::Oil::ed::(\w+)/;

	if($1 eq 'Scalar'){
		require Acme::Oil::Ashed::Scalar;
		bless $self, 'Acme::Oil::Ashed::Scalar';
	}
	elsif($1 eq 'Array'){
		require Acme::Oil::Ashed::Array;
		bless $self, 'Acme::Oil::Ashed::Array';
	}
}


1;

lib/Acme/Oil/ed/Array.pm  view on Meta::CPAN

use base qw(Tie::Array Acme::Oil::ed);


sub TIEARRAY {
	my $class = shift;
	my @array = @_;
	my $self   = {
		value => [@array],
		level => 80,
	};
	bless $self, $class;
}


sub FETCH {
	my ($self,$index) = @_;

	if( $self->is_slipped(1, 1) ){
		my $rand = rand($self->FETCHSIZE + 1);
		carp "Can't be taken out well by your hand's slipping."
		  if($rand ne $index and warnings::enabled('Acme::Oil'));

lib/Acme/Oil/ed/Scalar.pm  view on Meta::CPAN

use base qw(Acme::Oil::ed);


sub TIESCALAR {
	my $class  = shift;
	my $scalar = shift;
	my $self   = {
		value => $scalar,
		level => 10,
	};
	bless $self, $class;
}


sub FETCH {
	my $self  = shift;

	if( $self->is_slipped ){
		carp "Can't be taken out by your hand's slipping."
		  if(warnings::enabled('Acme::Oil'));
		return;



( run in 1.400 second using v1.01-cache-2.11-cpan-de7293f3b23 )