Help-Site Computer Manuals
Software
Hardware
Programming
Networking
  Algorithms & Data Structures   Programming Languages   Revision Control
  Protocols
  Cameras   Computers   Displays   Keyboards & Mice   Motherboards   Networking   Printers & Scanners   Storage
  Windows   Linux & Unix   Mac

Getopt::Attribute
Attribute wrapper for Getopt::Long

Getopt::Attribute - Attribute wrapper for Getopt::Long


NAME

Getopt::Attribute - Attribute wrapper for Getopt::Long


SYNOPSIS


  use Getopt::Attribute;

  our $verbose : Getopt(verbose!);

  our $all     : Getopt(all);

  our $size    : Getopt(size=s);

  our $more    : Getopt(more+);

  our @library : Getopt(library=s);

  our %defines : Getopt(define=s);

  sub quiet : Getopt(quiet) { our $quiet_msg = 'seen quiet' }

  usage() if our $man : Getopt(man);

  ...

  # Meanwhile, on some command line:

  mypgm.pl --noverbose --all --size=23 --more --more --more --quiet

           --library lib/stdlib --library lib/extlib

           --define os=linux --define vendor=redhat --man -- foo


DESCRIPTION

Note: This version of the module works works with perl 5.8.0. If you need it to work with perl 5.6.x, please use an earlier version from CPAN.

This module provides an attribute wrapper around Getopt::Long. Instead of declaring the options in a hash with references to the variables and subroutines affected by the options, you can use the Getopt attribute on the variables and subroutines directly.

As you can see from the Synopsis, the attribute takes an argument of the same format as you would give as the hash key for Getopt::Long. See the Getopt::Long manpage for details.

Note that since attributes are processed during CHECK, but assignments on newly declared variables are processed during run-time, you can't set defaults on those variables beforehand, like this:


        our $verbose : Getopt(verbose!) = 1;  # DOES NOT WORK

Instead, you have to establish defaults afterwards, like so:


        our $verbose : Getopt(verbose!);

        $verbose ||= 1;

Alternatively, you can specify a default value within the Getopt attribute:


    our $def2 : Getopt(def2=i 42);


BUGS

None known so far. If you find any bugs or oddities, please do inform the author.


AUTHOR

Marcel Grünauer <marcel.gruenauer@chello.at>


COPYRIGHT

Copyright 2001 Marcel Grünauer. All rights reserved.

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


SEE ALSO

perl(1), Getopt::Long(3pm), Attribute::Handlers(3pm).

Programminig
Wy
Wy
yW
Wy
Programming
Wy
Wy
Wy
Wy