Main > Free Download Search >

Free object serialization software for linux

object serialization

Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 3160
Faster Java Serialization 0.22

Faster Java Serialization 0.22


Faster Java Serializations goal of the project is to enable faster serialization by generating bytecodes on the fly. more>>
Faster Java Serializations goal of the project is to enable faster serialization by generating bytecodes on the fly to serialize objects.
When an object is serialized, its class is inspected and a class that implements the Serializer interface is generated. This class is tailor made to serialize the fields of the given objects class directly.
To serialize objects to a ByteBuffer, all you have to do is add jserial.jar to the classpath and use the SerializationContext class:
...
SerializationContext context = new SerializationContext();
ByteBuffer buffer = ByteBuffer.allocate(1024);
context.serialize(myObject, buffer);
...
Serializes myObject. Note that, in order to be serialized, objects must implement java.io.Serializable
To reconstruct the object, all you have to do is use the DeserializationContext class:
...
DeserializationContext context = new DeserializationContext();
MyObject reconstructedObject = (MyObject)context.deserialize(buffer);
...
Reads the reconstructedObject. In the meantime, the data in the ByteBuffer can easily be written to a file or sent through a network using Java NIO.
This project uses a modified version of Javassist-3.3 to perform code-generation on-the-fly.
Version restrictions:
- Custom serialization through java.io.Externalizable
- Custom serialization through writeObject, readObject, writeReplace, readResolve or any other special serialization method.
- Inner/Local/Anonymous class serialization.
- Serialization of non-static final fields, though no error will arise when serializing objects that have such fields.
<<less
Download (1.1MB)
Added: 2006-10-24 License: GPL (GNU General Public License) Price:
1097 downloads
Object::Transaction 1.01

Object::Transaction 1.01


Object::Transaction is a virtual base class for transactions on files containing serialized hash objects. more>>
Object::Transaction is a virtual base class for transactions on files containing serialized hash objects.

SYNOPSIS

use Object::Transaction;

transaction($coderef, @codeargs);
commit();
abandon();
$there_is_a_pending_transaction = transaction_pending()

package Pkg;

@ISA = qw(Object::Transaction);

use Object::Transaction;

$obj = sub new { ... }
sub file($ref,$id) { ... }

$obj = load Pkg $id;
$obj->savelater();
$obj->save();
$obj->removelater();
$obj->remove();
$obj->commit();
$obj->uncache();
$obj->abandon();
$oldobj = $obj->old();

$reference = $obj->objectref();
$obj = $reference->loadref();

$id = sub id { ... }
$restart_commit = sub precommit() { }
@passby = sub presave($old) { ... }
sub postsave($old,@passby) { ... }
$newid = sub preload($id) { .... }
sub postload() { ... }
sub preremove() { ... }
sub postremove() { ... }

Object::Transaction provides transaction support for hash-based objects that are stored one-per-file using Storable. Multiuser access is supported. In the future, serializing methods other than Storable will be supported.

Object::Transaction is a virtual base class. In order to use it, you must inherit from it and override the new method and the file method.

Optomistic locking is used: it is possible that a transaction will fail because the data that is is based upon has changed out from under it.

<<less
Download (0.017MB)
Added: 2007-05-21 License: Perl Artistic License Price:
886 downloads
Object Relational Membrane 2a5

Object Relational Membrane 2a5


Object Relational Membrane is a Python package that provides the functionality of an object relational layer like EJB. more>>
Object Relational Membrane is a Python package that provides the functionality of an object relational layer like EJB or other persistence storage systems.
Object Relational Membrane is a thin compatibility layer between SQL table layouts and Object Oriented Python. While providing a good deal of functionality, it tries to be as small and simple as possible. It currently works with PostgreSQL and Gadfly.
Adapters for Firebird and MySQL are planed.
Enhancements:
- A number of small changes and enhancements.
- The last release previous to a "beta" release.
<<less
Download (0.17MB)
Added: 2007-01-23 License: GPL (GNU General Public License) Price:
1005 downloads
Object::Realize::Later 0.16

Object::Realize::Later 0.16


Object::Realize::Later is a Perl module with delayed creation of objects. more>>
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 transparent on demand realization of object data. This is related to the tricks on autoloading of data, the lesser known cousin of autoloading of functionality.

