Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Data::Phrasebook::GeneUser3Contributed Perl DocumeData::Phrasebook::Generic(3)

NAME
       Data::Phrasebook::Generic - Base	class for Phrasebook Models

SYNOPSIS
	   use Data::Phrasebook;

	   my $q = Data::Phrasebook->new(
	       class  => 'Fnerk',
	       loader => 'XML',
	       file   => 'phrases.xml',
	       dict   => 'English',
	   );

DESCRIPTION
       This module provides a base class for phrasebook	implementations.

CONSTRUCTOR
   new
       "new" takes an optional hash of arguments. Each value in	the hash is
       given as	an argument to a method	of the same name as the	key.

       This constructor	should never need to be	called directly	as Phrasebook
       creation	should go through the Data::Phrasebook factory.

       Subclasses should provide at least an accessor method to	retrieve
       values for a named key. Further methods can be overloaded, but must
       retain a	standard API to	the overloaded method.

       All, or at least	most, phrasebook implementations should	inherit	from
       this class.

METHODS
   loader
       Set, or get, the	loader class. Uses a default if	none have been
       specified. See Data::Phrasebook::Loader.

   unload
       Called by the file() and	dict() methods when a fresh file or dictionary
       is specified, and reloading is required.

   loaded
       Accessor	to determine whether the current dictionary has	been loaded

   file
       A description of	a file that is passed to the loader. In	most cases,
       this is a file. A loader	that gets its data from	a database could
       conceivably have	this as	a hash like thus:

	  $q->file( {
	      dsn => "dbi:SQLite:dbname=bookdb",
	      table => 'phrases',
	  } );

       That is,	which loader you use determines	what your "file" looks like.

       The default loader takes	just an	ordinary filename.

   dict
       Accessor	to store the dictionary	to be used.

   dicts
       Having instantiated the "Data::Phrasebook" object class,	and using the
       "file" attribute	as a directory path, the object	can return a list of
       the current dictionaries	available (provided the	plugin supports	it)
       as:

	 my $pb	= Data::Phrasebook->new(
	   loader => 'Text',
	   file	  => '/tmp/phrasebooks',
	 );

	 my @dicts = $pb->dicts;

       or

	 my @dicts = $pb->dicts( $path );

   keywords
       Having instantiated the "Data::Phrasebook" object class,	using the
       "dict" attribute	as required, the object	can return a list of the
       current keywords	available (provided the	plugin supports	it) as:

	 my $pb	= Data::Phrasebook->new(
	   loader => 'Text',
	   file	  => '/tmp/phrasebooks',
	   dict	  => 'TEST',
	 );

	 my @keywords =	$pb->keywords;

       or

	 my @keywords =	$pb->keywords( $dict );

       Note the	list will be a combination of the default and any named
       dictionary.  However, not all Loader plugins may	support	the second
       usage.

   data
       Loads the data source, if not already loaded, and returns the data
       block associated	with the given key.

	   my $data = $self->data($key);

       This is typically only used internally by implementations, not the end
       user.

   delimiters
       Returns or sets the current delimiters for substitution variables. Must
       be a regular expression with at least one capture group.

       The example below shows the default ':variable' style regex.

	  $q->delimiters( qr{ :(\w+) }x	);

       The example below shows a Template Toolkit style	regex.

	  $q->delimiters( qr{ \[% \s* (\w+) \s*	%\] }x );

       In addition to the delimiter pattern, an	optional setting to suppress
       missing value errors can	be passed after	the pattern. If	set to a true
       value, will turn	any unmatched delimiter	patterns to an empty string.

SEE ALSO
       Data::Phrasebook, Data::Phrasebook::Loader.

SUPPORT
       Please see the README file.

AUTHOR
	 Original author: Iain Campbell	Truskett (16.07.1979 - 29.12.2003)
	 Maintainer: Barbie <barbie@cpan.org> since January 2004.
	 for Miss Barbell Productions <http://www.missbarbell.co.uk>.

COPYRIGHT AND LICENSE
	 Copyright (C) 2003 Iain Truskett.
	 Copyright (C) 2004-2013 Barbie	for Miss Barbell Productions.

	 This distribution is free software; you can redistribute it and/or
	 modify	it under the Artistic License v2.

perl v5.32.0			  2014-08-20	  Data::Phrasebook::Generic(3)

NAME | SYNOPSIS | DESCRIPTION | CONSTRUCTOR | METHODS | SEE ALSO | SUPPORT | AUTHOR | COPYRIGHT AND LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Data::Phrasebook::Generic&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help