Commit e268deaf authored by Alvarez, Gonzalo's avatar Alvarez, Gonzalo
Browse files

PredicateAwesome: 3 name/value pairs supported

parent 62194ea4
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -52,6 +52,19 @@ public:
		return true;
	}

	template<typename T>
	bool isTrue(String name1, T val1,
	            String name2, T val2,
	            String name3, T val3)
	{
		VectorStringType names{name1, name2, name3};
		typename Vector<T>::Type values{val1, val2, val3};
		SizeType n = vPredicateSimple_.size();
		for (SizeType i = 0; i < n; ++i)
			if (!vPredicateSimple_[i].isTrue(names, values)) return false;
		return true;
	}

	template<typename T>
	bool isTrue(String name1, T val1,
	            String name2, T val2,
+14 −0
Original line number Diff line number Diff line
@@ -96,6 +96,20 @@ public:
		return false;
	}

	template<typename T1, typename T2>
	bool isTrue(String name1, T1 val1,
	            String name2, T2 val2,
	            String name3, T1 val3)
	{
		if (pred_ == "") return false;
		SizeType n = predicateAnd_.size();
		for (SizeType i = 0; i < n; ++i)
			if (predicateAnd_[i].isTrue(name1, val1,
			                            name2, val2,
			                            name3, val3)) return true;
		return false;
	}

	template<typename T1, typename T2>
	bool isTrue(String name1, T1 val1,
	            String name2, T2 val2,