UCommon
Data Structures | Public Types | Public Member Functions | Friends
ucc::keydata Class Reference

Data keys parsed from a keyfile. More...

#include <keydata.h>

Inheritance diagram for ucc::keydata:
Inheritance graph
[legend]
Collaboration diagram for ucc::keydata:
Collaboration graph
[legend]

Data Structures

class  keyvalue
 A key value set is used for iterative access. More...

Public Types

typedef linked_pointer< keyvalueiterator
 Convenience typedef for iterative pointer.

Public Member Functions

keyvaluebegin (void) const
 Get first value object, for iterative examinations.
void clear (const char *id)
 Remove a keyword id from the keydata structure.
keyvalueend (void) const
 Get last value object, for iterative examinations.
const char * get (void) const
 Get the name of this section.
const char * get (const char *id) const
 Lookup a key value by it's id.
const char * operator() (const char *id) const
 Lookup a key value by it's id.
void set (const char *id, const char *value)
 Set a keyword and value in the keydata structure.

Friends

class keyfile
class keyvalue

Detailed Description

Data keys parsed from a keyfile.

This is a specific [] section from a fully loaded keyfile, and offers common means to access data members. This is related to the original GNU Common C++ keydata object, although it is formed in a keyfile class which is loaded from a config file all at once.

Author:
David Sugar <dyfet@gnutelephony.org>

Definition at line 57 of file keydata.h.


Member Function Documentation

keyvalue* ucc::keydata::begin ( void  ) const [inline]

Get first value object, for iterative examinations.

Returns:
first key value in chain.

Definition at line 128 of file keydata.h.

void ucc::keydata::clear ( const char *  id)

Remove a keyword id from the keydata structure.

Removed items still use pager allocated memory.

Parameters:
idto remove.
keyvalue* ucc::keydata::end ( void  ) const [inline]

Get last value object, for iterative examinations.

Returns:
first key value in chain.

Definition at line 135 of file keydata.h.

const char* ucc::keydata::get ( void  ) const [inline]

Get the name of this section.

Useful in iterative examinations.

Returns:
name of keydata section.

Definition at line 121 of file keydata.h.

const char* ucc::keydata::get ( const char *  id) const

Lookup a key value by it's id.

Parameters:
idto look for.
Returns:
value string or NULL if not found.
const char* ucc::keydata::operator() ( const char *  id) const [inline]

Lookup a key value by it's id.

Parameters:
idto look for.
Returns:
value string or NULL if not found.

Definition at line 98 of file keydata.h.

void ucc::keydata::set ( const char *  id,
const char *  value 
)

Set a keyword and value in the keydata structure.

If the keyword already exists, it is replaced. Removed items still use pager allocated memory.

Parameters:
idto set.
valuefor the id.

The documentation for this class was generated from the following file: