Provided by: libconfig-model-perl_2.152-1_all bug

NAME

       Config::Model::Describe - Provide a description of a node element

VERSION

       version 2.152

SYNOPSIS

        use Config::Model;

        # define configuration tree object
        my $model = Config::Model->new;
         $model->create_config_class(
           name    => "Foo",
           element => [
               [qw/foo bar/] => {
                   type       => 'leaf',
                   value_type => 'string'
               },
           ]
        );
        $model ->create_config_class (
           name => "MyClass",

           element => [

               [qw/foo bar/] => {
                   type       => 'leaf',
                   value_type => 'string'
               },
               hash_of_nodes => {
                   type       => 'hash',     # hash id
                   index_type => 'string',
                   cargo      => {
                       type              => 'node',
                       config_class_name => 'Foo'
                   },
               },
           ],
        ) ;

        my $inst = $model->instance(root_class_name => 'MyClass' );

        my $root = $inst->config_root ;

        # put data
        my $steps = 'foo=FOO hash_of_nodes:fr foo=bonjour -
          hash_of_nodes:en foo=hello ';
        $root->load( steps => $steps );

        print $root->describe ;

        ### prints
        # name          type       value          comment
        # foo           string     FOO
        # bar           string     [undef]
        # hash_of_nodes node hash  <Foo>          keys: "en" "fr"

DESCRIPTION

       This module is used directly by Config::Model::Node to describe a node element. This
       module returns a human readable string that shows the content of a configuration node.

       For instance (as shown by "fstab" example:

        name         type         value        comment
        fs_spec      string       [undef]      mandatory
        fs_vfstype   enum         [undef]      choice: auto davfs ext2 ext3 swap proc iso9660 vfat ignore, mandatory
        fs_file      string       [undef]      mandatory
        fs_freq      boolean      0
        fs_passno    integer      0

       This module is also used by the "ll" command of Config::Model::TermUI.

CONSTRUCTOR

   new
       No parameter. The constructor should be used only by Config::Model::Node.

Methods

   describe
       Return a description string.

       Parameters are:

       node
           Reference to a Config::Model::Node object. Mandatory

       element
           Describe only this element from the node. Optional. All elements are described if
           omitted.

       pattern
           Describe the element matching the regexp ref. Example:

            describe => ( pattern => qr/^foo/ )

       hide_empty
           Boolean. Whether to hide empty value (i.e. "undef" or '') or not. Default is false.

       verbose
           Boolean. Display more information with each element. Default is false.

AUTHOR

       Dominique Dumont, (ddumont at cpan dot org)

SEE ALSO

       Config::Model,Config::Model::Node,Config::Model::ObjTreeScanner

AUTHOR

       Dominique Dumont

COPYRIGHT AND LICENSE

       This software is Copyright (c) 2005-2022 by Dominique Dumont.

       This is free software, licensed under:

         The GNU Lesser General Public License, Version 2.1, February 1999