https://github.com/awncorp/data-object-class
Class Builder for Perl 5
https://github.com/awncorp/data-object-class
object-oriented perl perl5
Last synced: 7 months ago
JSON representation
Class Builder for Perl 5
- Host: GitHub
- URL: https://github.com/awncorp/data-object-class
- Owner: awncorp
- License: other
- Created: 2020-10-03T19:04:34.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2020-10-03T20:33:44.000Z (over 5 years ago)
- Last Synced: 2025-01-01T11:27:39.367Z (over 1 year ago)
- Topics: object-oriented, perl, perl5
- Language: Perl
- Size: 27.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README
- Changelog: CHANGES
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
NAME
Data::Object::Class
ABSTRACT
Class Builder for Perl 5
SYNOPSIS
package Identity;
use Data::Object::Class;
package main;
my $id = Identity->new;
DESCRIPTION
This package modifies the consuming package making it a class.
INHERITS
This package inherits behaviors from:
Moo
SCENARIOS
This package supports the following scenarios:
extends
# given: synopsis
package Person;
use Data::Object::Class;
extends 'Identity';
package main;
my $person = Person->new;
This package supports the extends keyword, which is used to declare
superclasses your class will inherit from. See Moo for more
information.
has
# given: synopsis
package Person;
use Data::Object::Class;
has name => (
is => 'ro'
);
package main;
my $person = Person->new(name => '...');
This package supports the has keyword, which is used to declare class
attributes, which can be accessed and assigned to using the built-in
getter/setter or by the object constructor. See Moo for more
information.
with
# given: synopsis
package Employable;
use Moo::Role;
package Person;
use Data::Object::Class;
with 'Employable';
package main;
my $person = Person->new;
This package supports the with keyword, which is used to declare roles
to be used and compose into your class. See Moo for more information.
AUTHOR
Al Newkirk, awncorp@cpan.org
LICENSE
Copyright (C) 2011-2019, Al Newkirk, et al.
This is free software; you can redistribute it and/or modify it under
the terms of the The Apache License, Version 2.0, as elucidated in the
"license file"
.
PROJECT
Wiki
Project
Initiatives
Milestones
Contributing
Issues