X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FVariables.C;h=22e41ed8b72921eb882e7144d7245ecb664d9cb8;hb=32ef0d04c48a1751abbb5e3b17d1bec25f22c255;hp=dd178f29d197c2d06a477f3ea4a465860d2fdb92;hpb=83acbbd5237373926c629855379e1df9a04209b2;p=lyx.git diff --git a/src/Variables.C b/src/Variables.C index dd178f29d1..22e41ed8b7 100644 --- a/src/Variables.C +++ b/src/Variables.C @@ -30,40 +30,40 @@ void Variables::set(string const & var, string const & val) string const Variables::get(string const & var) const { - Vars::const_iterator cit = vars_.find(var); - if (cit != vars_.end()) - return (*cit).second; - else - return string(); + Vars::const_iterator cit = vars_.find(var); + if (cit != vars_.end()) + return cit->second; + else + return string(); } -bool Variables::set(string const & var) const +bool Variables::isSet(string const & var) const { - Vars::const_iterator cit = vars_.find(var); - return (cit != vars_.end()); + Vars::const_iterator cit = vars_.find(var); + return (cit != vars_.end()); } string const Variables::expand(string const & s) const { - string str(s); - LRegex reg("\\$\\{\\(.*\\)\\}"); - - if (!reg.exact_match(str)) - return str; - - LRegex::MatchPair match; - string var; - - do { - match = reg.first_match(str); - var = str.substr(match.first,match.second); - // we correct the match to take ${} in account. - str.replace(match.first - 2, match.second + 3, get(var)); - } while (reg.exact_match(str)); - - return str; + string str(s); + LRegex reg("\\$\\{\\(.*\\)\\}"); + + if (!reg.exact_match(str)) + return str; + + LRegex::MatchPair match; + string var; + + do { + match = reg.first_match(str); + var = str.substr(match.first,match.second); + // we correct the match to take ${} in account. + str.replace(match.first - 2, match.second + 3, get(var)); + } while (reg.exact_match(str)); + + return str; } #ifdef TEST @@ -73,10 +73,10 @@ using std::endl; using std::cout; int main() { - Variables vars; - vars.set("x", "hello"); - vars.set("y", "world"); - cout << vars.expand("${x}") << endl; + Variables vars; + vars.set("x", "hello"); + vars.set("y", "world"); + cout << vars.expand("${x}") << endl; } #endif