NAME
Getopt::Complete::Cache - cache options next-to the command they apply-to
SYNOPSIS
Presuming MyApp.pm isa Command, and "myapp" is an executable like:
use MyApp;
MyApp->execute_with_shell_params_and_exit();
Add this BEFORE using the MyApp module:
use Getopt::Complete::Cache class => 'MyApp';
use MyApp;
MyApp->execute_with_shell_params_and_exit();
Now the shell will look for MyApp.pm.opts during completion and will never actually load the MyApp.pm module during tab-completion.
The .opts file is autogenerated upon the first attempt to find it.
DESCRIPTION
This module is for the obscure case in which: 1. the compile time on an executable is sluggish, and we don't want to have sluggish tab-completion 2. the command-line should be cached relative to a given module name
This is most useful with classes implementing the Command.pm API. Since these modules may form a large command tree, the caching occurs at individual levels in the tree separately.