logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

CSAF::Util::Options - Options utility for CSAF

Author

       •   Giuseppe Di Terlizzi <gdt@cpan.org>

Description

       CSAF::Util::Options is Moo role and utility for CSAF.

   ATTRIBUTES
       config_file
           Load config from YAML file.

   METHODS
       configure
           Configure an item.

               $options->configure(
                   foo => 'foo',
                   bar => 'bar',
                   baz => 'baz'
               );

Name

       CSAF::Util::Options - Options utility for CSAF

Support

Bugs/FeatureRequests
       Please     report    any    bugs    or    feature    requests    through    the    issue    tracker    at
       <https://github.com/giterlizzi/perl-CSAF/issues>.  You will be notified automatically of any progress  on
       your issue.

   SourceCode
       This  is open source software.  The code repository is available for public review and contribution under
       the terms of the license.

       <https://github.com/giterlizzi/perl-CSAF>

           git clone https://github.com/giterlizzi/perl-CSAF.git

Synopsis

           package My::CSAF::Options {

               use Moo;
               with 'CSAF::Util::Options';

               has enable_foo => (is => 'rw', required => 1);
               has make_bar => (is => 'rw');

           }

           package My::CSAF {

               use Moo;
               use My::CSAF::Options;

               has options => (is => 'lazy', build => 1);

               sub _build_options { My::CSAF::Options->new }

               sub my_job {

                   my $self = shift;

                   $self->options->configure(make_bar => $bar);

                   if ($self->options->enable_foo) {
                       [...]
                   }
               }

           }

See Also