.TH "keyhelper.hpp" 3elektra "Sun May 29 2016" "Version 0.8.14" "Elektra" \" -*- nroff -*-
.ad l
.nh
.SH NAME
keyhelper.hpp \- Key helper functions\&.  

.SH SYNOPSIS
.br
.PP
\fC#include <string>\fP
.br
\fC#include <kdb\&.hpp>\fP
.br
\fC#include <toolexcept\&.hpp>\fP
.br

.SS "Namespaces"

.in +1c
.ti -1c
.RI " \fBkdb\fP"
.br
.RI "\fIThis is the main namespace for the C++ binding and libraries\&. \fP"
.ti -1c
.RI " \fBkdb::tools\fP"
.br
.RI "\fIThis namespace is for the libtool library\&. \fP"
.in -1c
.SS "Functions"

.in +1c
.ti -1c
.RI "Key \fBkdb::tools::helper::rebaseKey\fP (const Key &key, const Key &oldParent, const Key &newParent)"
.br
.RI "\fIRebases the supplied key from the old parent to the new parent\&. \fP"
.ti -1c
.RI "std::string \fBkdb::tools::helper::rebasePath\fP (const Key &key, const Key &oldParent, const Key &newParent)"
.br
.RI "\fIRebases the relative path of the passed key from the old parent to the new parent and returns the new path\&. \fP"
.in -1c
.SH "Detailed Description"
.PP 
Key helper functions\&. 


.PP
\fBCopyright:\fP
.RS 4
BSD License (see doc/COPYING or http://www.libelektra.org) 
.RE
.PP

.SH "Function Documentation"
.PP 
.SS "Key kdb::tools::helper::rebaseKey (const \fBKey\fP & key, const \fBKey\fP & oldParent, const \fBKey\fP & newParent)"

.PP
Rebases the supplied key from the old parent to the new parent\&. 
.PP
\fBSee also:\fP
.RS 4
ThreeWayMerge::rebasePath 
.RE
.PP
\fBParameters:\fP
.RS 4
\fIkey\fP the key to be rebased 
.br
\fIoldParent\fP the old parent of the key 
.br
\fInewParent\fP the new parent of the key 
.RE
.PP
\fBReturns:\fP
.RS 4
a rebased copy of the supplied key 
.RE
.PP
\fBExceptions:\fP
.RS 4
\fIInvalidRebaseException\fP if the key is not below the old parent 
.RE
.PP

.SS "string kdb::tools::helper::rebasePath (const \fBKey\fP & key, const \fBKey\fP & oldParent, const \fBKey\fP & newParent)"

.PP
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
.PP
If any of the parent keys is a cascading key the namespace of the key to be rebased is assumed instead\&.
.PP
\fBParameters:\fP
.RS 4
\fIkey\fP the key whose path should be rebased 
.br
\fIoldParent\fP the old parent of the key 
.br
\fInewParent\fP the new parent of the key 
.RE
.PP
\fBReturns:\fP
.RS 4
the rebased path 
.RE
.PP
\fBExceptions:\fP
.RS 4
\fIInvalidRebaseException\fP if the key is not below the old parent 
.RE
.PP

.SH "Author"
.PP 
Generated automatically by Doxygen for Elektra from the source code\&.
