class xml
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 4104
Class::XML 0.06
Class::XML is a Perl module for simple XML Abstraction. more>>
Class::XML is a Perl module for simple XML Abstraction.
SYNOPSIS
package Foo;
use base qw/Class::XML/;
__PACKAGE__->has_attributes(qw/length colour/);
__PACKAGE__->has_child(bar => Bar);
package Bar;
use base qw/Class::XML/;
__PACKAGE__->has_parent(foo);
__PACKAGE__->has_attribute(counter);
# Meanwhile, in another piece of code -
my $foo = Foo->new( xml => # Or filename or ioref or parser
qq!< foo length="3m" colour="pink" >< bar / >< /foo >! );
$foo->length; # Returns "3m"
$foo->colour("purple"); # Sets colour to purple
print $foo; # Outputs
my $new_bar = new Bar; # Creates empty Bar node
$new_bar->counter("formica");
$foo->bar($new_bar); # Replaces child
$new_bar->foo->colour; # Returns "purple"
$foo->colour(undef); # Deletes colour attribute
print $foo; # Outputs < foo length="3m" >< bar counter="formica" / >< /foo >
Class::XML is designed to make it reasonably easy to create, consume or modify XML from Perl while thinking in terms of Perl objects rather than the available XML APIs; it was written out of a mixture of frustration that JAXB (for Java) and XMLSerializer (for .Net) provided programming capabilities that simply werent easy to do in Perl with the existing modules, and the sheer pleasure that Ive had using Class::DBI.
The aim is to provide a convenient abstraction layer that allows you to put as much of your logic as you like into methods on a class tree, then throw some XML at that tree and get back a tree of objects to work with. It should also be easy to get started with for anybody familiar with Class::DBI (although I doubt you could simply switch them due to the impedance mismatch between XML and relational data) and be pleasant to use from the Template Toolkit.
Finally, all Class::XML objects are also XML::XPath nodes so the full power of XPath is available to you if Class::XML doesnt provide a shortcut to what youre trying to do (but if you find it doesnt on a regular basis, contact me and Ill see if I can fix that.
<<lessSYNOPSIS
package Foo;
use base qw/Class::XML/;
__PACKAGE__->has_attributes(qw/length colour/);
__PACKAGE__->has_child(bar => Bar);
package Bar;
use base qw/Class::XML/;
__PACKAGE__->has_parent(foo);
__PACKAGE__->has_attribute(counter);
# Meanwhile, in another piece of code -
my $foo = Foo->new( xml => # Or filename or ioref or parser
qq!< foo length="3m" colour="pink" >< bar / >< /foo >! );
$foo->length; # Returns "3m"
$foo->colour("purple"); # Sets colour to purple
print $foo; # Outputs
my $new_bar = new Bar; # Creates empty Bar node
$new_bar->counter("formica");
$foo->bar($new_bar); # Replaces child
$new_bar->foo->colour; # Returns "purple"
$foo->colour(undef); # Deletes colour attribute
print $foo; # Outputs < foo length="3m" >< bar counter="formica" / >< /foo >
Class::XML is designed to make it reasonably easy to create, consume or modify XML from Perl while thinking in terms of Perl objects rather than the available XML APIs; it was written out of a mixture of frustration that JAXB (for Java) and XMLSerializer (for .Net) provided programming capabilities that simply werent easy to do in Perl with the existing modules, and the sheer pleasure that Ive had using Class::DBI.
The aim is to provide a convenient abstraction layer that allows you to put as much of your logic as you like into methods on a class tree, then throw some XML at that tree and get back a tree of objects to work with. It should also be easy to get started with for anybody familiar with Class::DBI (although I doubt you could simply switch them due to the impedance mismatch between XML and relational data) and be pleasant to use from the Template Toolkit.
Finally, all Class::XML objects are also XML::XPath nodes so the full power of XPath is available to you if Class::XML doesnt provide a shortcut to what youre trying to do (but if you find it doesnt on a regular basis, contact me and Ill see if I can fix that.
Download (0.018MB)
Added: 2006-09-07 License: Perl Artistic License Price:
1142 downloads
Class::CGI 0.20
Class::CGI is a Perl module to fetch objects from your CGI object. more>>
Class::CGI is a Perl module to fetch objects from your CGI object.
SYNOPSIS
use Class::CGI
handlers => {
customer_id => My::Customer::Handler
};
my $cgi = Class::CGI->new;
my $customer = $cgi->param(customer_id);
my $name = $customer->name;
my $email = $cgi->param(email); # behaves like normal
if ( my %errors = $cgi->errors ) {
# do error handling
}
For small CGI scripts, its common to get a parameter, untaint it, pass it to an object constructor and get the object back. This module would allow one to to build Class::CGI handler classes which take the parameter value, automatically perform those steps and just return the object. Much grunt work goes away and you can get back to merely pretending to work.
<<lessSYNOPSIS
use Class::CGI
handlers => {
customer_id => My::Customer::Handler
};
my $cgi = Class::CGI->new;
my $customer = $cgi->param(customer_id);
my $name = $customer->name;
my $email = $cgi->param(email); # behaves like normal
if ( my %errors = $cgi->errors ) {
# do error handling
}
For small CGI scripts, its common to get a parameter, untaint it, pass it to an object constructor and get the object back. This module would allow one to to build Class::CGI handler classes which take the parameter value, automatically perform those steps and just return the object. Much grunt work goes away and you can get back to merely pretending to work.
Download (0.017MB)
Added: 2006-10-20 License: Perl Artistic License Price:
1099 downloads
Class::Meta 0.53
Class::Meta is a Perl class automation, introspection, and data validation. more>>
Class::Meta is a Perl class automation, introspection, and data validation.
SYNOPSIS
Generate a class:
package MyApp::Thingy;
use strict;
use Class::Meta;
use Class::Meta::Types::String;
use Class::Meta::Types::Numeric;
BEGIN {
# Create a Class::Meta object for this class.
my $cm = Class::Meta->new( key => thingy );
# Add a constructor.
$cm->add_constructor(
name => new,
create => 1,
);
# Add a couple of attributes with generated methods.
$cm->add_attribute(
name => uuid,
authz => Class::Meta::READ,
type => string,
required => 1,
default => sub { Data::UUID->new->create_str },
);
$cm->add_attribute(
name => name,
is => string,
required => 1,
default => undef,
);
$cm->add_attribute(
name => age,
is => integer,
default => undef,
);
# Add a custom method.
$cm->add_method(
name => chk_pass,
view => Class::Meta::PUBLIC,
);
$cm->build;
}
Then use the class:
use MyApp::Thingy;
my $thingy = MyApp::Thingy->new;
print "ID: ", $thingy->id, $/;
$thingy->name(Larry);
print "Name: ", $thingy->name, $/;
$thingy->age(42);
print "Age: ", $thingy->age, $/;
Or make use of the introspection API:
use MyApp::Thingy;
my $class = MyApp::Thingy->my_class;
my $thingy;
print "Examining object of class ", $class->package, $/;
print "nConstructors:n";
for my $ctor ($class->constructors) {
print " o ", $ctor->name, $/;
$thingy = $ctor->call($class->package);
}
print "nAttributes:n";
for my $attr ($class->attributes) {
print " o ", $attr->name, " => ", $attr->get($thingy), $/;
if ($attr->authz >= Class::Meta::SET && $attr->type eq string) {
$attr->get($thingy, hey there!);
print " Changed to: ", $attr->get($thingy), $/;
}
}
print "nMethods:n";
for my $meth ($class->methods) {
print " o ", $meth->name, $/;
$meth->call($thingy);
}
Class::Meta provides an interface for automating the creation of Perl classes with attribute data type validation. It differs from other such modules in that it includes an introspection API that can be used as a unified interface for all Class::Meta-generated classes. In this sense, it is an implementation of the "Facade" design pattern.
<<lessSYNOPSIS
Generate a class:
package MyApp::Thingy;
use strict;
use Class::Meta;
use Class::Meta::Types::String;
use Class::Meta::Types::Numeric;
BEGIN {
# Create a Class::Meta object for this class.
my $cm = Class::Meta->new( key => thingy );
# Add a constructor.
$cm->add_constructor(
name => new,
create => 1,
);
# Add a couple of attributes with generated methods.
$cm->add_attribute(
name => uuid,
authz => Class::Meta::READ,
type => string,
required => 1,
default => sub { Data::UUID->new->create_str },
);
$cm->add_attribute(
name => name,
is => string,
required => 1,
default => undef,
);
$cm->add_attribute(
name => age,
is => integer,
default => undef,
);
# Add a custom method.
$cm->add_method(
name => chk_pass,
view => Class::Meta::PUBLIC,
);
$cm->build;
}
Then use the class:
use MyApp::Thingy;
my $thingy = MyApp::Thingy->new;
print "ID: ", $thingy->id, $/;
$thingy->name(Larry);
print "Name: ", $thingy->name, $/;
$thingy->age(42);
print "Age: ", $thingy->age, $/;
Or make use of the introspection API:
use MyApp::Thingy;
my $class = MyApp::Thingy->my_class;
my $thingy;
print "Examining object of class ", $class->package, $/;
print "nConstructors:n";
for my $ctor ($class->constructors) {
print " o ", $ctor->name, $/;
$thingy = $ctor->call($class->package);
}
print "nAttributes:n";
for my $attr ($class->attributes) {
print " o ", $attr->name, " => ", $attr->get($thingy), $/;
if ($attr->authz >= Class::Meta::SET && $attr->type eq string) {
$attr->get($thingy, hey there!);
print " Changed to: ", $attr->get($thingy), $/;
}
}
print "nMethods:n";
for my $meth ($class->methods) {
print " o ", $meth->name, $/;
$meth->call($thingy);
}
Class::Meta provides an interface for automating the creation of Perl classes with attribute data type validation. It differs from other such modules in that it includes an introspection API that can be used as a unified interface for all Class::Meta-generated classes. In this sense, it is an implementation of the "Facade" design pattern.
Download (0.060MB)
Added: 2006-10-05 License: Perl Artistic License Price:
1114 downloads
Class::Date 1.1.9
Class::Date provides a date datatype for Perl. more>>
Class::Date is a perl module, which provides a simple date type for perl.
You can create new Class::Date objects with a constructor from different scalar formats, array refs, and hash refs, and then you can easily manipulate it by the builtin "+" and "-" operators (e.g., $date=date([2001,03,15])+3Y 1s). Relative date types also available.
Enhancements:
- This release adds "ampm" and "meridiam" methods.
<<lessYou can create new Class::Date objects with a constructor from different scalar formats, array refs, and hash refs, and then you can easily manipulate it by the builtin "+" and "-" operators (e.g., $date=date([2001,03,15])+3Y 1s). Relative date types also available.
Enhancements:
- This release adds "ampm" and "meridiam" methods.
Download (0.034MB)
Added: 2006-05-15 License: GPL (GNU General Public License) Price:
1257 downloads
Class::Trait 0.21
Class::Trait is a Perl implementation of Traits in Perl. more>>
Class::Trait is a Perl implementation of Traits in Perl.
SYNOPSIS
# to turn on debugging (do this before
# any other traits are loaded)
use Class::Trait debug;
# nothing happens, but the module is loaded
use Class::Trait;
# loads these two traits and flatten them
# into the current package
use Class::Trait qw(TPrintable TComparable);
# loading a trait and performing some
# trait operations (alias, exclude) first
use Class::Trait (
TPrintable => {
alias => { "stringValue" => "strVal" },
exclude => "stringValue",
},
);
# loading two traits and performing
# a trait operation (exclude) on one
# module to avoid method conflicts
use Class::Trait
TComparable => {
# exclude the basic equality method
# from TComparable and use the ones
# in TEquality instead.
exclude => [ "notEqualTo", "equalTo" ]
},
TEquality #<<less
SYNOPSIS
# to turn on debugging (do this before
# any other traits are loaded)
use Class::Trait debug;
# nothing happens, but the module is loaded
use Class::Trait;
# loads these two traits and flatten them
# into the current package
use Class::Trait qw(TPrintable TComparable);
# loading a trait and performing some
# trait operations (alias, exclude) first
use Class::Trait (
TPrintable => {
alias => { "stringValue" => "strVal" },
exclude => "stringValue",
},
);
# loading two traits and performing
# a trait operation (exclude) on one
# module to avoid method conflicts
use Class::Trait
TComparable => {
# exclude the basic equality method
# from TComparable and use the ones
# in TEquality instead.
exclude => [ "notEqualTo", "equalTo" ]
},
TEquality #<<less
Download (0.033MB)
Added: 2006-10-05 License: Perl Artistic License Price:
1114 downloads
DBIx::Class::LibXMLdoc 0.03
DBIx::Class::LibXMLdoc is a Perl module to create an adjunct Doc accessor of a columns data. more>>
DBIx::Class::LibXMLdoc is a Perl module to create an adjunct "Doc" accessor of a columns data which is automatically parsed into a LibXML documentElement (alpha-software).
SYNOPSIS
package My::DB::thingy;
__PACKAGE__->load_components(qw/ PK::Auto LibXMLdoc Core /);
__PACKAGE__->table(thingy);
__PACKAGE__->add_columns(qw/ id title body created owner whatever /);
__PACKAGE__->set_primary_key(id);
__PACKAGE__->libXMLdoc_columns(qw/ body /);
package main;
use My::DB;
my $schema = My::DB->connect(...);
my $thingy = $schema->resultset("thingy")->find(153);
print $thingy->bodyDoc->toString, "nn";
print $thingy->bodyDoc->textContent, "n";
This DBIx::Class component does not alter your data in any way. It takes column names to get the value from the column, parse it into XML with LibXML and make the documentElement object available via an autogenerated accessor named by affixing the column with "Doc."
The XML parsing is on demand so it doesnt waste time doing it to data you dont use or by doing it more than once to data that is unchanged.
A wrapper XML tag for the mini-document is auto-generated from the table + column name. So-
my $xhmlt =<<less
SYNOPSIS
package My::DB::thingy;
__PACKAGE__->load_components(qw/ PK::Auto LibXMLdoc Core /);
__PACKAGE__->table(thingy);
__PACKAGE__->add_columns(qw/ id title body created owner whatever /);
__PACKAGE__->set_primary_key(id);
__PACKAGE__->libXMLdoc_columns(qw/ body /);
package main;
use My::DB;
my $schema = My::DB->connect(...);
my $thingy = $schema->resultset("thingy")->find(153);
print $thingy->bodyDoc->toString, "nn";
print $thingy->bodyDoc->textContent, "n";
This DBIx::Class component does not alter your data in any way. It takes column names to get the value from the column, parse it into XML with LibXML and make the documentElement object available via an autogenerated accessor named by affixing the column with "Doc."
The XML parsing is on demand so it doesnt waste time doing it to data you dont use or by doing it more than once to data that is unchanged.
A wrapper XML tag for the mini-document is auto-generated from the table + column name. So-
my $xhmlt =<<less
Download (0.005MB)
Added: 2007-01-17 License: Perl Artistic License Price:
1010 downloads
Calendario Class 1.0
Calendario Class provides a PHP class that is useful for creating calendars and organizers. more>>
Calendario Class provides a PHP class that is useful for creating calendars and organizers.
Calendario Class is a PHP class that helps you to create calendar and organizers.
Its highly configurable, letting you choose how many days are in a week, when a week starts, the details of the HTML output, and so on.
It also knows about holidays.
Enhancements:
- Added holidays functionality
<<lessCalendario Class is a PHP class that helps you to create calendar and organizers.
Its highly configurable, letting you choose how many days are in a week, when a week starts, the details of the HTML output, and so on.
It also knows about holidays.
Enhancements:
- Added holidays functionality
Download (0.096MB)
Added: 2007-03-16 License: LGPL (GNU Lesser General Public License) Price:
956 downloads
Class::Cloneable 0.03
Class::Cloneable is a base class for Cloneable objects. more>>
Class::Cloneable is a base class for Cloneable objects.
SYNOPSIS
package MyObject;
our @ISA = (Class::Cloneable);
# calling clone on an instance of MyObject
# will give you full deep-cloning functionality
This module provides a flexible base class for building objects with cloning capabilities. This module does its best to respect the encapsulation of all other objects, including subclasses of itself. This is intended to be a stricter and more OO-ish option than the more general purpose Clone and Clone::PP modules.
<<lessSYNOPSIS
package MyObject;
our @ISA = (Class::Cloneable);
# calling clone on an instance of MyObject
# will give you full deep-cloning functionality
This module provides a flexible base class for building objects with cloning capabilities. This module does its best to respect the encapsulation of all other objects, including subclasses of itself. This is intended to be a stricter and more OO-ish option than the more general purpose Clone and Clone::PP modules.
Download (0.008MB)
Added: 2006-10-06 License: Perl Artistic License Price:
1114 downloads
Class::Phrasebook 0.88
Class::Phrasebook is a Perl module that implements the Phrasebook pattern. more>>
Class::Phrasebook is a Perl module that implements the Phrasebook pattern.
SYNOPSIS
use Class::Phrasebook;
my $pb = new Class::Phrasebook($log, "test.xml");
$pb->load("NL"); # using Dutch as the language
$phrase = $pb->get("ADDRESS",
{ street => "Chaim Levanon",
number => 88,
city => "Tel Aviv" } );
This class implements the Phrasebook pattern. It lets us create dictionaries of phrases. Each phrase can be accessed by a unique key. Each phrase may have placeholders. Group of phrases are kept in a dictionary. The first dictionary is the default one - which means that it will always be read. One of the dictionaries might be used to override the default one. The phrases are kept in an XML document.
<<lessSYNOPSIS
use Class::Phrasebook;
my $pb = new Class::Phrasebook($log, "test.xml");
$pb->load("NL"); # using Dutch as the language
$phrase = $pb->get("ADDRESS",
{ street => "Chaim Levanon",
number => 88,
city => "Tel Aviv" } );
This class implements the Phrasebook pattern. It lets us create dictionaries of phrases. Each phrase can be accessed by a unique key. Each phrase may have placeholders. Group of phrases are kept in a dictionary. The first dictionary is the default one - which means that it will always be read. One of the dictionaries might be used to override the default one. The phrases are kept in an XML document.
Download (0.018MB)
Added: 2006-09-19 License: Perl Artistic License Price:
1131 downloads
Class::DBI::FormTools 0.0.4
Class::DBI::FormTools is a Perl module to build forms with multiple interconnected objects. more>>
Class::DBI::FormTools is a Perl module to build forms with multiple interconnected objects.
SYNOPSIS
package MyApp::Film;
use base Class::DBI::FormTools;
Mason example
< %init >
my $o = Film->retrieve(42);
< /%init >
< form >
< input name="< % $o- >form_fieldname(title) % >" type="text" value="< % $o- >title % >" / >
< /form >
On the receiving end:
my @objects = Class::DBI::FormTools->formdata_to_objects($quesrstring);
This is alpha software - Highly experimental - Everything might change!
INTERFACE
form_field
FIXME
form_fieldname
FIXME
formdata_to_objects
FIXME
<<lessSYNOPSIS
package MyApp::Film;
use base Class::DBI::FormTools;
Mason example
< %init >
my $o = Film->retrieve(42);
< /%init >
< form >
< input name="< % $o- >form_fieldname(title) % >" type="text" value="< % $o- >title % >" / >
< /form >
On the receiving end:
my @objects = Class::DBI::FormTools->formdata_to_objects($quesrstring);
This is alpha software - Highly experimental - Everything might change!
INTERFACE
form_field
FIXME
form_fieldname
FIXME
formdata_to_objects
FIXME
Download (0.009MB)
Added: 2007-01-12 License: Perl Artistic License Price:
1015 downloads
Class::Interfaces 0.04
Class::Interfaces is a Per module for defining interface classes inline. more>>
Class::Interfaces is a Per module for defining interface classes inline.
SYNOPSIS
# define some simple interfaces
use Class::Interfaces (
Serializable => [ pack, unpack ],
Printable => [ toString ],
Iterable => [ iterator ],
Iterator => [ hasNext, next ]
);
# or some more complex ones ...
# interface can also inherit from
# other interfaces using this form
use Class::Interfaces (
BiDirectionalIterator => {
isa => Iterator,
methods => [ hasPrev, prev ]
},
ResetableIterator => {
isa => Iterator,
methods => [ reset ]
},
# we even support multiple inheritance
ResetableBiDirectionalIterator => {
isa => [ ResetableIterator, BiDirectionalIterator ]
}
);
# it is also possible to create an
# empty interface, sometimes called
# a marker interface
use Class::Interfaces (
JustAMarker => undef
);
This module provides a simple means to define abstract class interfaces, which can be used to program using the concepts of interface polymorphism.
<<lessSYNOPSIS
# define some simple interfaces
use Class::Interfaces (
Serializable => [ pack, unpack ],
Printable => [ toString ],
Iterable => [ iterator ],
Iterator => [ hasNext, next ]
);
# or some more complex ones ...
# interface can also inherit from
# other interfaces using this form
use Class::Interfaces (
BiDirectionalIterator => {
isa => Iterator,
methods => [ hasPrev, prev ]
},
ResetableIterator => {
isa => Iterator,
methods => [ reset ]
},
# we even support multiple inheritance
ResetableBiDirectionalIterator => {
isa => [ ResetableIterator, BiDirectionalIterator ]
}
);
# it is also possible to create an
# empty interface, sometimes called
# a marker interface
use Class::Interfaces (
JustAMarker => undef
);
This module provides a simple means to define abstract class interfaces, which can be used to program using the concepts of interface polymorphism.
Download (0.006MB)
Added: 2006-10-05 License: Perl Artistic License Price:
1115 downloads
Cgiapp.class.php 2.0.0
Cgiapp.class.php is a port of CGI::Application to PHP. more>>
Cgiapp.class.php is a port of CGI::Application to PHP. Cgiapp.class.php utilizes Smarty as its default templating engine, much as CGI::Application uses HTML::Template, due to its prevalence and acceptance in the PHP community.
Due to PHPs built-in session support, it also adds two methods, s_param() and s_delete(), to handle session parameters.
A number of static methods have also been included to facilitate error handling and array/hash conversion.
<<lessDue to PHPs built-in session support, it also adds two methods, s_param() and s_delete(), to handle session parameters.
A number of static methods have also been included to facilitate error handling and array/hash conversion.
Download (0.16MB)
Added: 2006-06-05 License: GPL (GNU General Public License) Price:
1236 downloads
Class::Meta::Type 0.53
Class::Meta::Type is a Perl module for data type validation and accessor building. more>>
Class::Meta::Type is a Perl module for data type validation and accessor building.
SYNOPSIS
package MyApp::TypeDef;
use strict;
use Class::Meta::Type;
use IO::Socket;
my $type = Class::Meta::Type->add( key => io_socket,
desc => IO::Socket object,
name => IO::Socket Object );
This class stores the various data types used by Class::Meta. It manages all aspects of data type validation and method creation. New data types can be added to Class::Meta::Type by means of the add() constructor. This is useful for creating custom types for your Class::Meta-built classes.
Note:This class manages the most advanced features of Class::Meta. Before deciding to create your own accessor closures as described in add(), you should have a thorough working knowledge of how Class::Meta works, and have studied the add() method carefully. Simple data type definitions such as that shown in the SYNOPSIS, on the other hand, are encouraged.
<<lessSYNOPSIS
package MyApp::TypeDef;
use strict;
use Class::Meta::Type;
use IO::Socket;
my $type = Class::Meta::Type->add( key => io_socket,
desc => IO::Socket object,
name => IO::Socket Object );
This class stores the various data types used by Class::Meta. It manages all aspects of data type validation and method creation. New data types can be added to Class::Meta::Type by means of the add() constructor. This is useful for creating custom types for your Class::Meta-built classes.
Note:This class manages the most advanced features of Class::Meta. Before deciding to create your own accessor closures as described in add(), you should have a thorough working knowledge of how Class::Meta works, and have studied the add() method carefully. Simple data type definitions such as that shown in the SYNOPSIS, on the other hand, are encouraged.
Download (0.060MB)
Added: 2006-09-22 License: Perl Artistic License Price:
1127 downloads
Class::Delegation 1.7.1
Class::Delegation is a Perl object-oriented delegation. more>>
Class::Delegation is a Perl object-oriented delegation.
SYNOPSIS
package Car;
use Class::Delegation
send => steer,
to => ["left_front_wheel", "right_front_wheel"],
send => drive,
to => ["right_rear_wheel", "left_rear_wheel"],
as => ["rotate_clockwise", "rotate_anticlockwise"]
send => power,
to => flywheel,
as => brake,
send => brake,
to => qr/.*_wheel$/,
send => halt
to => -SELF,
as => brake,
send => qr/^MP_(.+)/,
to => mp3,
as => sub { $1 },
send => -OTHER,
to => mp3,
send => debug,
to => -ALL,
as => dump,
send => -ALL,
to => logger,
;
<<lessSYNOPSIS
package Car;
use Class::Delegation
send => steer,
to => ["left_front_wheel", "right_front_wheel"],
send => drive,
to => ["right_rear_wheel", "left_rear_wheel"],
as => ["rotate_clockwise", "rotate_anticlockwise"]
send => power,
to => flywheel,
as => brake,
send => brake,
to => qr/.*_wheel$/,
send => halt
to => -SELF,
as => brake,
send => qr/^MP_(.+)/,
to => mp3,
as => sub { $1 },
send => -OTHER,
to => mp3,
send => debug,
to => -ALL,
as => dump,
send => -ALL,
to => logger,
;
Download (0.014MB)
Added: 2006-11-11 License: Perl Artistic License Price:
1077 downloads
Class::Std::Utils 0.0.2
Class::Std::Utils is a Perl module for utility subroutines for building inside-out objects. more>>
Class::Std::Utils is a Perl module for utility subroutines for building "inside-out" objects.
SYNOPSIS
use Class::Std::Utils;
# Constructor for anonymous scalars...
my $new_object = bless anon_scalar(), $class;
# Convert an object reference into a unique ID number...
my $ID_num = ident $new_object;
# Extract class-specific arguments from a hash reference...
my %args = extract_initializers_from($arg_ref);
This module provides three utility subroutines that simplify the creation of "inside-out" classes. See Chapters 15 and 16 of "Perl Best Practices" (OReilly, 2005) for details.
<<lessSYNOPSIS
use Class::Std::Utils;
# Constructor for anonymous scalars...
my $new_object = bless anon_scalar(), $class;
# Convert an object reference into a unique ID number...
my $ID_num = ident $new_object;
# Extract class-specific arguments from a hash reference...
my %args = extract_initializers_from($arg_ref);
This module provides three utility subroutines that simplify the creation of "inside-out" classes. See Chapters 15 and 16 of "Perl Best Practices" (OReilly, 2005) for details.
Download (0.005MB)
Added: 2006-09-02 License: Perl Artistic License Price:
1147 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above class xml search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed
Contact Us | Submit Software | Advertise with us | Terms and Conditions | Privacy Policy | Publisher List | Browse Categories | Blog | Discussion Board
Copyright (c)2005-2009 WareSeeker.com. All rights reserved.
Copyright (c)2005-2009 WareSeeker.com. All rights reserved.