On demand realization is all about performance gain. Why should you spent costly time on realizing an object, when the data on the object is never (or not yet) used? In interactive programs, postponed realization may boost start-up: the realization of objects is triggered by the use, so spread over time.

METHODS

Construction

use(Object::Realize::Later OPTIONS)

When you invoke (use) the Object::Realize::Later package, it will add a set of methods to your package (see section "Added to YOUR class").

Option --Default
becomes < required >
believe_caller < false >
realize < required >
source_module < becomes >
warn_realization < false >
warn_realize_again < false >
. becomes CLASS

Which type will this object become after realization.

. believe_caller BOOLEAN

When a method is called on the un-realized object, the AUTOLOAD checks whether this resolves the need. If not, the realization is not done. However, when realization may result in an object that extends the functionality of the class specified with becomes, this check must be disabled. In that case, specify true for this option.

. realize METHOD|CODE

How will transform. If you specify a CODE reference, then this will be called with the lazy-object as first argument, and the requested method as second.
After realization, you may still have your hands on the lazy object on various places. Be sure that your realization method is coping with that, for instance by using Memoize. See examples below.

. source_module CLASS

if the class (a package) is included in a file (module) with a different name, then use this argument to specify the file name. The name is expected to be the same as in the require call which would load it.

. warn_realization BOOLEAN

Print a warning message when the realization starts. This is for debugging purposes.

. warn_realize_again BOOLEAN

When an object is realized, the original object -which functioned as a stub- is reconstructed to work as proxy to the realized object. This option will issue a warning when that proxy is used, which means that somewhere in your program there is a variable still holding a reference to the stub. This latter is not problematic at all, although it slows-down each method call.

Added to YOUR class

$obj->AUTOLOAD

When a method is called which is not available for the lazy object, the AUTOLOAD is called.

$obj->can(METHOD)

Object::Realize::Later->can(METHOD)

Is the specified METHOD available for the lazy or the realized version of this object? It will return the reference to the code.

Example:

MyLazyObject->can(lazyWork) # true
MyLazyObject->can(realWork) # true

my $lazy = MyLazyObject->new;
$lazy->can(lazyWork); # true
$lazy->can(realWork); # true
$obj->forceRealize

You can force the load by calling this method on your object. It returns the realized object.

Object::Realize::Later->isa(CLASS)

Is this object a (sub-)class of the specified CLASS or can it become a (sub-)class of CLASS.

Example:

MyLazyObject->isa(MyRealObject) # true
MyLazyObject->isa(SuperClassOfLazy); # true
MyLazyObject->isa(SuperClassOfReal); # true

my $lazy = MyLazyObject->new;
$lazy->isa(MyRealObject); # true
$lazy->isa(SuperClassOfLazy); # true
$lazy->isa(SuperClassOfReal); # true
$obj->willRealize

Returns which class will be the realized to follow-up this class.

Object::Realize::Later internals

