NAME

Rope - Tied objects

VERSION

Version 0.06

SYNOPSIS

Quick summary of what the module does.

Perhaps a little code snippet.

package Knot;

use Rope;

prototyped (
	loops => 1,
	hitches => 10,
	...

);

properties {
	bends => {
		type => sub { $_[0] =~ m/^\d+$/ ? $_[0] : die "$_[0] != integer" },
		value => 10,
		writeable => 0,
		configurable => 1,
		enumerable => 1,
	},
	...
};

function add_loops => sub {
	my ($self, $loop) = @_;
	$self->{loops} += $loop;
};

1;

...

my $k = Knot->new();

say $k->{loops}; # 1;

$k->{add_loops}(5);

say $k->{loops}; # 6;

$k->{add_loops} = 5; # errors

... and/or ...

my $knot = Rope->new({
	name => 'Knot',
	properties => {
		loops => 1,
		hitches => {
			type => Int,
			value => 10,
			writeable => 0,
			enumerable => 0,
		},
		add_loops => sub {
			my ($self, $loop) = @_;
			$self->{loops} += $loop;
		}
	}
});

my $with = Rope->new({
	use => [ 'Rope::Autoload' ],
	with => [ 'Knot' ],
	requires => [ qw/loops hitches add_loops/ ],
	properties => [ bends => { type => Int, configurable => 1 }, ... ]
}, bends => 5);

$knot->{loops};
$with->loops;

AUTHOR

LNATION, <email at lnation.org>

BUGS

Please report any bugs or feature requests to bug-rope at rt.cpan.org, or through the web interface at https://rt.cpan.org/NoAuth/ReportBug.html?Queue=Rope. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

perldoc Rope

You can also look for information at:

ACKNOWLEDGEMENTS

LICENSE AND COPYRIGHT

This software is Copyright (c) 2023 by LNATION.

This is free software, licensed under:

The Artistic License 2.0 (GPL Compatible)