19#ifndef STRINGVARFACTORY_HPP
20#define STRINGVARFACTORY_HPP
42 void replaceStringVectorVars(std::map<std::string,StringVector>& mVectorVarMap, std::string& currentline,
size_t nCurrentComponent,
bool& bHasComponents);
43 std::string
findVectorInMap(
const std::map<std::string,StringVector>& mVectorVarMap,
const std::vector<std::string>& vStringVector);
59 bool isStringVar(
const std::string& sVarName)
const;
62 void setStringValue(
const std::string& sVar,
const std::string& sValue);
This class handles the creation and deletion of string vector variables.
std::map< std::string, StringVector > m_mTempStringVectorVars
StringVector evaluateStringVectors(std::string sLine)
This member function evaluates the passed string vector and returns it's evaluated components in sepa...
const StringVector & getStringVectorVar(const std::string &sVarName) const
Return a reference to the identified string vector variable or throw if it does not exist.
bool containsStringVars(const std::string &sLine) const
This public member function determines, whether the passed string line contains string variables as p...
void removeStringVectorVars()
This member function removes all internal string vector variables.
std::map< std::string, StringVector > m_mStringVectorVars
bool isStringVectorVar(const std::string &sVarName) const
Check, whether the passed string identifies a string vector variable.
bool isStringVar(const std::string &sVarName) const
Determine, whether the passed string is the identifier of a string variable.
bool checkStringvarDelimiter(const std::string &sToken) const
This private member function examines the first and the last character of the passed string and deter...
std::map< std::string, std::string > m_mStringVars
StringVector expandStringVectorComponents(std::vector< StringVector > &vStringVector)
This member function expands the internal multi-expressions in the veector into separate components b...
bool containsStringVectorVars(const std::string &sLine)
This member function determines, whether there are string vector variables in the passed command line...
void setStringValue(const std::string &sVar, const std::string &sValue)
This public member function creates or updates a string variable and fills it with the passed value.
void replaceStringVectorVars(std::map< std::string, StringVector > &mVectorVarMap, std::string ¤tline, size_t nCurrentComponent, bool &bHasComponents)
Replaces all found vectors of the passed map with their nCurrentComponent component.
std::string findVectorInMap(const std::map< std::string, StringVector > &mVectorVarMap, const std::vector< std::string > &vStringVector)
Searches for the passed string in the passed map and returns the key string from the map,...
void getStringValues(std::string &sLine)
This public member function resolves all string variable occurences and replaces them with their valu...
std::string createStringVectorVar(const std::vector< std::string > &vStringVector)
This member function is used to create a string vector variable.
void removeTempStringVectorVars()
This member function removes all temporary string vector variables.
std::string createTempStringVectorVar(const std::vector< std::string > &vStringVector)
This member function is used to create a temporary string vector variable.
bool isNumericCandidate(const std::string &sComponent)
This member function is used to determine, whether a string vector component is numerical parsable.
std::string getStringValue(const std::string &sVar) const
Returns the value of the selected string variable.
const std::map< std::string, std::string > & getStringVars() const
void removeStringVar(const std::string &sVar)
This public member function removes the selected string variable from memory.
void getStringValuesAsInternalVar(std::string &sLine, unsigned int nPos=0)
This public member function resolves all string variable occurences and replaces them with an interna...
This class is an extension to the std::vector<std::string> to provide the vector-like functionalities...