AppConfig::Getopt(3)

okay bestie, welcome to AppConfig::Getopt(3) from the User Contributed Perl Documentation β€” this page is literally your group chat with command line args, and it’s giving main character energy πŸ’…βœ¨

πŸ’– NAME πŸ’–

AppConfig::Getopt β€” a Perl5 module for processing command line arguments via delegation to Getopt::Long. no cap, that’s the whole vibe 🫢

🌸 SYNOPSIS 🌸

use AppConfig::Getopt;

my $state  = AppConfig::State->new(\%cfg);
my $getopt = AppConfig::Getopt->new($state);

$getopt->parse(\@args);            # read args

πŸ¦‹ OVERVIEW πŸ¦‹

AppConfig::Getopt is a Perl5 module that delegates to Johan Vroman’s Getopt::Long module to parse command line arguments and update values in an AppConfig::State object accordingly. it’s the middle bestie making sure everyone gets the right info πŸ’«

AppConfig::Getopt is distributed as part of the AppConfig bundle.

✨ DESCRIPTION ✨

πŸ’… USING THE AppConfig::Getopt MODULE πŸ’…

to import and use the AppConfig::Getopt module, this line should appear in your Perl script:

use AppConfig::Getopt;

AppConfig::Getopt is used automatically if you use the AppConfig module and create an AppConfig::Getopt object through the getopt() method. iconic behavior, honestly πŸ‘‘

AppConfig::Getopt is implemented using object-oriented methods. a new AppConfig::Getopt object is created and initialised using the new() method. this returns a reference to a new AppConfig::Getopt object. a reference to an AppConfig::State object should be passed in as the first parameter:

my $state  = AppConfig::State->new();
my $getopt = AppConfig::Getopt->new($state);

this will create and return a reference to a new AppConfig::Getopt object. slay πŸ’…

πŸŽ€ PARSING COMMAND LINE ARGUMENTS πŸŽ€

the parse() method is used to read a list of command line arguments and update the state accordingly. it’s the whole moment, fr fr 🌟

the first (non-list reference) parameters may contain a number of configuration strings to pass to Getopt::Long::Configure. a reference to a list of arguments may additionally be passed or @ARGV is used by default.

$getopt->parse();                       # uses @ARGV
$getopt->parse(\@myargs);
$getopt->parse(qw(auto_abbrev debug));  # uses @ARGV
$getopt->parse(qw(debug), \@myargs);

see Getopt::Long for details of the configuration options available 🧚

a Getopt::Long specification string is constructed for each variable defined in the AppConfig::State. this consists of the name, any aliases and the ARGS value for the variable. it’s giving very customized, very thoughtful πŸ’œ

these specification strings are then passed to Getopt::Long, the arguments are parsed and the values in the AppConfig::State updated.

see AppConfig for information about using the AppConfig::Getopt module via the getopt() method.


πŸ‘‘ AUTHOR πŸ‘‘

Andy Wardley, <abw@wardley.org> β€” icon, legend, the moment πŸ’–

Copyright (C) 1997-2007 Andy Wardley. All Rights Reserved.

Copyright (C) 1997,1998 Canon Research Centre Europe Ltd.

this module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. periodt πŸ’…

🌈 ACKNOWLEDGMENTS 🌈

many thanks are due to Johan Vromans for the Getopt::Long module. he was kind enough to offer assistance and access to early releases of his code to enable this module to be written. absolute king behavior 🫢✨

πŸ“ SEE ALSO πŸ“

  • AppConfig
  • AppConfig::State
  • AppConfig::Args
  • Getopt::Long

okay bestie, that’s the page β€” signing off from AppConfig::Getopt(3) with perl v5.42.0, dated 2015-04-14 πŸ’– go parse those args and slay, iykyk 🌸

πŸ“¦ where this page comes from