Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 30.049.049 Times

Class::Maker 0.05.18

  Date Added: October 22, 2010  |  Visits: 745

Class::Maker

Report Broken Link
Printer Friendly Version


Product Homepage
Download (90 downloads)

Class::Maker Perl module contains classes, reflection, schema, serialization, attribute- and multiple inheritance. SYNOPSIS use Class::Maker qw(class); class Human, { isa => [qw( ParentClass )], public => { string => [qw(name lastname)], ref => [qw(father mother)], array => [qw(friends)], custom => [qw(anything)], }, private => { int => [qw(dummy1 dummy2)], }, configure => { ctor => create, explicit => 0, }, }; sub Human::greeting : method { my $this = shift; printf This is %s (%d), $this->name, $this->uid; } class UnixUser, { isa => [qw( Human )], public => { int => [qw(uid gid)], string => [qw(username)], }, }; my $a = Human->new( uid => 1, gid => 2, name => Bart ); $a->father( Human->new( name => Houmer ) ); $a->greeting(); $a->uid = 12; $a->_dummy1( bla ); Class::Maker introduces the concept of classes via a "class" function. It automatically creates packages, ISA, new and attribute-handlers. The classes can inherit from common perl-classes and class-maker classes. Single and multiple inheritance is supported. This package is for everybody who wants to program oo-perl and does not really feel comfortable with the common way. Java-like reflection is also implemented and allows one to inspect the class properties and methods during runtime. This is helpfull for implementing persistance and serialization. A Tangram (see cpan) schema generator is included to the package, so one can use Tangram object-persistance on the fly as long as he uses Class::Maker classes..

Requirements: No special requirements
Platforms: Linux
Keyword: Class Classes Classmaker Libraries Maker Perl Multiple Perl Module Programming Qw Reflection Schema
Users rating: 0/10

License: Freeware Size: 49.15 KB
CLASS::MAKER RELATED
Libraries  -  Perl6::Classes 0.22
Perl6::Classes project contains first class classes in Perl 5. SYNOPSIS use Perl6::Classes; class Composer { submethod BUILD { print "Giving birth to a new composern" } method compose { print "Writing some music...n" } } class...
7.17 KB  
Libraries  -  Sort::Half::Maker 0.03
Sort::Half::Maker is a Perl module to create half-sort subs easily. SYNOPSIS use Sort::Half::Maker qw(make_halfsort); $sub = make_halfsort( start => [ qw(x y z) ], end => [ qw(a b c) ], fallback => sub { $_[0] cmp $_[1] }, ); @list =...
4.1 KB  
Libraries  -  List::Maker 0.0.3
List::Maker is a Perl module that can generate more sophisticated lists than just $a..$b. SYNOPSIS use List::Maker; @list = ; # (1,2,3,4,5,6,7,8,9,10) @list = ; # (10,9,8,7,6,5,4,3,2,1) @list = #...
7.17 KB  
Libraries  -  File::Maker 0.05
File::Maker is a Perl module that mimics a make by loading a database and calling targets methods. SYNOPSIS ##### # Subroutine interface # use File::Maker qw(load_db); %data = load_db($pm); ###### # Object interface # require...
77.82 KB  
Libraries  -  Class::Contract 1.00
Class::Contract - Design-by-Contract OO in Perl. SYNOPSIS package ClassName use Class::Contract; contract { inherits BaseClass; invar { ... }; attr data1; attr data2 => HASH; class attr shared => SCALAR; ctor new; method...
26.62 KB  
Libraries  -  Inline::CPP 0.25
Inline::CPP is a Perl module that can write Perl subroutines and classes in C++. SYNOPSIS use Inline CPP; print "9 + 16 = ", add(9, 16), "n"; print "9 - 16 = ", subtract(9, 16), "n"; __END__ __CPP__ int add(int x, int y) { return x +...
24.58 KB  
Libraries  -  Bundle::Perl6 0.07
Bundle::Perl6 is a Perl bundle to install Perl6-related modules. SYNOPSIS perl -MCPAN -e install Bundle::Perl6 CONTENTS Attribute::Handlers - Simpler definition of attribute handlers Attribute::Types - Attributes that confer type on...
3.07 KB  
Libraries  -  Object::Realize::Later 0.16
Object::Realize::Later is a Perl module with delayed creation of objects. SYNOPSIS package MyLazyObject; use Object::Realize::Later becomes => MyRealObject, realize => load; The Object::Realize::Later class helps with implementing...
10.24 KB  
Libraries  -  GCJ::Cni::Examples 0.03
GCJ::Cni::Examples is a Perl module with examples of how to use GCJs CNI interface to write Perl Modules in Java. EXAMPLES Writing Treaded modules in Java One benefit of using GCJ is that it takes advantage of POSIX threading. This is nice...
20.48 KB  
Libraries  -  Audio::MPEG 0.04
Audio::MPEG is a Perl module for encoding and decoding of MPEG Audio (MP3). SYNOPSIS use Audio::MPEG; Audio::MPEG is a Perl interface to the LAME and MAD MPEG audio Layers I, II, and III encoding and decoding libraries. Rationale I have...
57 MB  
NEW DOWNLOADS IN PROGRAMMING, LIBRARIES
Programming  -  FLEX-db Digital Asset Manager 3.0.9
FLEX-db - an enterprise Digital Asset Manager (DAM). It ingests and links metadata with files, creates thumbnails, and processes files using business rules. FLEX-db has a JSP client, Java app server for file input and output and an EJB metadata...
21.57 MB  
Programming  -  Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....
20.48 KB  
Programming  -  dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by freedesktop.org, it is used to describe information about an application such as the name and...
327.68 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  libyasl 0.2
Libyasl is a C++ class library to easily realize TCP/UDP/Multicast clientsand servers in IPv4 and IPv6 environments under GNU/Linux systems.
143.36 KB  
Libraries  -  wolfSSL 3.12.0
The wolfSSL embedded SSL/TLS library is a lightweight SSL library written in ANSI standard C and targeted for embedded and RTOS environments - primarily because of its small size, speed, and feature set. It is commonly used in standard operating...
2.73 MB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB