Zoidberg::PluginHash(3pm)

Zoidberg::PluginHash3pm

Magic plugin loader

Usage

        use Zoidberg::PluginHash;
        my %plugins;
        tie %plugins, q/Zoidberg::PluginHash/, $shell;
        $plugins{foo}->bar();

Overview

Documentation about Zoidberg's plugin mechanism will be provided in an other document. FIXME tell where exactly.

This module hides some plugin loader stuff behind a transparent "tie" interface. You should regard the tied hash as a simple hash with object references. You can NOT store objects in the hash, all stored values are expected to be either a filename or a hash with meta data.

The $shell object is expected to be a hash containing at least the array "$shell->{settings}{data_dirs}" which contains the search path for plugin meta data. Config data for plugins is located in "$shell->{settings}{plugin_name}". Commands and events as defined by the plugins are stored in "$shell->{commands}" and "$shell->{events}". These two hashes are expected to be tied with class Zoidberg::DispatchTable.

Zoidberg::PluginHash depends on Zoidberg::Utils for reading files of various content types. Also it has special bindings for initialising Zoidberg::Fish objects.

Releases

3 releases since Debian 3.1 (Sarge); the text changed 1 time.

  1. 3.1
  2. 4.0–5.0

Author

Jaap Karssenberg ⎪⎪ Pardus [Larus] <[email protected]>

Copyright (c) 2003 Jaap G Karssenberg. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

From zoidberg 0.96-1 in Debian 5.0 (Lenny). Parsed by carta from the page's man source.