Key helper functions.
More...
|
| kdb |
| This is the main namespace for the C++ binding and libraries.
|
|
| kdb::tools |
| This namespace is for the libtool library.
|
|
Key helper functions.
- Copyright
- BSD License (see LICENSE.md or https://www.libelektra.org)
◆ commonKeyName()
Key kdb::tools::helper::commonKeyName |
( |
Key |
key1, |
|
|
Key |
key2 |
|
) |
| |
Find common name between two keys.
- Returns
- the longest common name found
◆ copyAllMeta()
void kdb::tools::helper::copyAllMeta |
( |
KeySet & |
to, |
|
|
KeySet const & |
from |
|
) |
| |
Copies all metadata of each key in from to their pendant in to.
The pendant is determined by ksLookup.
- Parameters
-
to | metadata is copied to keys in this key set |
from | metadata is copied from keys in this key set |
◆ prependNamespace() [1/2]
Key kdb::tools::helper::prependNamespace |
( |
Key const & |
root, |
|
|
std::string const & |
ns |
|
) |
| |
Prepends the namespace to the key.
- Parameters
-
root | is the key where the namespace will be prepended |
ns | is the namespace to be prepended |
- Returns
- a duplicate of root with the new namespace
◆ prependNamespace() [2/2]
KeySet kdb::tools::helper::prependNamespace |
( |
KeySet const & |
resultKeys, |
|
|
std::string const & |
ns |
|
) |
| |
Prepends the namespace to each key of the key set.
- Parameters
-
resultKeys | which keys to prepend the namepsace to |
ns | is the namespace to be prepended to each key |
- Returns
- a keyset where each key has the new namespace
◆ rebaseKey()
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 |
◆ rebasePath()
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 |
◆ removeNamespace()
void kdb::tools::helper::removeNamespace |
( |
Key & |
key | ) |
|
Removes the namespace.
- Parameters
-
key | will be made to a cascading key |