#include <VariableResolver.h>
Public Member Functions | |
| TVariableResolver () | |
| virtual void MQUALIFIER | clearVariables () |
| virtual void MQUALIFIER | addVariable (const IString &rName, const IString &rValue) |
| virtual void MQUALIFIER | removeVariable (const IString &rName) |
| virtual Retval MQUALIFIER | resolve (const IString &rData, IString &rOut, bool bRecursive) |
| virtual Retval MQUALIFIER | askForInterface (const InterfaceID &rInterfaceID, IZUnknown *&rpIface) |
| virtual void MQUALIFIER | addRef () const |
| virtual void MQUALIFIER | release () const |
| void | addVariables (const TStringMap< TString > &rVariables) |
| void | addVariable (const TString &rName, const TString &rValue) |
| void | removeVariables (const TStringMap< TString > &rVariables) |
| void | removeVariables (const TSet< TString > &rVariables) |
| void | removeVariable (const TString &rName) |
| Retval | resolve (const TString &rData, IString &rOut, bool bRecursive) |
| void | resolveDependancies (const IString &rData, TSet< TString > &rDependancies, bool bRecusrive=false) |
| void | resolveDependancies (const TString &rData, TSet< TString > &rDependancies, bool bRecusrive=false) |
Protected Member Functions | |
| virtual | ~TVariableResolver () |
| virtual Retval | resolveVariable (const TString &rName, TString &rValue) |
| virtual Retval | resolve_internal (const IString &rData, IString &rOut, bool bRecursive, TSet< TString > &rReplacedVars) |
This class is used to resolve variable notations inside a string. A variable notation must have the syntax of . This class must be inherited by concrete variable solvers searching and resolving the variables in a defined domain.
| TVariableResolver::TVariableResolver | ( | ) |
creates an abstract variable resolver
| TVariableResolver::~TVariableResolver | ( | ) | [protected, virtual] |
destroys the abstract variable resolver
| virtual void MQUALIFIER zeus::TVariableResolver::addRef | ( | ) | const [virtual] |
Reimplemented from zeus::TZObject.
| void zeus::TVariableResolver::addVariable | ( | const TString & | rName, |
| const TString & | rValue | ||
| ) | [inline] |
adds a new variable or overwrites an existing variable
| void MQUALIFIER zeus::TVariableResolver::addVariable | ( | const IString & | rName, |
| const IString & | rValue | ||
| ) | [inline, virtual] |
Implements zeus::IVariableResolver.
| void TVariableResolver::addVariables | ( | const TStringMap< TString > & | rVariables ) |
Adds all variables of a variable map
| virtual Retval MQUALIFIER zeus::TVariableResolver::askForInterface | ( | const InterfaceID & | rInterfaceID, |
| IZUnknown *& | rpIface | ||
| ) | [virtual] |
Reimplemented from zeus::TZObject.
| void MQUALIFIER zeus::TVariableResolver::clearVariables | ( | ) | [inline, virtual] |
Implements zeus::IVariableResolver.
| virtual void MQUALIFIER zeus::TVariableResolver::release | ( | ) | const [virtual] |
Reimplemented from zeus::TZObject.
| void zeus::TVariableResolver::removeVariable | ( | const TString & | rName ) | [inline] |
removes a variable
| void MQUALIFIER zeus::TVariableResolver::removeVariable | ( | const IString & | rName ) | [inline, virtual] |
Implements zeus::IVariableResolver.
| void TVariableResolver::removeVariables | ( | const TStringMap< TString > & | rVariables ) |
Removes all variables of a variable map
Removes all variables of a variable set
| Retval MQUALIFIER zeus::TVariableResolver::resolve | ( | const IString & | rData, |
| IString & | rOut, | ||
| bool | bRecursive | ||
| ) | [inline, virtual] |
Implements zeus::IVariableResolver.
| Retval zeus::TVariableResolver::resolve | ( | const TString & | rData, |
| IString & | rOut, | ||
| bool | bRecursive | ||
| ) | [inline] |
Resolves all variables of a string
| Retval TVariableResolver::resolve_internal | ( | const IString & | rData, |
| IString & | rOut, | ||
| bool | bRecursive, | ||
| TSet< TString > & | rReplacedVars | ||
| ) | [protected, virtual] |
Checks if the string contains variables and tries to resolve them
mapVars.hasItem(strVarName)
strVarName.isEmpty()
| void zeus::TVariableResolver::resolveDependancies | ( | const TString & | rData, |
| TSet< TString > & | rDependancies, | ||
| bool | bRecusrive = false |
||
| ) | [inline] |
Resolves all dependancies
| void TVariableResolver::resolveDependancies | ( | const IString & | rData, |
| TSet< TString > & | rDependancies, | ||
| bool | bRecusrive = false |
||
| ) |
Resolves all dependancies
rDependancies.hasItem(strRealVarName)
strVarName.isEmpty()
| Retval TVariableResolver::resolveVariable | ( | const TString & | rName, |
| TString & | rValue | ||
| ) | [protected, virtual] |
This method implements the resolving of a variable and returns the concrete value
Reimplemented in zeus::TSettingsVariableResolver.