NAME
   MooseX::SimpleConfig - A Moose role for setting attributes from a simple
   configfile

SYNOPSIS
     ## A YAML configfile named /etc/my_app.yaml:
     foo: bar
     baz: 123

     ## In your class
     package My::App;
     use Moose;

 with 'MooseX::SimpleConfig';

 has 'foo' => (is => 'ro', isa => 'Str', required => 1);
     has 'baz'  => (is => 'rw', isa => 'Int', required => 1);

 # ... rest of the class here

 ## in your script
     #!/usr/bin/perl

 use My::App;

 my $app = My::App->new_with_config(configfile => '/etc/my_app.yaml');
     # ... rest of the script here

     ####################
     ###### combined with MooseX::Getopt:

     ## In your class
     package My::App;
     use Moose;

 with 'MooseX::SimpleConfig';
     with 'MooseX::Getopt';

 has 'foo' => (is => 'ro', isa => 'Str', required => 1);
     has 'baz'  => (is => 'rw', isa => 'Int', required => 1);

 # ... rest of the class here

 ## in your script
     #!/usr/bin/perl

 use My::App;

 my $app = My::App->new_with_options();
     # ... rest of the script here

     ## on the command line
     % perl my_app_script.pl -configfile /etc/my_app.yaml -otherthing 123

DESCRIPTION
   This role loads simple configfiles to set object attributes. It is based
   on the abstract role MooseX::ConfigFromFile, and uses Config::Any to
   load your configfile. Config::Any will in turn support any of a variety
   of different config formats, detected by the file extension. See
   Config::Any for more details about supported formats.

   Like all MooseX::ConfigFromFile -derived configfile loaders, this module
   is automatically supported by the MooseX::Getopt role as well, which
   allows specifying "-configfile" on the commandline.

ATTRIBUTES
 configfile
   Provided by the base role MooseX::ConfigFromFile.

CLASS METHODS
 new_with_config
   Provided by the base role MooseX::ConfigFromFile. Acts just like regular
   "new()", but also accepts an argument "configfile" to specify the
   configfile from which to load other attributes. Explicit arguments to
   "new_with_config" will override anything loaded from the configfile.

 get_config_from_file
   Called internally by either "new_with_config" or MooseX::Getopt's
   "new_with_options". Invokes Config::Any to parse "configfile".

AUTHOR
   Brandon L. Black, <[email protected]>

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