GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Badger::Data(3) User Contributed Perl Documentation Badger::Data(3)

This is being merged in from Template::TT3::Type. The documentation still refers to the old name and relates to TT-specific use.

Badger::Data - base class for data object

    # defining a subclass data type
    package Badger::Data::Thing;
    use base 'Badger::Data';
    
    our $METHODS = {
        wibble => \&wibble,
        wobble => \&wobble,
    };
    
    sub wibble {
        my $self = shift;
        # some wibble code...
    }
    
    sub wobble {
        my $self = shift;
        # some wobble code...
    }

This module is being merged in from the prototype "Template-TT3" code. The implementation is subject to change and the documentation may be incomplete or incorrect in places.

The "Badger::Data" module implements a base class for the Badger::Data::Text, Badger::Data::List and Badger::Data::Hash data objects.

The following methods are defined in addition to those inherited from Badger::Prototype and Badger::Base.

Initialialisation method to handle any per-object initialisation. This is called by the new() method inherited from Badger::Base . In this base class, the method simply copies all items in the $config hash array into the $self object.

Create a copy of the current object.

    my $clone = $object->clone();

Additional named parameters can be provided. These are merged with the items defined in the parent object and passed to the cloned object's init() method.

    my $clone = $object->clone( g => 0.577 );

Returns a reference to a hash array containing the content of the $METHODS package variable in the current class and any base classes.

    my $methods = $object->methods;

Returns a reference to a particular method from the hash reference returned by the methods() method.

    my $method = $object->method('ref');

When called without any arguments, it returns a reference to the entire hash reference, as per methods().

    my $method = $object->method->{ foo };

This method provides access to an out-of-band (i.e. stored separately from the data itself) hash array of metadata for the data item. It returns a reference to a hash array when called without arguments.

    # fetch metadata hash and add an entry
    my $metadata = $data->metadata;
    $metadata->{ author } = 'Arthur Dent';
    
    # later... print the metadata
    print $data->metadata->{ author };

It returns the value of an item in the metadata hash when called with a single argument.

    print $data->metadata('author');

It sets the value of an item when called with two arguments.

    $data->metadata( author => 'Ford Prefect' );

Returns the name of the object type, e.g. "Template::TT3::Type", "Template::TT3::Type::Text", Template::TT3::Type::List, etc., exactly as Perl's "ref()" function does.

Returns a true/false (1/0) value to indicate if the target data is defined.

Returns a true/false (1/0) value to indicate if the target data is undefined.

Returns a true/false (1/0) value to indicate if the target data has a true value (using by Perl's definition of what constitutes truth).

Returns a true/false (1/0) value to indicate if the target data has a false value (using by Perl's definition of what constitutes truth).

Andy Wardley <http://wardley.org/>

Copyright (C) 1996-2008 Andy Wardley. All Rights Reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

Template::TT3::Type::Text, Template::TT3::Type::List and Template::TT3::Type::Hash.
2016-12-12 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.