]> git.tdb.fi Git - builder.git/blobdiff - source/booleanevaluator.cpp
Use std::function instead of sigc::slot in BooleanEvaluator
[builder.git] / source / booleanevaluator.cpp
index 01037415d2bf36ee9d012f59840e5463151b1cf9..074956a7a29b4cfddca039b1506eaaf30bf5dabb 100644 (file)
@@ -5,8 +5,8 @@ using namespace std;
 
 /* I'd rather have overloads with different slots, but that creates an
 ambiguity because slots have template constructors. */
-BooleanEvaluator::BooleanEvaluator(const Slot &s, bool allow_compare):
-       slot(s),
+BooleanEvaluator::BooleanEvaluator(const Function &f, bool allow_compare):
+       func(f),
        ops(allow_compare ? "&|!=^" : "&|!")
 { }
 
@@ -31,7 +31,7 @@ bool BooleanEvaluator::evaluate(const string &str)
                                        op_stack.pop_back();
                                        string var = var_stack.back();
                                        var_stack.pop_back();
-                                       bool value = (slot(var, &buf) == (op=='='));
+                                       bool value = (func(var, &buf) == (op=='='));
                                        value_stack.push_back(value);
                                }
                                else
@@ -81,7 +81,7 @@ bool BooleanEvaluator::pop_value()
        {
                string var = var_stack.back();
                var_stack.pop_back();
-               return slot(var, 0);
+               return func(var, 0);
        }
        else if(!value_stack.empty())
        {