keyhelper.hpp(3) Key helper functions.

SYNOPSIS


#include <string>
#include <kdb.hpp>
#include <toolexcept.hpp>

Namespaces


kdb
This is the main namespace for the C++ binding and libraries.
kdb::tools
This namespace is for the libtool library.

Functions


Key kdb::tools::helper::rebaseKey (const Key &key, const Key &oldParent, const Key &newParent)
Rebases the supplied key from the old parent to the new parent.
std::string kdb::tools::helper::rebasePath (const Key &key, const Key &oldParent, const Key &newParent)
Rebases the relative path of the passed key from the old parent to the new parent and returns the new path.

Detailed Description

Key helper functions.

Copyright:

BSD License (see doc/COPYING or http://www.libelektra.org)

Function Documentation

Key kdb::tools::helper::rebaseKey (const Key & key, const Key & oldParent, const Key & newParent)

Rebases the supplied key from the old parent to the new parent.

See also:

ThreeWayMerge::rebasePath

Parameters:

key the key to be rebased
oldParent the old parent of the key
newParent the new parent of the key

Returns:

a rebased copy of the supplied key

Exceptions:

InvalidRebaseException if the key is not below the old parent

string kdb::tools::helper::rebasePath (const Key & key, const Key & oldParent, const Key & newParent)

Rebases the relative path of the passed key from the old parent to the new parent and returns the new path. For example a key /user/example/config/key1 with the oldparent /user/example and the new parent /user/newexample/newpath would result in /user/newexample/newpath/config/key1

If any of the parent keys is a cascading key the namespace of the key to be rebased is assumed instead.

Parameters:

key the key whose path should be rebased
oldParent the old parent of the key
newParent the new parent of the key

Returns:

the rebased path

Exceptions:

InvalidRebaseException if the key is not below the old parent

Author

Generated automatically by Doxygen for Elektra from the source code.