.\" Automatically generated by Pod::Man 4.07 (Pod::Simple 3.32) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .if !\nF .nr F 0 .if \nF>0 \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "Config::Model::models::Itself::Element 3pm" .TH Config::Model::models::Itself::Element 3pm "2017-06-12" "perl v5.24.1" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" Config::Model::models::Itself::Element \- Configuration class Itself::Element .SH "DESCRIPTION" .IX Header "DESCRIPTION" Configuration classes used by Config::Model .SH "Elements" .IX Header "Elements" .SS "type" .IX Subsection "type" specify the type of the configuration element.Leaf is used for plain value. \fI Mandatory. Type enum. choice: 'node', 'warped_node', 'hash', 'list', 'leaf', 'check_list'. \fR .SS "value_type" .IX Subsection "value_type" \&\fI Optional. Type enum. choice: 'boolean', 'enum', 'integer', 'reference', 'number', 'uniline', 'string', 'file', 'dir'. \fR .PP Here are some explanations on the possible values: .IP "'integer'" 4 .IX Item "'integer'" positive or negative integer .IP "'uniline'" 4 .IX Item "'uniline'" string with no embedded newline .SS "class \- Override implementation of element" .IX Subsection "class - Override implementation of element" Perl class name used to override the implementation of the configuration element. This override Perl class must inherit a Config::Model class that matches the element type, i.e. Config::Model::Value, Config::Model::HashId or Config::Model::ListId. Use with care. \fI Optional. Type uniline. \fR .SS "morph" .IX Subsection "morph" When set, a recurse copy of the value from the old object to the new object is attemped. Old values are dropped when a copy is not possible (usually because of mismatching types) \fI Optional. Type boolean. \fR .SS "refer_to" .IX Subsection "refer_to" points to an array or hash element in the configuration tree using the path syntax. The available choice of this reference value (or check list)is made from the available keys of the pointed hash element or the values of the pointed array element. \fI Optional. Type uniline. \fR .SS "computed_refer_to" .IX Subsection "computed_refer_to" points to an array or hash element in the configuration tree using a path computed with value from several other elements in the configuration tree. The available choice of this reference value (or check list) is made from the available keys of the pointed hash element or the values of the pointed array element. The keys of several hashes (or lists) can be combined by using the '+' operator in the formula. For instance, '! host: lan + ! host:foobar lan'. See Config::Model::IdElementReference for more details. \fI Optional. Type warped_node. \fR .SS "replace_follow" .IX Subsection "replace_follow" Path specifying a hash of value element in the configuration tree. The hash if used in a way similar to the replace parameter. In this case, the replacement is not coded in the model but specified by the configuration. \fI Optional. Type uniline. \fR .SS "compute" .IX Subsection "compute" compute the default value according to a formula and value from other elements in the configuration tree. \fI Optional. Type warped_node. \fR .SS "migrate_from" .IX Subsection "migrate_from" Specify an upgrade path from an old value and compute the value to store in the new element. \fI Optional. Type warped_node. \fR .SS "write_as" .IX Subsection "write_as" Specify how to write a boolean value. Example 'no' 'yes'. \fI Optional. Type list of uniline. \fR .SS "migrate_values_from" .IX Subsection "migrate_values_from" Specifies that the values of the hash or list are copied from another hash or list in the configuration tree once configuration data are loaded. \fI Optional. Type uniline. \fR .SS "migrate_keys_from" .IX Subsection "migrate_keys_from" Specifies that the keys of the hash are copied from another hash in the configuration tree only when the hash is created. \fI Optional. Type uniline. \fR .SS "write_empty_value" .IX Subsection "write_empty_value" By default, hash entries without data are not saved in configuration files. Set this parameter to 1 if a key must be saved in the configuration file even if the hash contains no value for that key. \fI Optional. Type boolean. \fR .IP "upstream_default value :" 4 .IX Item "upstream_default value :" 0 .SS "mandatory" .IX Subsection "mandatory" \&\fI Optional. Type boolean. \fR .SS "config_class_name" .IX Subsection "config_class_name" \&\fI Optional. Type reference. \fR .SS "choice" .IX Subsection "choice" Specify the possible values of an enum. This can also be used in a reference element so the possible enum value will be the combination of the specified choice and the refered to values. \fI Optional. Type list of uniline. \fR .SS "min" .IX Subsection "min" minimum value. \fI Optional. Type number. \fR .SS "max" .IX Subsection "max" maximum value. \fI Optional. Type number. \fR .SS "min_index" .IX Subsection "min_index" minimum number of keys. \fI Optional. Type integer. \fR .SS "max_index" .IX Subsection "max_index" maximum number of keys. \fI Optional. Type integer. \fR .SS "default" .IX Subsection "default" Specify default value. This default value is written in the configuration data. \fI Optional. Type string. \fR .SS "upstream_default" .IX Subsection "upstream_default" Another way to specify a default value. But this default value is considered as \*(L"built_in\*(R" the application and is not written in the configuration data (unless modified) \fI Optional. Type string. \fR .SS "convert" .IX Subsection "convert" Convert value or index to uppercase (uc) or lowercase (lc). \fI Optional. Type enum. \fR .SS "match" .IX Subsection "match" Perl regular expression to assert the validity of the value. To check the whole value, use \f(CW\*(C`^\*(C'\fR and \f(CW\*(C`$\*(C'\fR. For instance \f(CW\*(C`^foo|bar$\*(C'\fR allows \f(CW\*(C`foo\*(C'\fR or \f(CW\*(C`bar\*(C'\fR but not \f(CW\*(C`foobar\*(C'\fR. To be case insentive, use the \f(CW\*(C`(?i)\*(C'\fR extended pattern. For instance, the regexp \f(CW\*(C`^(?i)foo|bar$\*(C'\fR also allows the values \f(CW\*(C`Foo\*(C'\fR and \f(CW\*(C`Bar\*(C'\fR. \fI Optional. Type uniline. \fR .SS "assert" .IX Subsection "assert" Raise an error if the test code snippet does returns false. Note this snippet is also run on undefined value, which may not be what you want. \fI Optional. Type hash of node of class Itself::CommonElement::Assert . \fR .SS "warn_if" .IX Subsection "warn_if" Warn user if the code snippet returns true. \fI Optional. Type hash of node of class Itself::CommonElement::Assert . \fR .SS "warn_unless" .IX Subsection "warn_unless" Warn user if the code snippet returns false. \fI Optional. Type hash of node of class Itself::CommonElement::Assert . \fR .SS "warn_if_match" .IX Subsection "warn_if_match" Warn user if a \fIdefined\fR value matches the regular expression. \fI Optional. Type hash of node of class Itself::CommonElement::WarnIfMatch . \fR .SS "warn_unless_match" .IX Subsection "warn_unless_match" Warn user if \fIdefined\fR value does not match the regular expression. \fI Optional. Type hash of node of class Itself::CommonElement::WarnIfMatch . \fR .SS "warn" .IX Subsection "warn" Unconditionally issue a warning with this string when this parameter is used. This should be used mostly with \*(L"accept\*(R" \fI Optional. Type string. \fR .SS "grammar" .IX Subsection "grammar" Feed this grammar to Parse::RecDescent to perform validation. \fI Optional. Type string. \fR .SS "default_list" .IX Subsection "default_list" Specify items checked by default. \fI Optional. Type check_list. \fR .SS "upstream_default_list" .IX Subsection "upstream_default_list" Specify items checked by default in the application. \fI Optional. Type check_list. \fR .SS "allow_keys_from" .IX Subsection "allow_keys_from" this hash allows keys from the keys of the hash pointed by the path string. \fI Optional. Type uniline. \fR .SS "allow_keys_matching" .IX Subsection "allow_keys_matching" Keys must match the specified regular expression. \fI Optional. Type uniline. \fR .SS "follow_keys_from" .IX Subsection "follow_keys_from" this hash contains the same keys as the hash pointed by the path string. \fI Optional. Type uniline. \fR .SS "warn_if_key_match" .IX Subsection "warn_if_key_match" Warn user if a key is created matching this regular expression. \fI Optional. Type uniline. \fR .SS "warn_unless_key_match" .IX Subsection "warn_unless_key_match" Warn user if a key is created not matching this regular expression. \fI Optional. Type uniline. \fR .SS "ordered" .IX Subsection "ordered" keep track of the order of the elements of this hash. \fI Optional. Type boolean. \fR .SS "default_keys" .IX Subsection "default_keys" default keys hashes. \fI Optional. Type list of string. \fR .SS "auto_create_keys" .IX Subsection "auto_create_keys" always create a set of keys specified in this list. \fI Optional. Type list of string. \fR .SS "allow_keys" .IX Subsection "allow_keys" specify a set of allowed keys. \fI Optional. Type list of string. \fR .SS "auto_create_ids" .IX Subsection "auto_create_ids" always create the number of id specified in this integer. \fI Optional. Type string. \fR .SS "default_with_init" .IX Subsection "default_with_init" specify a set of keys to create and initialization on some elements . E.g. ' foo => \*(L"X=Av Y=Bv\*(R", bar => \*(L"Y=Av Z=Cz\*(R"' \fI Optional. Type hash of string. \fR .SS "max_nb" .IX Subsection "max_nb" \&\fI Optional. Type integer. \fR .SS "replace" .IX Subsection "replace" Used for enum to substitute one value with another. This parameter must be used to enable user to upgrade a configuration with obsolete values. The old value is the key of the hash, the new one is the value of the hash. \fI Optional. Type hash of string. \fR .SS "duplicates" .IX Subsection "duplicates" Specify the policy regarding duplicated values stored in the list or as hash values (valid only when cargo type is \*(L"leaf\*(R"). The policy can be \*(L"allow\*(R" (default), \*(L"suppress\*(R", \*(L"warn\*(R" (which offers the possibility to apply a fix), \*(L"forbid\*(R". \fI Optional. Type enum. choice: 'allow', 'suppress', 'warn', 'forbid'. \fR .IP "upstream_default value :" 4 .IX Item "upstream_default value :" allow .SS "help" .IX Subsection "help" Specify help string specific to possible values. E.g for \*(L"light\*(R" value, you could write " red => 'stop', green => 'walk' \fI Optional. Type hash of string. \fR .SS "status" .IX Subsection "status" \&\fI Optional. Type enum. choice: 'obsolete', 'deprecated', 'standard'. \fR .IP "upstream_default value :" 4 .IX Item "upstream_default value :" standard .SS "level" .IX Subsection "level" Used to highlight important parameter or to hide others. Hidden parameter are mostly used to hide features that are unavailable at start time. They can be made available later using warp mechanism. \fI Optional. Type enum. choice: 'important', 'normal', 'hidden'. \fR .IP "upstream_default value :" 4 .IX Item "upstream_default value :" normal .SS "summary" .IX Subsection "summary" enter short information regarding this element. \fI Optional. Type uniline. \fR .SS "description" .IX Subsection "description" enter detailed help information regarding this element. \fI Optional. Type string. \fR .SS "warp" .IX Subsection "warp" change the properties (i.e. default value or its value_type) dynamically according to the value of another Value object located elsewhere in the configuration tree. \fI Optional. Type warped_node of class Itself::WarpValue . \fR .SS "index_type" .IX Subsection "index_type" Specify the type of allowed index for the hash. \*(L"String\*(R" means no restriction. \fI Optional. Type enum. \fR .SS "cargo" .IX Subsection "cargo" Specify the properties of the configuration element configuration in this hash or list. \fI Optional. Type warped_node. \fR .SH "SEE ALSO" .IX Header "SEE ALSO" .IP "\(bu" 4 cme .IP "\(bu" 4 Config::Model::models::Itself::CommonElement::Assert .IP "\(bu" 4 Config::Model::models::Itself::CommonElement::WarnIfMatch .IP "\(bu" 4 Config::Model::models::Itself::WarpValue