コード例 #1
0
SAWYER_EXPORT std::string
IfEq::eval(const Grammar &grammar, const std::vector<std::string> &args) {
    ASSERT_require(args.size() == 4);
    std::string v1 = grammar.unescape(args[0]);
    std::string v2 = grammar.unescape(args[1]);
    return grammar(v1==v2 ? args[2] : args[3]);
}
コード例 #2
0
SAWYER_EXPORT std::string
Eval::eval(const Grammar &grammar, const std::vector<std::string> &args) {
    std::string s = grammar.unescape(boost::join(args, ""));
    return grammar(s);
}