The next methods are not exported to the class where the `use took place. These methods implement the actual realization.

Object::Realize::Later->import(OPTIONS)

The OPTIONS used for import are the values after the class name with use. So this routine implements the actual option parsing. It generates code dynamically, which is then evaluated in the callers name-space.

Object::Realize::Later->realizationOf(OBJECT [,REALIZED])

Returns the REALIZED version of OBJECT, optionally after setting it first. When the method returns undef, the realization has not yet taken place or the realized object has already been removed again.

Object::Realize::Later->realize(OPTIONS)

This method is called when a $object-forceRealize()> takes place. It checks whether the realization has been done already (is which case the realized object is returned)

<<less
Download (0.010MB)
Added: 2007-05-19 License: Perl Artistic License Price:
888 downloads
Php Object Generator 3.0

Php Object Generator 3.0


PHP Object Generator (POG) is a PHP code generator which generates clean and tested object oriented code for your PHP4/PHP5. more>>
Php Object Generator on short POG is an open source PHP code generator which automatically generates clean & tested Object Oriented code for your PHP4/PHP5 application.
Over the years, we realized that a large portion of a PHP programmers time is wasted on repetitive coding of the Database Access Layer of an application simply because different applications require different objects.
By generating PHP objects with integrated CRUD methods, POG gives you a head start in any project and saves you from writing and testing SQL queries. The time you save can be spent on more interesting areas of your project. But dont take our word for it, give it a try!
Main features:
- Generates clean & tested code
- Generates CRUD methods
- Compatible with PHP4 & PHP5
- Compatible with PDO
- Free for personal use
- Free for commercial use
- Open Source
Enhancements:
- POG now fetches result set arrays where possible (which provides a big performance boost).
- Data encoding is handled within the database.
- A new plugin interface is used.
- A data encoding sanity check was added to setup.
- Siblings can be deleted without deleting children.
- Getlist() accepts column names as filters.
- Getlist(), GetChild(), and GetSibling() return all results if no arguments are passed.
- A database wrapper class for PDO was added.
- The PDO performance was improved.
- The plugin API, POG base API, and database API were made uniform to prevent plugin versioning.
<<less
Download (1.0MB)
Added: 2007-07-26 License: BSD License Price:
516 downloads
Object::Mediator 0.02

Object::Mediator 0.02


Object::Mediator is a generic object persistence framework. more>>
Object::Mediator is a generic object persistence framework.

SYNOPSIS

package Persistent;

use base qw( Object::Mediator );

__PACKAGE__->mk_attr ( qw(foo bar) );

sub _set_id {
my $self = shift;

my $id = generate_identity();

$self->identity( $id );
}

sub _insert {
my $self = shift;

$db_handle->insert ( $self->id, $self->foo, $self->bar );
}

sub _update {
my $self = shift;

$db_handle->update ( $self );
}

sub _delete {
my $self = shift;

$db_handle->delete ( $self->id );
}

sub _select {
my $self = shift;

my ( $foo, $bar ) = $db_handle->select ( $self->id );

$self->foo ( $foo );
$self->bar ( $bar );
}

Object::Mediator attempts to be simple and fairly minimalistic object mapping framework. Main aims of development were: usage simplicity, end user transparency, database independency and minimization of database interaction with some kind of in-memory object state control system.

<<less
Download (0.006MB)
Added: 2007-05-18 License: Perl Artistic License Price:
890 downloads
Object::Trampoline 1.25

Object::Trampoline 1.25


Object::Trampoline is a Perl module for delay object construction. more>>
Object::Trampoline is a Perl module for delay object construction, and optionally using the class module, until a method is actually dispatched, simplifies runtime definition of handler classes.

SYNOPSIS

# adding "use_class" will perform an "eval use $class"
# at the point where the object is first accessed.

use Object::Trampoline;

# the real class name is added to the normal constructor
# and Object::Trampoline used instead. the destination
# class constructor is called when object is actually
# used for something.

my $dbh = Object::Trampoline->connect( DBI, $dsn, $user, $pass, $conf );

my $sth = $dbh->prepare( select foo from bar );

# or specify the package and args from a config file
# or via inherited data.
#
# the constructor lives in the destination class
# and has nothing to do with Object::Trampoline.

my %config = Config->read( $config_file_path );

my ( $class, $const, @argz )
= @config{ qw( class const args ) };

my $handle = Object::Trampoline->$const( $class, @argz );

# at this point ref $handle is Object::Trampoline::Bounce.

$handle->frobnicate( @stuff );

# at this point ref $handle is $class

# there are times when it is helpful to delay using
# the objects class module until the object is
# instantiated. O::T::U adds the callers package
# and a "use $class" before the constructor.

my $lazy = Object::Trampoline::Use->frobnicate( $class, @stuff );

my $result = $lazy->susan( dessert );

There are times when constructing an object is expensive or has to be delayed -- database handles in heavily forked apache servers are one example. This module creates a "trampoline" object: when called it replaces the object you have with the object you want. The module itself consists only of two AUTOLOADS: one with captures the constructor call, the other the first method call. The first class blesses a closure which creates the necessary object into the second class, which replces $_[0] with a new object and re-dispatches the call into the proper class.

Using an autoload as the constructor allows Object::Trampoline to use whatever constructor name the "real" class uses without having to pass it as another argument.

<<less
Download (0.009MB)
Added: 2007-05-19 License: Perl Artistic License Price:
888 downloads
Object::PerlDesignPatterns 0.03

Object::PerlDesignPatterns 0.03


Object::PerlDesignPatterns is a Perl architecture for structuring and refactoring large programs. more>>
Object::PerlDesignPatterns is a Perl architecture for structuring and refactoring large programs.

SYNOPSIS

lynx perldesignpatterns.html
perldoc Object::PerlDesignPatterns

ABSTRACT

Documentation: Ideas for keeping programs fun to hack on even after they grow large. Object, lambda, hybrid structures, Perl specific methods of refactoring, object tricks, anti-patterns, non-structural recurring code patterns.

PerlDesignPatterns is a free book sporting:

Ideas for keeping programs fun to hack on even after they grow large. Object, lambda, hybrid structures, Perl specific methods of refactoring, object tricks, anti-patterns, non-structural recurring code patterns.

Feel free to jump right in and make corrections, suggestions, ask questions, play editor, or just rant. Start in http://www.perldesignpatterns.com/?TinyWiki to learn about the TinyWiki software, make a page for yourself, play with editing that, perhaps make a link from the GuestLog to your page. The markup language is ASCII based - it couldnt be any easier.

This document is a snapshot of the current state of the Wiki, automatically compiled from hundreds of individual sections by a Perl script.

<<less
Download (0.55MB)
Added: 2006-07-31 License: Perl Artistic License Price:
1180 downloads
Object::Relation::DataType 0.1.0

Object::Relation::DataType 0.1.0


Object::Relation::DataType is a Perl module with complex data types for TKP. more>>
Object::Relation::DataType is a Perl module with complex data types for TKP.

The Object::Relation::DataType name space is set aside for the creation of complex data types for TKP. By "complex" I mean serializable objects, such as dates, durations, states, etc. It also is designed to create a distinction from simpler data types, which are defined in Object::Relation::Meta::DataTypes.

What creates the distinction? Well, first and foremost is that fact that it doesnt usually take much to create the simple data types, while the complex data types might need more code to handle serialization and deserialization, overloading, etc.

But another criterion is that, while the data types in Object::Relation::Meta::DataTypes are always loaded by TKP, since it uses them for its own classes, the complex data types in the Object::Relation::DataType name space tend to be loaded only as needed by the Object::Relation business classes that need them.

Okay, so its somewhat arbitrary, but you get the idea. The remainder of this document is dedicated to documenting how to add new data types to TKP.

<<less
Download (0.23MB)
Added: 2006-09-18 License: Perl Artistic License Price:
1131 downloads
Object::Relation::Meta::Type 0.1.0

Object::Relation::Meta::Type 0.1.0


Object::Relation::Meta::Type is an Object::Relation Data type validation and accessor building. more>>
Object::Relation::Meta::Type is an Object::Relation Data type validation and accessor building.

Synopsis

Object::Relation::Meta::Type->add(
key => "state",
name => "State",
builder => Object::Relation::Meta::AccessorBuilder,
raw => sub { ref $_[0] ? shift->value : shift },
store_raw => sub { shift->store_value },
check => sub {
UNIVERSAL::isa($_[0], Object::Relation::DataType::State)
or throw_invalid([Value "[_1]" is not a valid [_2] object,
$_[0], Object::Relation::DataType::State]);
throw_invalid([Cannot assign permanent state])
if $_[0] == Object::Relation::DataType::State->PERMANENT;
}
);

This class subclasses Class::Meta::Type to provide additional attributes. These attributes can optionally be set via the call to new(), and may be fetched via their accessors.

<<less
Download (0.23MB)
Added: 2006-09-02 License: Perl Artistic License Price:
1149 downloads
Object::Declare 0.13

Object::Declare 0.13


Object::Declare is a Perl module for declarative object constructor. more>>
Object::Declare is a Perl module for declarative object constructor.

SYNOPSIS

use Object::Declare [MyApp::Column, MyApp::Param];

my %objects = declare {

param foo =>
!is global,
is immutable,
valid_values are qw( more values );

column bar =>
field1 is value,
field2 is some_other_value;

};

print $objects{foo}; # a MyApp::Param object
print $objects{bar}; # a MyApp::Column object

This module exports one function, declare, for building named objects with a declarative syntax, similar to how Jifty::DBI::Schema defines its columns.

In list context, declare returns a list of name/object pairs in the order of declaration (allowing duplicates), suitable for putting into a hash. In scalar context, declare returns a hash reference.
Using a flexible import interface, one can change exported helper functions names (declarator), words to link labels and values together (copula), and the table of named classes to declare (mapping):

use Object::Declare
declarator => [declare], # list of declarators
copula => { # list of words, or a map
is => , # from copula to prefixes for
are => , # labels built with that copula
}
aliases => { # list of label aliases:
more => less, # turns "is more" into "is less"
# and "more is 1" into "less is 1"
},
mapping => {
column => MyApp::Column, # class name to call ->new to
param => sub { # arbitrary coderef also works
bless(@_, MyApp::Param);
},
};

After the declarator block finishes execution, all helper functions are removed from the package. Same-named functions (such as &is and &are) that existed before the declarators execution are restored correctly.

<<less
Download (0.027MB)
Added: 2006-10-18 License: Perl Artistic License Price:
1101 downloads
Object Extensions for PHP 0.1 Beta

Object Extensions for PHP 0.1 Beta


Object Extensions for PHP provides several classes that add runtime object extension and callbacks to the language. more>>
Object Extensions for PHP provides several classes that add runtime object extension and callbacks to the language. Object Extensions for PHP allows the programmer to add methods and properties to an object at runtime by dynamically extending by another object.

It also allows the creation of object property lists that allow for dynamic setting/getting of values in a fashion similar to JavaScript objects. These object property lists support basic value checking.

The Object Extensions library for PHP adds the following functionality to objects that extend the base class:

- Runtime object extension to "extend" an object by another class at runtime (to virtually inherit all public properties and methods).
- Runtime callback definitions to be able to pass function/method callbacks as variables, and subsequently execute them from other function/methods.
- Dynamic object properties class to handle runtime setting/getting of object properties, as well as ability to pass function arguments as object-based parameters rather than long list of options.

OBJECT EXTENSION:

- Base class (CExtendable) implements a _extend() function by which you may vritually extend an object by an instance of another object.
- Extended object (object passed to _extend) can reference parent object if supported by extended class.
- __get, __set and __call are all overriden to handle overriding undefined properties and methods
- Ability to reference a callback in a straightforward manner ($object->_callback()->method(args, [...]))

CALLBACK FUNCTIONALITY:

- Can create callbacks directly (through CCallback and derived classes)
- Can create method callbacks by calling _callback() method on CExtendable objects
- When combined with object extension and object properties, can provide a really easy way to execute callbacks.

OBJECT PROPERTIES:

- Base class extends ArrayIterator, all properties saved in an array
- Basic functionality to check values provided and/or set default values.
- Overrides __get, __set to get/set object properties.
- Can limit property set-tability to existing properties only, or to provided array of properties.
- Can enable read-only mode.
- Overrides __call, and in the case that the a property value with the same name as the method name exists, and is an instance of the ICallback interface, this callback is executed.

PHP COMPATIBILITY:

Object Extensions for PHP uses PHP5 functionality. It would be theoretically possible to implement similar functionality into PHP4, however, since I no longer develop in PHP4, I cannot properly test it.
<<less
Download (0.007MB)
Added: 2006-05-03 License: MIT/X Consortium License Price:
1271 downloads
Perl Object Environment 0.9999

Perl Object Environment 0.9999


Perl Object Environment is a Perl multitasking framework that lends itself to networking software. more>>
POE (Perl Object Environment) parcels out execution time among one or more tasks, called sessions. Sessions multitask through cooperation (at least until Perls threads become mainstream). That is, each session returns execution to POE as quickly as possible so it can parcel out time to the next.
POE includes a high-level component architecture. Components are modular, reusable pieces of programs. They perform common, often tedious tasks so programmers can work on more interesting things.
Several POE components have been written to handle client, server, and peer networking tasks. Because of them, POE has become a convenient and quick way to write multitasking network applications.
Anyone can write and publish POE components. The CPAN contains a [steadily growing list] of them. The POE Components List includes ones that havent been uploaded to the CPAN yet.
POE provides medium- and low-level concurrency functions. Components use them to perform their tasks. The functions are also available to programmers who prefer to avoid the overhead of components at the expense of writing more code. Components and custom sessions coexist because they all use the same basic functions.
POE supports graphical toolkits such as Tk and Gtk. It is the only Perl programming framework that does this. It also supports Curses, HTTP, and other user interfaces. POE programs can present multiple user interfaces at once.
Enhancements:
- A number of stability and performance fixes were done, including making the tests less prone to race conditions, improving the installation process, eliminating known resource leaks, and reducing CPU use when combined with Tk.
<<less
Download (0.35MB)
Added: 2007-08-05 License: Perl Artistic License Price:
812 downloads
Basset::Object::Persistent 1.03

Basset::Object::Persistent 1.03


Basset::Object::Persistent is a subclass of Basset::Object that allows objects to be easily stored into a relational database. more>>
Basset::Object::Persistent is a subclass of Basset::Object that allows objects to be easily stored into a relational database. Presently only supports MySQL, but that may change in the future.

SYNOPSIS

(no synopsis, this is an abstract super class that should never be instantiated directly, it should be subclassed for all persistent objects and used through them)

Basset::Object is the uber module in my Perl world. All objects should decend from Basset::Object. It handles defining attributes, error handling, construction, destruction, and generic initialization. It also talks to Basset::Object::Conf to allow conf file use.
But, some objects cannot simply be recreated constantly every time a script runs. Sometimes you need to store the data in an object between uses so that you can recreate an object in the same form the last time you left it. Storing user information, for instance.

Basset::Object::Persistent allows you to do that transparently and easily. Persistent objects need to define several pieces of additional information to allow them to commit to the database, including their table definitions. Once these items are defined, youll have access to the load and commit methods to allow you to load and store the objects in a database.

It is assumed that an object is stored in the database in a primary table. The primary table contains a set of columns named the same as object attributes. The attributes are stored in those columns.

Some::Package->add_attr(foo);
my $obj = Some::Package->new();
$obj->foo(bar);
$obj->commit();

in the database, the foo column will be set to bar.

<<less
Download (0.14MB)
Added: 2006-06-16 License: Perl Artistic License Price:
1225 downloads
Object::LocalVars 0.16

Object::LocalVars 0.16


Object::LocalVars is a Perl module with outside-in objects with local aliasing of $self and object variables. more>>
Object::LocalVars is a Perl module with outside-in objects with local aliasing of $self and object variables.
SYNOPSIS
package My::Object;
use strict;
use Object::LocalVars;
give_methods our $self; # this exact line is required
our $field1 : Prop;
our $field2 : Prop;
sub as_string : Method {
return "$self has properties $field1 and $field2";
}
This is a development release. The API may change slightly. Do not use for production purposes. Comments appreciated.
This module helps developers create "outside-in" objects. Properties (and $self) are declared as package globals. Method calls are wrapped such that these globals take on a local value that is correct for the specific calling object and the duration of the method call. I.e. $self is locally aliased to the calling object and properties are locally aliased to the values of the properties for that object. The package globals themselves only declare properties in the package and hold no data themselves. Data are stored in a separate namespace for each property, keyed off the reference memory addresses of the objects.
Outside-in objects are similar to "inside-out" objects, which store data in a single lexical hash (or closure) for each property, which is keyed off the reference memory addresses of the objects. Both differ from classic Perl objects, which hold data for the object directly using a blessed reference or closure to a data structure, typically a hash. For both outside-in and inside-out objects, data are stored centrally and the blessed reference is simply a key to look up the right data in the central data store.
The use of package variables for outside-in objects allows for the use of dynamic symbol table manipulation and aliasing. As a result, Object::LocalVars delivers a variety of features -- though with some corresponding drawbacks.
Main features:
- Provides $self automatically to methods without my $self = shift and the like
- Provides dynamic aliasing of properties within methods -- methods can access properties directly as variables without the overhead of calls to accessors or mutators, eliminating the overhead of these calls in methods
- Array and hash properties may be accessed via direct dereference of simple variables, allowing developers to push, pop, splice, etc. without the usual tortured syntax to dereference an accessor call
- Properties no longer require accessors to have compile time syntax checking under strictures (i.e. use strict); public properties have accessors automatically provided as needed
- Uses attributes to mark properties and methods, but only in the BEGIN phase so should be mod_perl friendly (though this has not been tested yet)
- Provides attributes for public, protected and private properties, class properties, and methods
- Orthogonality -- can subclass just about any other class, regardless of implementation.
- Multiple inheritance supported in initializers and destructors (though only one superclass can be of a special, orthogonal type)
- Minimally thread-safe under Perl 5.8 or greater -- objects are safely cloned across thread boundaries (or a pseudo-fork on Win32)
- Achieves these features without source filtering
<<less
Download (0.040MB)
Added: 2007-06-22 License: Perl Artistic License Price:
854 downloads
Secleted [ 0 ] software to compare
  • Page: 1 of 5
  • 1
  • 2
  • 3
  • 4
  • 5