1Config::Model::DescribeU(s3eprm)Contributed Perl DocumenCtoantfiiogn::Model::Describe(3pm)
2
3
4
6 Config::Model::Describe - Provide a description of a node element
7
9 version 2.153
10
12 use Config::Model;
13
14 # define configuration tree object
15 my $model = Config::Model->new;
16 $model->create_config_class(
17 name => "Foo",
18 element => [
19 [qw/foo bar/] => {
20 type => 'leaf',
21 value_type => 'string'
22 },
23 ]
24 );
25 $model ->create_config_class (
26 name => "MyClass",
27
28 element => [
29
30 [qw/foo bar/] => {
31 type => 'leaf',
32 value_type => 'string'
33 },
34 hash_of_nodes => {
35 type => 'hash', # hash id
36 index_type => 'string',
37 cargo => {
38 type => 'node',
39 config_class_name => 'Foo'
40 },
41 },
42 ],
43 ) ;
44
45 my $inst = $model->instance(root_class_name => 'MyClass' );
46
47 my $root = $inst->config_root ;
48
49 # put data
50 my $steps = 'foo=FOO hash_of_nodes:fr foo=bonjour -
51 hash_of_nodes:en foo=hello ';
52 $root->load( steps => $steps );
53
54 print $root->describe ;
55
56 ### prints
57 # name type value comment
58 # foo string FOO
59 # bar string [undef]
60 # hash_of_nodes node hash <Foo> keys: "en" "fr"
61
63 This module is used directly by Config::Model::Node to describe a node
64 element. This module returns a human readable string that shows the
65 content of a configuration node.
66
67 For instance (as shown by "fstab" example:
68
69 name type value comment
70 fs_spec string [undef] mandatory
71 fs_vfstype enum [undef] choice: auto davfs ext2 ext3 swap proc iso9660 vfat ignore, mandatory
72 fs_file string [undef] mandatory
73 fs_freq boolean 0
74 fs_passno integer 0
75
76 This module is also used by the "ll" command of Config::Model::TermUI.
77
79 new
80 No parameter. The constructor should be used only by
81 Config::Model::Node.
82
84 describe
85 Return a description string.
86
87 Parameters are:
88
89 node
90 Reference to a Config::Model::Node object. Mandatory
91
92 element
93 Describe only this element from the node. Optional. All elements
94 are described if omitted.
95
96 pattern
97 Describe the element matching the regexp ref. Example:
98
99 describe => ( pattern => qr/^foo/ )
100
101 hide_empty
102 Boolean. Whether to hide empty value (i.e. "undef" or '') or not.
103 Default is false.
104
105 verbose
106 Boolean. Display more information with each element. Default is
107 false.
108
110 Dominique Dumont, (ddumont at cpan dot org)
111
113 Config::Model,Config::Model::Node,Config::Model::ObjTreeScanner
114
116 Dominique Dumont
117
119 This software is Copyright (c) 2005-2022 by Dominique Dumont.
120
121 This is free software, licensed under:
122
123 The GNU Lesser General Public License, Version 2.1, February 1999
124
125
126
127perl v5.38.0 2023-07-25 Config::Model::Describe(3pm)