true value
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 2714
True Color Picker 2007-07-06
True Color Picker is a PHP class that can be used to present a palette to let the user pick colors. more>>
True Color Picker is a PHP class that can be used to present a palette to let the user pick colors.
It displays an image with all the tones for the user to pick by clicking in an image point with the desired tone similar to Photoshop.
It uses AJAX to update the picker boxes without reloading the page.
<<lessIt displays an image with all the tones for the user to pick by clicking in an image point with the desired tone similar to Photoshop.
It uses AJAX to update the picker boxes without reloading the page.
Download (MB)
Added: 2007-07-13 License: Freely Distributable Price:
837 downloads
mod_tee
mod_tee serves to clone an document as it is served. more>>
mod_tee serves to "clone" an document as it is served. mod_tee was hacked up as a quick-and-dirty fix when a Site Valet user complained of problems saving a Valet report: mod_tee now serves to enable registered users to request email copies of any report generated.
The current status is "works for us", but it is not of release quality. It is less-than-complete in several respects. Its probably not a good idea to use it operationally unless youre prepared to get your hands dirty fixing any problems, or pay for support.
Configuration
TeeType FILE|PIPE|SMTP [Destination]
Where to send the cloned output:
FILE - save to a destination file. For testing only!
PIPE - pipes output to a destination program with popen.
SMTP - sends cloned output directly to email at a destination mailserver. Implements SMTP handshake with no error checking - so its a dangerous option!
TeeCondition query|cookie|path|header|env|true|false [key] [val]
Defines a condition for mod_tee to be activated for a request. Values true and false are unconditional, while the others define a QUERY_STRING key, a Cookie, a PATH_INFO component, a request header or an environment variable to trigger the tee. Conditional values require a key. If val is defined then key must match it; otherwise any value of key will activate the tee.
TeeHeader key value
Defines an RFC822-style header to be inserted in front of the body of the page.
<<lessThe current status is "works for us", but it is not of release quality. It is less-than-complete in several respects. Its probably not a good idea to use it operationally unless youre prepared to get your hands dirty fixing any problems, or pay for support.
Configuration
TeeType FILE|PIPE|SMTP [Destination]
Where to send the cloned output:
FILE - save to a destination file. For testing only!
PIPE - pipes output to a destination program with popen.
SMTP - sends cloned output directly to email at a destination mailserver. Implements SMTP handshake with no error checking - so its a dangerous option!
TeeCondition query|cookie|path|header|env|true|false [key] [val]
Defines a condition for mod_tee to be activated for a request. Values true and false are unconditional, while the others define a QUERY_STRING key, a Cookie, a PATH_INFO component, a request header or an environment variable to trigger the tee. Conditional values require a key. If val is defined then key must match it; otherwise any value of key will activate the tee.
TeeHeader key value
Defines an RFC822-style header to be inserted in front of the body of the page.
Download (0.012MB)
Added: 2006-04-20 License: GPL (GNU General Public License) Price:
1285 downloads
Stream::Reader 0.09
Stream::Reader is a stream reader Perl class. more>>
Stream::Reader is a stream reader Perl class.
SYNOPSIS
# Input stream can be reference to TYPEGLOB or SCALAR, output stream
# can be the same types or undefined
# Constructor
$stream = Stream::Reader->new( *IN,
{ Limit => $limit, BuffSize => $buffsize, Mode => UB } );
# Reading all before delimiter beginning from current position.
# Delimiter is SCALAR or reference to array with many SCALARs.
# Returns true value on succesfull matching or if end of stream
# expected at first time
$bool = $stream->readto( $delimiter,
{ Out => *OUT, Limit => $limit, Mode => AIE } );
# Reading fixed number of chars beginning from current position.
# Returns true value if was readed number of chars more then zero or
# end of stream was not expected yet
$bool = $stream->readsome( $limit, { Out => *OUT, Mode => A } );
# Mode is string, what can contains:
# U - modificator for constructor. disable utf-8 checking
# B - modificator for constructor. enable second buffer for speed up
# case insensitive search
# A - modificator for readto() and readsome(). appending data to
# output stream, if stream is SCALAR
# I - modificator for readto(). enable case insensitive search
# E - modificator for readto(). at end of input stream alltimes
# returns false value
$number = $stream->{Total}; # total number of readed chars
$number = $stream->{Readed}; # number of readed chars at last
# operation (without matched string
# length at readto() method)
$number = $stream->{Stored}; # number of succesfully stored chars
# at last operation
$string = $stream->{Match}; # matched string at last operation
# (actually for readto() only)
$bool = $stream->{Error}; # error status. true on error
METHODS
OBJ = Stream::Reader->new( INPUT, { ... Params ... } )
The constructor method instantiates a new Stream::Reader object.
INPUT - is a reference to file stream, opened for reading, or reference to defined string. This is an obligatory parameter.
Params (all optionaly):
Limit - limit size of input stream data in characters. If this parameter is absent, not defined or less then zero, then all data from input stream will be available for reading.
BuffSize - size of buffer in characters. If this parameter is absent, not defined or less then zero, then will be used default buffer size 32768 characters.
Mode - is string with letters-modificators:
B - use second buffer. Can really speed up search in case insensitive mode.
U - disable UTF-8 data check in UTF-8 mode. Use this flag if you are absolutely sure, that your UTF-8 data is valid.
RESULT = OBJ->readto( DELIMITER, { ... Params ... } )
This method reads all data from input stream before first found delimiter, beginning from current position.
RESULT - boolean value. True value if successfuly found delimeter or and of input stream has expected at first time. False value otherwise, or in case of reading error.
DELIMETER - is a string-delimeter or reference to array with many delimeters. This is an obligatory parameter and must be defined.
Remember! In case of many delimiters, left delimiter alltimes have more priority then right!
Params (all optionaly):
Out - is a reference to file stream, opened for writing, or reference to string. If this parameter is absent then data will not stored.
Limit - size in characters. Defines, the maximum number of characters that must be stored in Out. If this paramter is absent, not defined or less then zero, then this method will be trying to store all readed data.
Mode - is string with letters-modificators:
A - appendig data to Out if Out is a reference to string.
I - search in case insensitive mode.
E - at the end of input stream returns only false value. Without this modificator, if end of stream expected at first time, then will be returned true value.
RESULT = OBJ->readsome( LIMIT, { ... Params ... } )
This method reads fixed number of characters from input stream beginning from current position.
RESULT - boolean value. True value, if any characters were read or end of input stream is not expected yet. False value otherwise, or in case of reading error.
LIMIT - limit size in characters, how many it is necessary to read. If this parameter is absent, not defined or less then zero, then will be read all available data from input stream.
Params (all optionaly):
Out - the same as in readto() method.
Mode - is string with letters-modificators:
A - the same as in readto() method.
Statistics:
OBJ->{Total} - total number of readed characters. Warning! This module using block reading and real position in stream is different.
OBJ->{Readed} - number of readed characters at last operation (without matched string length at readto() method).
OBJ->{Stored} - number of succesfully stored chars at last operation
OBJ->{Match} - matched string at last operation (actually for readto() only)
OBJ->{Error} - boolen error status. At any reading erorrs all operations will be stopes and this flag turned to true value.
<<lessSYNOPSIS
# Input stream can be reference to TYPEGLOB or SCALAR, output stream
# can be the same types or undefined
# Constructor
$stream = Stream::Reader->new( *IN,
{ Limit => $limit, BuffSize => $buffsize, Mode => UB } );
# Reading all before delimiter beginning from current position.
# Delimiter is SCALAR or reference to array with many SCALARs.
# Returns true value on succesfull matching or if end of stream
# expected at first time
$bool = $stream->readto( $delimiter,
{ Out => *OUT, Limit => $limit, Mode => AIE } );
# Reading fixed number of chars beginning from current position.
# Returns true value if was readed number of chars more then zero or
# end of stream was not expected yet
$bool = $stream->readsome( $limit, { Out => *OUT, Mode => A } );
# Mode is string, what can contains:
# U - modificator for constructor. disable utf-8 checking
# B - modificator for constructor. enable second buffer for speed up
# case insensitive search
# A - modificator for readto() and readsome(). appending data to
# output stream, if stream is SCALAR
# I - modificator for readto(). enable case insensitive search
# E - modificator for readto(). at end of input stream alltimes
# returns false value
$number = $stream->{Total}; # total number of readed chars
$number = $stream->{Readed}; # number of readed chars at last
# operation (without matched string
# length at readto() method)
$number = $stream->{Stored}; # number of succesfully stored chars
# at last operation
$string = $stream->{Match}; # matched string at last operation
# (actually for readto() only)
$bool = $stream->{Error}; # error status. true on error
METHODS
OBJ = Stream::Reader->new( INPUT, { ... Params ... } )
The constructor method instantiates a new Stream::Reader object.
INPUT - is a reference to file stream, opened for reading, or reference to defined string. This is an obligatory parameter.
Params (all optionaly):
Limit - limit size of input stream data in characters. If this parameter is absent, not defined or less then zero, then all data from input stream will be available for reading.
BuffSize - size of buffer in characters. If this parameter is absent, not defined or less then zero, then will be used default buffer size 32768 characters.
Mode - is string with letters-modificators:
B - use second buffer. Can really speed up search in case insensitive mode.
U - disable UTF-8 data check in UTF-8 mode. Use this flag if you are absolutely sure, that your UTF-8 data is valid.
RESULT = OBJ->readto( DELIMITER, { ... Params ... } )
This method reads all data from input stream before first found delimiter, beginning from current position.
RESULT - boolean value. True value if successfuly found delimeter or and of input stream has expected at first time. False value otherwise, or in case of reading error.
DELIMETER - is a string-delimeter or reference to array with many delimeters. This is an obligatory parameter and must be defined.
Remember! In case of many delimiters, left delimiter alltimes have more priority then right!
Params (all optionaly):
Out - is a reference to file stream, opened for writing, or reference to string. If this parameter is absent then data will not stored.
Limit - size in characters. Defines, the maximum number of characters that must be stored in Out. If this paramter is absent, not defined or less then zero, then this method will be trying to store all readed data.
Mode - is string with letters-modificators:
A - appendig data to Out if Out is a reference to string.
I - search in case insensitive mode.
E - at the end of input stream returns only false value. Without this modificator, if end of stream expected at first time, then will be returned true value.
RESULT = OBJ->readsome( LIMIT, { ... Params ... } )
This method reads fixed number of characters from input stream beginning from current position.
RESULT - boolean value. True value, if any characters were read or end of input stream is not expected yet. False value otherwise, or in case of reading error.
LIMIT - limit size in characters, how many it is necessary to read. If this parameter is absent, not defined or less then zero, then will be read all available data from input stream.
Params (all optionaly):
Out - the same as in readto() method.
Mode - is string with letters-modificators:
A - the same as in readto() method.
Statistics:
OBJ->{Total} - total number of readed characters. Warning! This module using block reading and real position in stream is different.
OBJ->{Readed} - number of readed characters at last operation (without matched string length at readto() method).
OBJ->{Stored} - number of succesfully stored chars at last operation
OBJ->{Match} - matched string at last operation (actually for readto() only)
OBJ->{Error} - boolen error status. At any reading erorrs all operations will be stopes and this flag turned to true value.
Download (0.006MB)
Added: 2007-04-27 License: Perl Artistic License Price:
910 downloads
Storable 2.16
Storable package contains persistence for Perl data structures. more>>
Storable package contains persistence for Perl data structures.
SYNOPSIS
use Storable;
store %table, file;
$hashref = retrieve(file);
use Storable qw(nstore store_fd nstore_fd freeze thaw dclone);
# Network order
nstore %table, file;
$hashref = retrieve(file); # There is NO nretrieve()
# Storing to and retrieving from an already opened file
store_fd @array, *STDOUT;
nstore_fd %table, *STDOUT;
$aryref = fd_retrieve(*SOCKET);
$hashref = fd_retrieve(*SOCKET);
# Serializing to memory
$serialized = freeze %table;
%table_clone = %{ thaw($serialized) };
# Deep (recursive) cloning
$cloneref = dclone($ref);
# Advisory locking
use Storable qw(lock_store lock_nstore lock_retrieve)
lock_store %table, file;
lock_nstore %table, file;
$hashref = lock_retrieve(file);
The Storable package brings persistence to your Perl data structures containing SCALAR, ARRAY, HASH or REF objects, i.e. anything that can be conveniently stored to disk and retrieved at a later time.
It can be used in the regular procedural way by calling store with a reference to the object to be stored, along with the file name where the image should be written.
The routine returns undef for I/O problems or other internal error, a true value otherwise. Serious errors are propagated as a die exception.
To retrieve data stored to disk, use retrieve with a file name. The objects stored into that file are recreated into memory for you, and a reference to the root object is returned. In case an I/O error occurs while reading, undef is returned instead. Other serious errors are propagated via die.
Since storage is performed recursively, you might want to stuff references to objects that share a lot of common data into a single array or hash table, and then store that object. That way, when you retrieve back the whole thing, the objects will continue to share what they originally shared.
At the cost of a slight header overhead, you may store to an already opened file descriptor using the store_fd routine, and retrieve from a file via fd_retrieve. Those names arent imported by default, so you will have to do that explicitly if you need those routines. The file descriptor you supply must be already opened, for read if youre going to retrieve and for write if you wish to store.
store_fd(%table, *STDOUT) || die "cant store to stdoutn";
$hashref = fd_retrieve(*STDIN);
You can also store data in network order to allow easy sharing across multiple platforms, or when storing on a socket known to be remotely connected. The routines to call have an initial n prefix for network, as in nstore and nstore_fd. At retrieval time, your data will be correctly restored so you dont have to know whether youre restoring from native or network ordered data. Double values are stored stringified to ensure portability as well, at the slight risk of loosing some precision in the last decimals.
When using fd_retrieve, objects are retrieved in sequence, one object (i.e. one recursive tree) per associated store_fd.
If youre more from the object-oriented camp, you can inherit from Storable and directly store your objects by invoking store as a method. The fact that the root of the to-be-stored tree is a blessed reference (i.e. an object) is special-cased so that the retrieve does not provide a reference to that object but rather the blessed object reference itself. (Otherwise, youd get a reference to that blessed object).
<<lessSYNOPSIS
use Storable;
store %table, file;
$hashref = retrieve(file);
use Storable qw(nstore store_fd nstore_fd freeze thaw dclone);
# Network order
nstore %table, file;
$hashref = retrieve(file); # There is NO nretrieve()
# Storing to and retrieving from an already opened file
store_fd @array, *STDOUT;
nstore_fd %table, *STDOUT;
$aryref = fd_retrieve(*SOCKET);
$hashref = fd_retrieve(*SOCKET);
# Serializing to memory
$serialized = freeze %table;
%table_clone = %{ thaw($serialized) };
# Deep (recursive) cloning
$cloneref = dclone($ref);
# Advisory locking
use Storable qw(lock_store lock_nstore lock_retrieve)
lock_store %table, file;
lock_nstore %table, file;
$hashref = lock_retrieve(file);
The Storable package brings persistence to your Perl data structures containing SCALAR, ARRAY, HASH or REF objects, i.e. anything that can be conveniently stored to disk and retrieved at a later time.
It can be used in the regular procedural way by calling store with a reference to the object to be stored, along with the file name where the image should be written.
The routine returns undef for I/O problems or other internal error, a true value otherwise. Serious errors are propagated as a die exception.
To retrieve data stored to disk, use retrieve with a file name. The objects stored into that file are recreated into memory for you, and a reference to the root object is returned. In case an I/O error occurs while reading, undef is returned instead. Other serious errors are propagated via die.
Since storage is performed recursively, you might want to stuff references to objects that share a lot of common data into a single array or hash table, and then store that object. That way, when you retrieve back the whole thing, the objects will continue to share what they originally shared.
At the cost of a slight header overhead, you may store to an already opened file descriptor using the store_fd routine, and retrieve from a file via fd_retrieve. Those names arent imported by default, so you will have to do that explicitly if you need those routines. The file descriptor you supply must be already opened, for read if youre going to retrieve and for write if you wish to store.
store_fd(%table, *STDOUT) || die "cant store to stdoutn";
$hashref = fd_retrieve(*STDIN);
You can also store data in network order to allow easy sharing across multiple platforms, or when storing on a socket known to be remotely connected. The routines to call have an initial n prefix for network, as in nstore and nstore_fd. At retrieval time, your data will be correctly restored so you dont have to know whether youre restoring from native or network ordered data. Double values are stored stringified to ensure portability as well, at the slight risk of loosing some precision in the last decimals.
When using fd_retrieve, objects are retrieved in sequence, one object (i.e. one recursive tree) per associated store_fd.
If youre more from the object-oriented camp, you can inherit from Storable and directly store your objects by invoking store as a method. The fact that the root of the to-be-stored tree is a blessed reference (i.e. an object) is special-cased so that the retrieve does not provide a reference to that object but rather the blessed object reference itself. (Otherwise, youd get a reference to that blessed object).
Download (0.17MB)
Added: 2007-05-22 License: Perl Artistic License Price:
885 downloads
Keyword Market Value Analyzer 1.1
Keyword Market Value Analyzer allows you to compile a database a keywords based on a particular keyword subject. more>>
Keyword Market Value Analyzer allows you to compile a database a keywords based on a particular keyword subject, and to compare their popularity with the highest amount advertisers are willing to pay to advertise for the keyword.
The result of Keyword Market Value Analyzer is a really good idea about how much money-making potential there is for the keyword.
Main features:
- Keyword Market Value Analyzer is easy to install. Just unzip, install the database tables and upload.
- Create different keyword subject groups. The groups share the same keyword data, so you can leverage the research youve done for one keyword group for another, related keyword group.
- Easily browse keywords based on market value, highest bid, or most popular.
- Makes keyword market value research as easy as it can be!
<<lessThe result of Keyword Market Value Analyzer is a really good idea about how much money-making potential there is for the keyword.
Main features:
- Keyword Market Value Analyzer is easy to install. Just unzip, install the database tables and upload.
- Create different keyword subject groups. The groups share the same keyword data, so you can leverage the research youve done for one keyword group for another, related keyword group.
- Easily browse keywords based on market value, highest bid, or most popular.
- Makes keyword market value research as easy as it can be!
Download (0.10MB)
Added: 2006-02-28 License: Freeware Price:
1335 downloads
Data::Serializer 0.41
Data::Serializer package contains modules that serialize data structures. more>>
Data::Serializer package contains modules that serialize data structures.
SYNOPSIS
use Data::Serializer;
$obj = Data::Serializer->new();
$obj = Data::Serializer->new(
serializer => Storable,
digester => MD5,
cipher => DES,
secret => my secret,
compress => 1,
);
$serialized = $obj->serialize({a => [1,2,3],b => 5});
$deserialized = $obj->deserialize($serialized);
print "$deserialized->{b}n";
Provides a unified interface to the various serializing modules currently available. Adds the functionality of both compression and encryption.
EXAMPLES
Please see Data::Serializer::Cookbook(3)
METHODS
new - constructor
$obj = Data::Serializer->new();
$obj = Data::Serializer->new(
serializer => Data::Dumper,
digester => SHA-256,
cipher => Blowfish,
secret => undef,
portable => 1,
compress => 0,
serializer_token => 1,
options => {},
);
new is the constructor object for Data::Serializer objects.
The default serializer is Data::Dumper
The default digester is SHA-256
The default cipher is Blowfish
The default secret is undef
The default portable is 1
The default encoding is hex
The default compress is 0
The default compressor is Compress::Zlib
The default serializer_token is 1
The default options is {} (pass nothing on to serializer)
serialize - serialize reference
$serialized = $obj->serialize({a => [1,2,3],b => 5});
Serializes the reference specified.
Will compress if compress is a true value.
Will encrypt if secret is defined.
deserialize - deserialize reference
$deserialized = $obj->deserialize($serialized);
Reverses the process of serialization and returns a copy of the original serialized reference.
freeze - synonym for serialize
$serialized = $obj->freeze({a => [1,2,3],b => 5});
thaw - synonym for deserialize
$deserialized = $obj->thaw($serialized);
raw_serialize - serialize reference in raw form
$serialized = $obj->raw_serialize({a => [1,2,3],b => 5});
This is a straight pass through to the underlying serializer, nothing else is done. (no encoding, encryption, compression, etc)
raw_deserialize - deserialize reference in raw form
$deserialized = $obj->raw_deserialize($serialized);
This is a straight pass through to the underlying serializer, nothing else is done. (no encoding, encryption, compression, etc)
secret - specify secret for use with encryption
$obj->secret(mysecret);
Changes setting of secret for the Data::Serializer object. Can also be set in the constructor. If specified than the object will utilize encryption.
portable - encodes/decodes serialized data
Uses encoding method to ascii armor serialized data
Aids in the portability of serialized data.
compress - compression of data
Compresses serialized data. Default is not to use it. Will compress if set to a true value $obj->compress(1);
serializer - change the serializer
Currently have 8 supported serializers: Storable, FreezeThaw, Data::Denter, Config::General, YAML, PHP::Serialization, XML::Dumper, and Data::Dumper.
Default is to use Data::Dumper.
Each serializer has its own caveats about usage especially when dealing with cyclical data structures or CODE references. Please see the appropriate documentation in those modules for further information.
cipher - change the cipher method
Utilizes Crypt::CBC and can support any cipher method that it supports.
digester - change digesting method
Uses Digest so can support any digesting method that it supports. Digesting function is used internally by the encryption routine as part of data verification.
compressor - changes compresing module
This method is included for possible future inclusion of alternate compression method Currently Compress::Zlib is the only supported compressor.
encoding - change encoding method
Encodes data structure in ascii friendly manner. Currently the only valid options are hex, or b64.
The b64 option uses Base64 encoding provided by MIME::Base64, but strips out newlines.
serializer_token - add usage hint to data
Data::Serializer prepends a token that identifies what was used to process its data. This is used internally to allow runtime determination of how to extract Serialized data. Disabling this feature is not recommended.
options - pass options through to underlying serializer
Currently is only supported by Config::General, and XML::Dumper.
my $obj = Data::Serializer->new(serializer => Config::General,
options => {
-LowerCaseNames => 1,
-UseApacheInclude => 1,
-MergeDuplicateBlocks => 1,
-AutoTrue => 1,
-InterPolateVars => 1
},
) or die "$!n";
or
my $obj = Data::Serializer->new(serializer => XML::Dumper,
options => { dtd => 1, }
) or die "$!n";
store - serialize data and write it to a file (or file handle)
$obj->store({a => [1,2,3],b => 5},$file, [$mode, $perm]);
or
$obj->store({a => [1,2,3],b => 5},$fh);
Serializes the reference specified using the serialize method and writes it out to the specified file or filehandle.
If a file path is specified you may specify an optional mode and permission as the next two arguments. See IO::File for examples.
Trips an exception if it is unable to write to the specified file.
retrieve - read data from file (or file handle) and return it after deserialization
my $ref = $obj->retrieve($file);
or
my $ref = $obj->retrieve($fh);
Reads first line of supplied file or filehandle and returns it deserialized.
<<lessSYNOPSIS
use Data::Serializer;
$obj = Data::Serializer->new();
$obj = Data::Serializer->new(
serializer => Storable,
digester => MD5,
cipher => DES,
secret => my secret,
compress => 1,
);
$serialized = $obj->serialize({a => [1,2,3],b => 5});
$deserialized = $obj->deserialize($serialized);
print "$deserialized->{b}n";
Provides a unified interface to the various serializing modules currently available. Adds the functionality of both compression and encryption.
EXAMPLES
Please see Data::Serializer::Cookbook(3)
METHODS
new - constructor
$obj = Data::Serializer->new();
$obj = Data::Serializer->new(
serializer => Data::Dumper,
digester => SHA-256,
cipher => Blowfish,
secret => undef,
portable => 1,
compress => 0,
serializer_token => 1,
options => {},
);
new is the constructor object for Data::Serializer objects.
The default serializer is Data::Dumper
The default digester is SHA-256
The default cipher is Blowfish
The default secret is undef
The default portable is 1
The default encoding is hex
The default compress is 0
The default compressor is Compress::Zlib
The default serializer_token is 1
The default options is {} (pass nothing on to serializer)
serialize - serialize reference
$serialized = $obj->serialize({a => [1,2,3],b => 5});
Serializes the reference specified.
Will compress if compress is a true value.
Will encrypt if secret is defined.
deserialize - deserialize reference
$deserialized = $obj->deserialize($serialized);
Reverses the process of serialization and returns a copy of the original serialized reference.
freeze - synonym for serialize
$serialized = $obj->freeze({a => [1,2,3],b => 5});
thaw - synonym for deserialize
$deserialized = $obj->thaw($serialized);
raw_serialize - serialize reference in raw form
$serialized = $obj->raw_serialize({a => [1,2,3],b => 5});
This is a straight pass through to the underlying serializer, nothing else is done. (no encoding, encryption, compression, etc)
raw_deserialize - deserialize reference in raw form
$deserialized = $obj->raw_deserialize($serialized);
This is a straight pass through to the underlying serializer, nothing else is done. (no encoding, encryption, compression, etc)
secret - specify secret for use with encryption
$obj->secret(mysecret);
Changes setting of secret for the Data::Serializer object. Can also be set in the constructor. If specified than the object will utilize encryption.
portable - encodes/decodes serialized data
Uses encoding method to ascii armor serialized data
Aids in the portability of serialized data.
compress - compression of data
Compresses serialized data. Default is not to use it. Will compress if set to a true value $obj->compress(1);
serializer - change the serializer
Currently have 8 supported serializers: Storable, FreezeThaw, Data::Denter, Config::General, YAML, PHP::Serialization, XML::Dumper, and Data::Dumper.
Default is to use Data::Dumper.
Each serializer has its own caveats about usage especially when dealing with cyclical data structures or CODE references. Please see the appropriate documentation in those modules for further information.
cipher - change the cipher method
Utilizes Crypt::CBC and can support any cipher method that it supports.
digester - change digesting method
Uses Digest so can support any digesting method that it supports. Digesting function is used internally by the encryption routine as part of data verification.
compressor - changes compresing module
This method is included for possible future inclusion of alternate compression method Currently Compress::Zlib is the only supported compressor.
encoding - change encoding method
Encodes data structure in ascii friendly manner. Currently the only valid options are hex, or b64.
The b64 option uses Base64 encoding provided by MIME::Base64, but strips out newlines.
serializer_token - add usage hint to data
Data::Serializer prepends a token that identifies what was used to process its data. This is used internally to allow runtime determination of how to extract Serialized data. Disabling this feature is not recommended.
options - pass options through to underlying serializer
Currently is only supported by Config::General, and XML::Dumper.
my $obj = Data::Serializer->new(serializer => Config::General,
options => {
-LowerCaseNames => 1,
-UseApacheInclude => 1,
-MergeDuplicateBlocks => 1,
-AutoTrue => 1,
-InterPolateVars => 1
},
) or die "$!n";
or
my $obj = Data::Serializer->new(serializer => XML::Dumper,
options => { dtd => 1, }
) or die "$!n";
store - serialize data and write it to a file (or file handle)
$obj->store({a => [1,2,3],b => 5},$file, [$mode, $perm]);
or
$obj->store({a => [1,2,3],b => 5},$fh);
Serializes the reference specified using the serialize method and writes it out to the specified file or filehandle.
If a file path is specified you may specify an optional mode and permission as the next two arguments. See IO::File for examples.
Trips an exception if it is unable to write to the specified file.
retrieve - read data from file (or file handle) and return it after deserialization
my $ref = $obj->retrieve($file);
or
my $ref = $obj->retrieve($fh);
Reads first line of supplied file or filehandle and returns it deserialized.
Download (0.025MB)
Added: 2007-07-12 License: Perl Artistic License Price:
834 downloads
XTrader 2006.05
XTrader is a stock chart and technical analysis program. more>>
XTrader is a stock chart and technical analysis application. A simple portfolio module is also included for keeping tracks of your investments.
Main features:
- You can have unlimited number of workspaces with their own settings
- The database is a single sqlite3 database file
- SMA (Moving Average)
- ESMA (Exponential Moving Average)
- MACD
- Momentum
- RSI (Relative Strength Index)
- Stochastics
- ATR (Average True Range)
- Bollinger
- Standard Deviation
- Price List Report
- Price Change Report
- Portfolio Performance Report
- Portfolio Value Report
<<lessMain features:
- You can have unlimited number of workspaces with their own settings
- The database is a single sqlite3 database file
- SMA (Moving Average)
- ESMA (Exponential Moving Average)
- MACD
- Momentum
- RSI (Relative Strength Index)
- Stochastics
- ATR (Average True Range)
- Bollinger
- Standard Deviation
- Price List Report
- Price Change Report
- Portfolio Performance Report
- Portfolio Value Report
Download (2.3MB)
Added: 2006-05-04 License: QPL (QT Public License) Price:
1274 downloads
FSA::Rules 0.26
FSA::Rules is a Perl module to build simple rules-based state machines in Perl. more>>
FSA::Rules is a Perl module to build simple rules-based state machines in Perl.
Synopsis
my $fsa = FSA::Rules->new(
ping => {
do => sub {
print "ping!n";
my $state = shift;
$state->result(pong);
$state->machine->{count}++;
},
rules => [
game_over => sub { shift->machine->{count} >= 20 },
pong => sub { shift->result eq pong },
],
},
pong => {
do => sub { print "pong!n" },
rules => [ ping => 1, ], # always goes back to ping
},
game_over => { do => sub { print "Game Overn" } }
);
$fsa->start;
$fsa->switch until $fsa->at(game_over);
This class implements a simple state machine pattern, allowing you to quickly build rules-based state machines in Perl. As a simple implementation of a powerful concept, it differs slightly from an ideal DFA model in that it does not enforce a single possible switch from one state to another. Rather, it short circuits the evaluation of the rules for such switches, so that the first rule to return a true value will trigger its switch and no other switch rules will be checked. (But see the strict attribute and parameter to new().) It differs from an NFA model in that it offers no back-tracking. But in truth, you can use it to build a state machine that adheres to either model--hence the more generic FSA moniker.
FSA::Rules uses named states so that its easy to tell what state youre in and what state you want to go to. Each state may optionally define actions that are triggered upon entering the state, after entering the state, and upon exiting the state. They may also define rules for switching to other states, and these rules may specify the execution of switch-specific actions. All actions are defined in terms of anonymous subroutines that should expect an FSA::State object itself to be passed as the sole argument.
FSA::Rules objects and the FSA::State objects that make them up are all implemented as empty hash references. This design allows the action subroutines to use the FSA::State object passed as the sole argument, as well as the FSA::Rules object available via its machine() method, to stash data for other states to access, without the possibility of interfering with the state or the state machine itself.
<<lessSynopsis
my $fsa = FSA::Rules->new(
ping => {
do => sub {
print "ping!n";
my $state = shift;
$state->result(pong);
$state->machine->{count}++;
},
rules => [
game_over => sub { shift->machine->{count} >= 20 },
pong => sub { shift->result eq pong },
],
},
pong => {
do => sub { print "pong!n" },
rules => [ ping => 1, ], # always goes back to ping
},
game_over => { do => sub { print "Game Overn" } }
);
$fsa->start;
$fsa->switch until $fsa->at(game_over);
This class implements a simple state machine pattern, allowing you to quickly build rules-based state machines in Perl. As a simple implementation of a powerful concept, it differs slightly from an ideal DFA model in that it does not enforce a single possible switch from one state to another. Rather, it short circuits the evaluation of the rules for such switches, so that the first rule to return a true value will trigger its switch and no other switch rules will be checked. (But see the strict attribute and parameter to new().) It differs from an NFA model in that it offers no back-tracking. But in truth, you can use it to build a state machine that adheres to either model--hence the more generic FSA moniker.
FSA::Rules uses named states so that its easy to tell what state youre in and what state you want to go to. Each state may optionally define actions that are triggered upon entering the state, after entering the state, and upon exiting the state. They may also define rules for switching to other states, and these rules may specify the execution of switch-specific actions. All actions are defined in terms of anonymous subroutines that should expect an FSA::State object itself to be passed as the sole argument.
FSA::Rules objects and the FSA::State objects that make them up are all implemented as empty hash references. This design allows the action subroutines to use the FSA::State object passed as the sole argument, as well as the FSA::Rules object available via its machine() method, to stash data for other states to access, without the possibility of interfering with the state or the state machine itself.
Download (0.030MB)
Added: 2006-10-02 License: Perl Artistic License Price:
1117 downloads
Devel::StealthDebug 1.008
Devel::StealthDebug is a simple non-intrusive debug module. more>>
Devel::StealthDebug is a simple non-intrusive debug module.
SYNOPSIS
# in users code:
use Devel::StealthDebug;
... #!assert(< cond >)!
will die at this line if < cond > is not verified...
... #!watch(< var_name >)!
will carp each access to < var_name >
(Idea from Srinivasans monitor module)
... #!emit(< double_quoted_string_to_be_printed >)!
will emit the string Depending on emit_type
it will print, carp, croak or add to a file
carp is the default value for emit_type
... #!dump(< ref to a variable to be dumped >,< another ref >,...)!
will emit the variables structure
... #!when(< var_name >,< op >,< value >)!
will emit when < var_name > will pass the condition described by
< op >< value >. Currently, only works for watched scalar...
... #!emit_type(carp|croak|print)!
Define the emits behaviour
Can also be set on the use line :
use Devel::StealthDebug emit_type => croak;
Note that if you set it this way you gain an additional feature,
you can now emit to a file :
use Devel::StealthDebug emit_type => /path/to/file;
carp being the default value
You can also pass other optionq on the use line :
use Devel::StealthDebug ENABLE=>/path/to/file;
or
use Devel::StealthDebug ENABLE=>$ENV{WHATEVER};
or
use Devel::StealthDebug DUMPER=>1;
The third form will make the dump function use Data::Dumper.
The second form enable debugging only if the var passed as value is true (i.e. different from undef,,zero, or empty list)
The first form will enable the debug instructions if /path/to/file dont exist or exist AND contain a line (regex) which match the current file name.
This behaviour may sound odd, but as theres no way to know it you pass a value or a filename, a first test is made to check if the file exists, if it isnt the case then a value is assumed (so /path/to/missing/file is treated as a value which is true and so debugging is enabled). If the file exists, debugging is disabled unless this file contains a line whith a regex which matchs the current file name.
<<lessSYNOPSIS
# in users code:
use Devel::StealthDebug;
... #!assert(< cond >)!
will die at this line if < cond > is not verified...
... #!watch(< var_name >)!
will carp each access to < var_name >
(Idea from Srinivasans monitor module)
... #!emit(< double_quoted_string_to_be_printed >)!
will emit the string Depending on emit_type
it will print, carp, croak or add to a file
carp is the default value for emit_type
... #!dump(< ref to a variable to be dumped >,< another ref >,...)!
will emit the variables structure
... #!when(< var_name >,< op >,< value >)!
will emit when < var_name > will pass the condition described by
< op >< value >. Currently, only works for watched scalar...
... #!emit_type(carp|croak|print)!
Define the emits behaviour
Can also be set on the use line :
use Devel::StealthDebug emit_type => croak;
Note that if you set it this way you gain an additional feature,
you can now emit to a file :
use Devel::StealthDebug emit_type => /path/to/file;
carp being the default value
You can also pass other optionq on the use line :
use Devel::StealthDebug ENABLE=>/path/to/file;
or
use Devel::StealthDebug ENABLE=>$ENV{WHATEVER};
or
use Devel::StealthDebug DUMPER=>1;
The third form will make the dump function use Data::Dumper.
The second form enable debugging only if the var passed as value is true (i.e. different from undef,,zero, or empty list)
The first form will enable the debug instructions if /path/to/file dont exist or exist AND contain a line (regex) which match the current file name.
This behaviour may sound odd, but as theres no way to know it you pass a value or a filename, a first test is made to check if the file exists, if it isnt the case then a value is assumed (so /path/to/missing/file is treated as a value which is true and so debugging is enabled). If the file exists, debugging is disabled unless this file contains a line whith a regex which matchs the current file name.
Download (0.010MB)
Added: 2007-06-19 License: Perl Artistic License Price:
857 downloads
PApp::Storable 1.2
Storable module is a persistence for Perl data structures. more>>
Storable module is a persistence for Perl data structures.
SYNOPSIS
use Storable;
store %table, file;
$hashref = retrieve(file);
use Storable qw(nstore store_fd nstore_fd freeze thaw dclone);
# Network order
nstore %table, file;
$hashref = retrieve(file); # There is NO nretrieve()
# Storing to and retrieving from an already opened file
store_fd @array, *STDOUT;
nstore_fd %table, *STDOUT;
$aryref = fd_retrieve(*SOCKET);
$hashref = fd_retrieve(*SOCKET);
# Serializing to memory
$serialized = freeze %table;
%table_clone = %{ thaw($serialized) };
# Deep (recursive) cloning
$cloneref = dclone($ref);
# Advisory locking
use Storable qw(lock_store lock_nstore lock_retrieve)
lock_store %table, file;
lock_nstore %table, file;
$hashref = lock_retrieve(file);
The Storable package brings persistence to your Perl data structures containing SCALAR, ARRAY, HASH or REF objects, i.e. anything that can be conveniently stored to disk and retrieved at a later time.
It can be used in the regular procedural way by calling store with a reference to the object to be stored, along with the file name where the image should be written.
The routine returns undef for I/O problems or other internal error, a true value otherwise. Serious errors are propagated as a die exception.
To retrieve data stored to disk, use retrieve with a file name. The objects stored into that file are recreated into memory for you, and a reference to the root object is returned. In case an I/O error occurs while reading, undef is returned instead. Other serious errors are propagated via die.
Since storage is performed recursively, you might want to stuff references to objects that share a lot of common data into a single array or hash table, and then store that object. That way, when you retrieve back the whole thing, the objects will continue to share what they originally shared.
At the cost of a slight header overhead, you may store to an already opened file descriptor using the store_fd routine, and retrieve from a file via fd_retrieve. Those names arent imported by default, so you will have to do that explicitly if you need those routines. The file descriptor you supply must be already opened, for read if youre going to retrieve and for write if you wish to store.
store_fd(%table, *STDOUT) || die "cant store to stdoutn";
$hashref = fd_retrieve(*STDIN);
You can also store data in network order to allow easy sharing across multiple platforms, or when storing on a socket known to be remotely connected. The routines to call have an initial n prefix for network, as in nstore and nstore_fd. At retrieval time, your data will be correctly restored so you dont have to know whether youre restoring from native or network ordered data. Double values are stored stringified to ensure portability as well, at the slight risk of loosing some precision in the last decimals.
When using fd_retrieve, objects are retrieved in sequence, one object (i.e. one recursive tree) per associated store_fd.
If youre more from the object-oriented camp, you can inherit from Storable and directly store your objects by invoking store as a method. The fact that the root of the to-be-stored tree is a blessed reference (i.e. an object) is special-cased so that the retrieve does not provide a reference to that object but rather the blessed object reference itself. (Otherwise, youd get a reference to that blessed object).
<<lessSYNOPSIS
use Storable;
store %table, file;
$hashref = retrieve(file);
use Storable qw(nstore store_fd nstore_fd freeze thaw dclone);
# Network order
nstore %table, file;
$hashref = retrieve(file); # There is NO nretrieve()
# Storing to and retrieving from an already opened file
store_fd @array, *STDOUT;
nstore_fd %table, *STDOUT;
$aryref = fd_retrieve(*SOCKET);
$hashref = fd_retrieve(*SOCKET);
# Serializing to memory
$serialized = freeze %table;
%table_clone = %{ thaw($serialized) };
# Deep (recursive) cloning
$cloneref = dclone($ref);
# Advisory locking
use Storable qw(lock_store lock_nstore lock_retrieve)
lock_store %table, file;
lock_nstore %table, file;
$hashref = lock_retrieve(file);
The Storable package brings persistence to your Perl data structures containing SCALAR, ARRAY, HASH or REF objects, i.e. anything that can be conveniently stored to disk and retrieved at a later time.
It can be used in the regular procedural way by calling store with a reference to the object to be stored, along with the file name where the image should be written.
The routine returns undef for I/O problems or other internal error, a true value otherwise. Serious errors are propagated as a die exception.
To retrieve data stored to disk, use retrieve with a file name. The objects stored into that file are recreated into memory for you, and a reference to the root object is returned. In case an I/O error occurs while reading, undef is returned instead. Other serious errors are propagated via die.
Since storage is performed recursively, you might want to stuff references to objects that share a lot of common data into a single array or hash table, and then store that object. That way, when you retrieve back the whole thing, the objects will continue to share what they originally shared.
At the cost of a slight header overhead, you may store to an already opened file descriptor using the store_fd routine, and retrieve from a file via fd_retrieve. Those names arent imported by default, so you will have to do that explicitly if you need those routines. The file descriptor you supply must be already opened, for read if youre going to retrieve and for write if you wish to store.
store_fd(%table, *STDOUT) || die "cant store to stdoutn";
$hashref = fd_retrieve(*STDIN);
You can also store data in network order to allow easy sharing across multiple platforms, or when storing on a socket known to be remotely connected. The routines to call have an initial n prefix for network, as in nstore and nstore_fd. At retrieval time, your data will be correctly restored so you dont have to know whether youre restoring from native or network ordered data. Double values are stored stringified to ensure portability as well, at the slight risk of loosing some precision in the last decimals.
When using fd_retrieve, objects are retrieved in sequence, one object (i.e. one recursive tree) per associated store_fd.
If youre more from the object-oriented camp, you can inherit from Storable and directly store your objects by invoking store as a method. The fact that the root of the to-be-stored tree is a blessed reference (i.e. an object) is special-cased so that the retrieve does not provide a reference to that object but rather the blessed object reference itself. (Otherwise, youd get a reference to that blessed object).
Download (0.39MB)
Added: 2007-08-02 License: Perl Artistic License Price:
813 downloads
IPC::Run::Simple 1.3
IPC::Run::Simple is a simple system() wrapper. more>>
IPC::Run::Simple is a simple system() wrapper.
SYNOPSIS
# Run a command and check whether it failed
use IPC::Run::Simple;
run("echo Hello, O Cruel World")
or die "Command failed";
# Describe the failure
use IPC::Run::Simple qw($ERR);
run("echo Hello, O Cruel World")
or die "Command failed: $ERR";
# Use the :all tag instead of explicitly requesting $ERR
use IPC::Run::Simple qw(:all);
run("echo Hello, O Cruel World")
or die "Command failed: $ERR";
# Die with error message if command does not return 0
use IPC::Run::Simple qw(:Fatal);
run("echo Hello, O Cruel World");
# Allow other exit values without dying
use IPC::Run::Simple qw(:Fatal);
run(command => [ "echo", "Hello, O Cruel World!" ],
allowed => [ 1, 2, 5 ]);
This module is intended to be a very simple, straightforward wrapper around the system() call to make it behave more like other builtins.
run() will return a true value if the command was executed and return a successful status code, and false otherwise. The reason for the failure will be stored in the $IPC::Run::Simple::ERR variable (which is just $ERR if you import either $ERR or :all). The description of the reason was pulled almost directly from the system() documentation.
Optionally, you can import the :Fatal tag, which will cause run() to die() with an appropriate message if the command fails for any reason.
If you wish to allow nonzero exit values but still want to trap unexpected errors, you may use an expanded call syntax. Call run() with a set of key=>value pairs. The two implemented keys are command (an array reference containing the command to run) and allowed (an array reference of exit values that are allowed without causing run() to return false or throw an exception.)
<<lessSYNOPSIS
# Run a command and check whether it failed
use IPC::Run::Simple;
run("echo Hello, O Cruel World")
or die "Command failed";
# Describe the failure
use IPC::Run::Simple qw($ERR);
run("echo Hello, O Cruel World")
or die "Command failed: $ERR";
# Use the :all tag instead of explicitly requesting $ERR
use IPC::Run::Simple qw(:all);
run("echo Hello, O Cruel World")
or die "Command failed: $ERR";
# Die with error message if command does not return 0
use IPC::Run::Simple qw(:Fatal);
run("echo Hello, O Cruel World");
# Allow other exit values without dying
use IPC::Run::Simple qw(:Fatal);
run(command => [ "echo", "Hello, O Cruel World!" ],
allowed => [ 1, 2, 5 ]);
This module is intended to be a very simple, straightforward wrapper around the system() call to make it behave more like other builtins.
run() will return a true value if the command was executed and return a successful status code, and false otherwise. The reason for the failure will be stored in the $IPC::Run::Simple::ERR variable (which is just $ERR if you import either $ERR or :all). The description of the reason was pulled almost directly from the system() documentation.
Optionally, you can import the :Fatal tag, which will cause run() to die() with an appropriate message if the command fails for any reason.
If you wish to allow nonzero exit values but still want to trap unexpected errors, you may use an expanded call syntax. Call run() with a set of key=>value pairs. The two implemented keys are command (an array reference containing the command to run) and allowed (an array reference of exit values that are allowed without causing run() to return false or throw an exception.)
Download (0.005MB)
Added: 2007-08-15 License: Perl Artistic License Price:
802 downloads
Math::FresnelZone 0.03
Math::FresnelZone is a Perl extension for calculating the Fresnel Zone Radius of a given distance and frequency. more>>
SYNOPSIS
use Math::FresnelZone;
use Math::FresnelZone qw(fresnel fresnelMi fresnelKm);
The arguments are:
0 - distance in kilometers or miles (default is 1),
1 - frequency in GHz (defualt 2.4),
2 - set to true to specify that the distance you are inputting is in miles and that the results should be in in feet (default is 0 - IE kilometers/meters)
fresnel()
my $fresnel_zone_radius_in_meters = fresnel(); # fresnel zone radius in meters for 1 kilometer at 2.4 GHz
my $fzr_in_meters = fresnel(5); # fresnel zone radius in meters for 5 kilometers at 2.4 GHz
my $fzr_in_meters = fresnel(5,4.8); # fresnel zone radius in meters for 5 kilometers at 4.8 GHz
my $fzr_in_feet = fresnel(3,9.6,1); # fresnel zone in feet for 3 miles at 9.6 GHz
If you are inputting Kilometers the result is in meters (these 3 calls have identical results):
fresnel($Km,$GHz);
fresnelKm($Km,$GHz); # see documentaion below for info about fresnelKm()
fresnel($Km,$GHz,0);
If you are inputting Miles (by specifying a true value as the 3rd argument) the result is in feet (these 2 calls have identical results)
fresnel($Mi,$GHz,1);
fresnelMi($Mi,$GHz); # see documentaion below for info about fresnelMi()
fresnelKm()
You can use this to make it easier to avoid ambiguity if are working in kilometers/meters. It takes the first two arguments only: distance in kilometers and frequency in GigaHertz
my $fzr_in_meters = fresnelKm($Km,$GHz);
fresnelMi()
You can use this to make it easier to avoid ambiguity if are working in miles/feet. It takes the first two arguments only: distance in miles and frequency in GigaHertz
my $fzr_in_feet = fresnelMi($Mi,$GHz);
Download (0.003MB)
Added: 2006-12-04 License: Perl Artistic License Price:
1056 downloads
Devel::FindGlobals 0.03
Devel::FindGlobals is a Perl module to find global variables and their size. more>>
Devel::FindGlobals is a Perl module to find global variables and their size.
SYNOPSIS
use Devel::FindGlobals;
print print_globals_sizes();
This module just runs around and over the symbol table, finds global variables, gets their sizes with Devel::Size, and then prints them out.
find_globals() just finds the globals (and returns a hashref), and find_globals_sizes() returns the globals and the sizes in a hashref. print_globals_sizes() prints out that data in a pretty table.
find_globals() hashref is of the form $hash->{TYPE}{NAME}, where TYPE is SCALAR, ARRAY, HASH (types stored in @Devel::FindGlobals::TYPES).
find_globals_sizes() hashref is the same, except that the value of the record is not 1 but an arrayref of size and total_size (size is the size of the variable itself, and total_size counts up all the other members of the variable, for arrayrefs and hashrefs).
print_globals_sizes() accepts an OPTIONS hash. Currently recognized options are:
ignore_files
Ignore file globals (like $main::_
ignore_undef_scalars
Ignore scalars that exist, but are not defined. Default value is true.
exclude_match
An arrayref of strings to match; e.g., [^VERSION$, ^Debug]. Will not print variables matching any of the expressions.
include_match
Same as exclude_match, except for variables to exclusively include, instead of strings to exclude.
lexicals
A hashref of name = reference> for lexical variables to include in the report.
<<lessSYNOPSIS
use Devel::FindGlobals;
print print_globals_sizes();
This module just runs around and over the symbol table, finds global variables, gets their sizes with Devel::Size, and then prints them out.
find_globals() just finds the globals (and returns a hashref), and find_globals_sizes() returns the globals and the sizes in a hashref. print_globals_sizes() prints out that data in a pretty table.
find_globals() hashref is of the form $hash->{TYPE}{NAME}, where TYPE is SCALAR, ARRAY, HASH (types stored in @Devel::FindGlobals::TYPES).
find_globals_sizes() hashref is the same, except that the value of the record is not 1 but an arrayref of size and total_size (size is the size of the variable itself, and total_size counts up all the other members of the variable, for arrayrefs and hashrefs).
print_globals_sizes() accepts an OPTIONS hash. Currently recognized options are:
ignore_files
Ignore file globals (like $main::_
ignore_undef_scalars
Ignore scalars that exist, but are not defined. Default value is true.
exclude_match
An arrayref of strings to match; e.g., [^VERSION$, ^Debug]. Will not print variables matching any of the expressions.
include_match
Same as exclude_match, except for variables to exclusively include, instead of strings to exclude.
lexicals
A hashref of name = reference> for lexical variables to include in the report.
Download (0.003MB)
Added: 2007-05-02 License: Perl Artistic License Price:
905 downloads
Template::Manual::Directives 2.19
Template::Manual::Directives is a Perl module that contains template directives. more>>
Template::Manual::Directives is a Perl module that contains template directives.
Accessing and Updating Template Variables
GET
The GET directive retrieves and outputs the value of the named variable.
[% GET foo %]
The GET keyword is optional. A variable can be specified in a directive tag by itself.
[% foo %]
The variable can have an unlimited number of elements, each separated by a dot .. Each element can have arguments specified within parentheses.
[% foo %]
[% bar.baz %]
[% biz.baz(10) %]
...etc...
See Template::Manual::Variables for a full discussion on template variables.
You can also specify expressions using the logical (and, or, not, ?:) and mathematic operators (+ - * / % mod div).
[% template.title or default.title %]
[% score * 100 %]
[% order.nitems ? checkout(order.total) : no items %]
The div operator returns the integer result of division. Both % and mod return the modulus (i.e. remainder) of division. mod is provided as an alias for % for backwards compatibility with version 1.
[% 15 / 6 %] # 2.5
[% 15 div 6 %] # 2
[% 15 mod 6 %] # 3
CALL
The CALL directive is similar to GET in evaluating the variable named, but doesnt print the result returned. This can be useful when a variable is bound to a sub-routine or object method which you want to call but arent interested in the value returned.
[% CALL dbi.disconnect %]
[% CALL inc_page_counter(page_count) %]
SET
The SET directive allows you to assign new values to existing variables or create new temporary variables.
[% SET title = Hello World %]
The SET keyword is also optional.
[% title = Hello World %]
Variables may be assigned the values of other variables, unquoted numbers (digits), literal text (single quotes) or quoted text ("double quotes"). In the latter case, any variable references within the text will be interpolated when the string is evaluated. Variables should be prefixed by $, using curly braces to explicitly scope the variable name where necessary.
[% foo = Foo %] # literal value Foo
[% bar = foo %] # value of variable foo
[% cost = $100 %] # literal value $100
[% item = "$bar: ${cost}.00" %] # value "Foo: $100.00"
Multiple variables may be assigned in the same directive and are evaluated in the order specified. Thus, the above could have been written:
[% foo = Foo
bar = foo
cost = $100
item = "$bar: ${cost}.00"
%]
Simple expressions can also be used, as per GET.
[% ten = 10
twenty = 20
thirty = twenty + ten
forty = 2 * twenty
fifty = 100 div 2
six = twenty mod 7
%]
You can concatenate strings together using the _ operator. In Perl 5, the . is used for string concatenation, but in Perl 6, as in the Template Toolkit, the . will be used as the method calling operator and _ will be used for string concatenation. Note that the operator must be specified with surrounding whitespace which, as Larry says, is construed as a feature:
[% copyright = (C) Copyright _ year _ _ author %]
You can, of course, achieve a similar effect with double quoted string interpolation.
[% copyright = "(C) Copyright $year $author" %]
DEFAULT
The DEFAULT directive is similar to SET but only updates variables that are currently undefined or have no "true" value (in the Perl sense).
[% DEFAULT
name = John Doe
id = jdoe
%]
This can be particularly useful in common template components to ensure that some sensible default are provided for otherwise undefined variables.
[% DEFAULT
title = Hello World
bgcol = #ffffff
%]
< html>
< head>
< title>[% title %]
< /head>
< body bgcolor="[% bgcol %]">
<<lessAccessing and Updating Template Variables
GET
The GET directive retrieves and outputs the value of the named variable.
[% GET foo %]
The GET keyword is optional. A variable can be specified in a directive tag by itself.
[% foo %]
The variable can have an unlimited number of elements, each separated by a dot .. Each element can have arguments specified within parentheses.
[% foo %]
[% bar.baz %]
[% biz.baz(10) %]
...etc...
See Template::Manual::Variables for a full discussion on template variables.
You can also specify expressions using the logical (and, or, not, ?:) and mathematic operators (+ - * / % mod div).
[% template.title or default.title %]
[% score * 100 %]
[% order.nitems ? checkout(order.total) : no items %]
The div operator returns the integer result of division. Both % and mod return the modulus (i.e. remainder) of division. mod is provided as an alias for % for backwards compatibility with version 1.
[% 15 / 6 %] # 2.5
[% 15 div 6 %] # 2
[% 15 mod 6 %] # 3
CALL
The CALL directive is similar to GET in evaluating the variable named, but doesnt print the result returned. This can be useful when a variable is bound to a sub-routine or object method which you want to call but arent interested in the value returned.
[% CALL dbi.disconnect %]
[% CALL inc_page_counter(page_count) %]
SET
The SET directive allows you to assign new values to existing variables or create new temporary variables.
[% SET title = Hello World %]
The SET keyword is also optional.
[% title = Hello World %]
Variables may be assigned the values of other variables, unquoted numbers (digits), literal text (single quotes) or quoted text ("double quotes"). In the latter case, any variable references within the text will be interpolated when the string is evaluated. Variables should be prefixed by $, using curly braces to explicitly scope the variable name where necessary.
[% foo = Foo %] # literal value Foo
[% bar = foo %] # value of variable foo
[% cost = $100 %] # literal value $100
[% item = "$bar: ${cost}.00" %] # value "Foo: $100.00"
Multiple variables may be assigned in the same directive and are evaluated in the order specified. Thus, the above could have been written:
[% foo = Foo
bar = foo
cost = $100
item = "$bar: ${cost}.00"
%]
Simple expressions can also be used, as per GET.
[% ten = 10
twenty = 20
thirty = twenty + ten
forty = 2 * twenty
fifty = 100 div 2
six = twenty mod 7
%]
You can concatenate strings together using the _ operator. In Perl 5, the . is used for string concatenation, but in Perl 6, as in the Template Toolkit, the . will be used as the method calling operator and _ will be used for string concatenation. Note that the operator must be specified with surrounding whitespace which, as Larry says, is construed as a feature:
[% copyright = (C) Copyright _ year _ _ author %]
You can, of course, achieve a similar effect with double quoted string interpolation.
[% copyright = "(C) Copyright $year $author" %]
DEFAULT
The DEFAULT directive is similar to SET but only updates variables that are currently undefined or have no "true" value (in the Perl sense).
[% DEFAULT
name = John Doe
id = jdoe
%]
This can be particularly useful in common template components to ensure that some sensible default are provided for otherwise undefined variables.
[% DEFAULT
title = Hello World
bgcol = #ffffff
%]
< html>
< head>
< title>[% title %]
< /head>
< body bgcolor="[% bgcol %]">
Download (0.76MB)
Added: 2007-07-11 License: Perl Artistic License Price:
836 downloads
Tk::form 804.027
Tk::form is a Perl module with a geometry manager based on attachment rules. more>>
Tk::form is a Perl module with a geometry manager based on attachment rules.
SYNOPSIS
$widget->form?(args)?
$widget->formOption?(args)?
The form method is used to communicate with the form Geometry Manager, a geometry manager that arranges the geometry of the children in a parent window according to attachment rules. The form geometry manager is very flexible and powerful; it can be used to emulate all the existing features of the Tk packer and placer geometry managers (see pack, place). The form method can have any of several forms, depending on Option:
$slave->form?(options)?
Sets or adjusts the attachment values of the slave window according to the -option=>value argument pairs.
-b => attachment
Abbreviation for the -bottom option.
-bottom => attachment
Specifies an attachment for the bottom edge of the slave window. The attachment must specified according to "SPECIFYING ATTACHMENTS" below.
-bottomspring => weight
Specifies the weight of the spring at the bottom edge of the slave window. See "USING SPRINGS" below.
-bp => value
Abbreviation for the -padbottom option.
-bs => weight
Abbreviation for the -bottomspring option.
-fill => style
Specifies the fillings when springs are used for this widget. The value must be x, y, both or none.
-in => $master
Places the slave window into the specified $master window. If the slave was originally in another master window, all attachment values with respect to the original master window are discarded. Even if the attachment values are the same as in the original master window, they need to be specified again. The -in flag, when needed, must appear as the first flag of options. Otherwise an error is generated.
-l => attachment
Abbreviation for the -left option.
-left => attachment
Specifies an attachment for the left edge of the slave window. The attachment must specified according to "SPECIFYING ATTACHMENTS" below.
-leftspring => weight
Specifies the weight of the spring at the left edge of the slave window. See "USING SPRINGS" below.
-lp => value
Abbreviation for the -padleft option.
-ls => weight
Abbreviation for the -leftspring option.
-padbottom => value
Specifies the amount of external padding to leave on the bottom side of the slave. The value may have any of the forms acceptable to Tk_GetPixels.
-padleft => value
Specifies the amount of external padding to leave on the left side of the slave.
-padright => value
Specifies the amount of external padding to leave on the right side of the slave.
-padtop => value
Specifies the amount of external padding to leave on the top side of the slave.
-padx => value
Specifies the amount of external padding to leave on both the left and the right sides of the slave.
-pady => value
Specifies the amount of external padding to leave on both the top and the bottom sides of the slave.
-r => attachment
Abbreviation for the -right option.
-right => attachment
Specifies an attachment for the right edge of the slave window. The attachment must specified according to "SPECIFYING ATTACHMENTS" below.
-rightspring => weight
Specifies the weight of the spring at the right edge of the slave window. See "USING SPRINGS" below.
-rp => value
Abbreviation for the -padright option.
-rs => weight
Abbreviation for the -rightspring option.
-t => attachment
Abbreviation for the -top option.
-top => attachment
Specifies an attachment for the top edge of the slave window. The attachment must specified according to "SPECIFYING ATTACHMENTS" below.
-topspring => weight
Specifies the weight of the spring at the top edge of the slave window. See "USING SPRINGS" below.
-tp => value
Abbreviation for the -padtop option.
-ts => weight
Abbreviation for the -topspring option.
$master->formCheck
This method checks whether there is circular dependency in the attachments of the masters slaves (see "CIRCULAR DEPENDENCY" below). It returns the Boolean value TRUE if it discover circular dependency and FALSE otherwise.
$slave->formForget
Removes the slave from its master and unmaps its window. The slave will no longer be managed by form. All attachment values with respect to its master window are discarded. If another slave is attached to this slave, then the attachment of the other slave will be changed to grid attachment based on its geometry.
$master->formGrid?(x_size, y_size)?
When x_size and y_size are given, this method returns the number of grids of the $master window in a pair of integers of the form (x_size, y_size). When both x_size and y_size are given, this method changes the number of horizontal and vertical grids on the master window.
$slave->formInfo?(-option)?
Queries the attachment options of a slave window. -option can be any of the options accepted by the form method. If -option is given, only the value of that option is returned. Otherwise, this method returns a list whose elements are the current configuration state of the slave given in the same option-value form that might be specified to form. The first two elements in this list list are "-in=>$master" where $master is the slaves master window.
$master->formSlaves
Returns a list of all of the slaves for the master window. The order of the slaves in the list is the same as their order in the packing order. If master has no slaves then an empty string is returned.
<<lessSYNOPSIS
$widget->form?(args)?
$widget->formOption?(args)?
The form method is used to communicate with the form Geometry Manager, a geometry manager that arranges the geometry of the children in a parent window according to attachment rules. The form geometry manager is very flexible and powerful; it can be used to emulate all the existing features of the Tk packer and placer geometry managers (see pack, place). The form method can have any of several forms, depending on Option:
$slave->form?(options)?
Sets or adjusts the attachment values of the slave window according to the -option=>value argument pairs.
-b => attachment
Abbreviation for the -bottom option.
-bottom => attachment
Specifies an attachment for the bottom edge of the slave window. The attachment must specified according to "SPECIFYING ATTACHMENTS" below.
-bottomspring => weight
Specifies the weight of the spring at the bottom edge of the slave window. See "USING SPRINGS" below.
-bp => value
Abbreviation for the -padbottom option.
-bs => weight
Abbreviation for the -bottomspring option.
-fill => style
Specifies the fillings when springs are used for this widget. The value must be x, y, both or none.
-in => $master
Places the slave window into the specified $master window. If the slave was originally in another master window, all attachment values with respect to the original master window are discarded. Even if the attachment values are the same as in the original master window, they need to be specified again. The -in flag, when needed, must appear as the first flag of options. Otherwise an error is generated.
-l => attachment
Abbreviation for the -left option.
-left => attachment
Specifies an attachment for the left edge of the slave window. The attachment must specified according to "SPECIFYING ATTACHMENTS" below.
-leftspring => weight
Specifies the weight of the spring at the left edge of the slave window. See "USING SPRINGS" below.
-lp => value
Abbreviation for the -padleft option.
-ls => weight
Abbreviation for the -leftspring option.
-padbottom => value
Specifies the amount of external padding to leave on the bottom side of the slave. The value may have any of the forms acceptable to Tk_GetPixels.
-padleft => value
Specifies the amount of external padding to leave on the left side of the slave.
-padright => value
Specifies the amount of external padding to leave on the right side of the slave.
-padtop => value
Specifies the amount of external padding to leave on the top side of the slave.
-padx => value
Specifies the amount of external padding to leave on both the left and the right sides of the slave.
-pady => value
Specifies the amount of external padding to leave on both the top and the bottom sides of the slave.
-r => attachment
Abbreviation for the -right option.
-right => attachment
Specifies an attachment for the right edge of the slave window. The attachment must specified according to "SPECIFYING ATTACHMENTS" below.
-rightspring => weight
Specifies the weight of the spring at the right edge of the slave window. See "USING SPRINGS" below.
-rp => value
Abbreviation for the -padright option.
-rs => weight
Abbreviation for the -rightspring option.
-t => attachment
Abbreviation for the -top option.
-top => attachment
Specifies an attachment for the top edge of the slave window. The attachment must specified according to "SPECIFYING ATTACHMENTS" below.
-topspring => weight
Specifies the weight of the spring at the top edge of the slave window. See "USING SPRINGS" below.
-tp => value
Abbreviation for the -padtop option.
-ts => weight
Abbreviation for the -topspring option.
$master->formCheck
This method checks whether there is circular dependency in the attachments of the masters slaves (see "CIRCULAR DEPENDENCY" below). It returns the Boolean value TRUE if it discover circular dependency and FALSE otherwise.
$slave->formForget
Removes the slave from its master and unmaps its window. The slave will no longer be managed by form. All attachment values with respect to its master window are discarded. If another slave is attached to this slave, then the attachment of the other slave will be changed to grid attachment based on its geometry.
$master->formGrid?(x_size, y_size)?
When x_size and y_size are given, this method returns the number of grids of the $master window in a pair of integers of the form (x_size, y_size). When both x_size and y_size are given, this method changes the number of horizontal and vertical grids on the master window.
$slave->formInfo?(-option)?
Queries the attachment options of a slave window. -option can be any of the options accepted by the form method. If -option is given, only the value of that option is returned. Otherwise, this method returns a list whose elements are the current configuration state of the slave given in the same option-value form that might be specified to form. The first two elements in this list list are "-in=>$master" where $master is the slaves master window.
$master->formSlaves
Returns a list of all of the slaves for the master window. The order of the slaves in the list is the same as their order in the packing order. If master has no slaves then an empty string is returned.
Download (5.7MB)
Added: 2007-07-05 License: Perl Artistic License Price:
842 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 true value 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