Basicos::Tags - Etiquetado de objetos


__top


NAME

Basicos::Tags - Etiquetado de objetos

__top


SYNOPSIS

    package MyPackage;
    use base qw(Basicos::Tags);
    package main;
    my $obj = MyPackage->new();
    my $obj->tag('etiqueta','valor');
    
=head1  DESCRIPTION

Este módulo añade métodos (y estructura) para etiquetar objetos si se hereda de él.

Las etiquetas son simples pares de nombre-valor que pueden contener cualquier valor escalar.

tag()

    $obj->tag('etiqueta','valor');
    my $value = $obj->tag('etiqueta');
    
Método de escritura (añade etiquetas) ó lectura (recupera su valor) de un
objeto. Si no se proporciona un valor recupera el que ya existe.

Parámetros

Etiqueta
Valor escalar (opcional)

Resultados

Valor de la etiqueta si se llama como método de lectura (accessor)
Referencia al objeto si se llama como método de escritura (mutator)

tags()

    my %tags = (
        'una'   =>  1,
        'dos'   =>  2,
        'tres'  =>  3  );
    $obj->tags( %tags );

Añade varias etiquetas a un objeto de una sola vez.

Parámetros

Referencia a un hash ó hash completo con las etiquetas y sus valores.

Resultados

Referencia al objeto proporcionado.

untag()

    $obj->untag('etiqueta');

Despega (elimina) una etiqueta de un objeto.

Parámetros

Etiqueta a eliminar

Si la etiqueta no existe se ignora.

Resultados

Referencia al objeto

search_tag()

    my $tags = $obj->search_tags('a[ld]');

Recupera todas las etiquetas de un objeto ó sólo aquellas que coincídan con la expresión regular proporcionada.

Parámetros

Expresión regular (opcional)

Se comprueba contra los nombres de las etiquetas (no sus valores).

Resultados

Hash ó referencia a un hash dependiendo del contexto de llamada.

__top


BUGS

Ninguno advertido por ahora.

__top


AUTHOR

(c) Copyright Víctor Moral <victor@taquiones.net>

__top


SEE ALSO

__top


LICENSE

Este programa está bajo licencia GPL (ver perlgpl) y puede distribuirse y/ó modificarse bajo los términos en ella descritos.

__top

 Basicos::Tags - Etiquetado de objetos