Config::Model::ListId(3pm)

NAME
Config::Model::ListId - Handle list element for configuration model

SYNOPSIS
 $model ->create_config_class
  (
   ...
   element
   => [
       bounded_list
       => { type => 'list',
            max_index => 123,
            max_nb => 2 ,
            cargo_type => 'leaf',
            cargo_args => {value_type => 'string'},
          },
      ]
  ) ;

DESCRIPTION
This class provides list elements for a Config::Model::Node.

CONSTRUCTOR
ListId object should not be created directly.

List model declaration
See model declaration section from Config::Model::AnyId.

Methods

  get_type
Returns "list".

  fetch_size
Returns the nb of elements of the list.

  load(string, [ check => 'no' ] )
Store a set of values passed as a comma separated list of values. Values can be quoted strings. (i.e ""a,a",b" will yield "('a,a', 'b')" list).

"check" can be yes, no or skip

  store_set( ... )
Store a set of values (passed as list)

If tinkering with check is required, use the following way :

 store_set ( \@v , check => 'skip' );

  move ( from_index, to_index, [ check => 'no' )
Move an element within the list. "check" can be 'yes' 'no' 'skip'

  push( value )
push some value at the end of the list.

  swap ( ida, idb )
Swap 2 elements within the array

  remove ( idx )
Remove an element from the list. Equivalent to "splice @list,$idx,1"

  load_data ( array_ref | data )
Clear and load list from data contained in the array ref. If a scalar or a hash ref is passed, the list is cleared and the data is stored in the first element of the list.

AUTHOR
Dominique Dumont, (ddumont at cpan dot org)

SEE ALSO
Config::Model::Model, Config::Model::Instance, Config::Model::AnyId, Config::Model::HashId, Config::Model::Value