From 91fcc47d14c249168d514f74fe27e8e9b212ff9b Mon Sep 17 00:00:00 2001 From: Danny Baumann Date: Sun, 22 Feb 2009 17:30:58 +0100 Subject: Match API improvements: - Provide != operator and emptiness check method - Provide empty match - Improve const correctness --- src/match.cpp | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/match.cpp b/src/match.cpp index a16c44a..072083e 100644 --- a/src/match.cpp +++ b/src/match.cpp @@ -39,6 +39,8 @@ #include "privatescreen.h" #include "privatewindow.h" +const CompMatch CompMatch::emptyMatch; + class CoreExp : public CompMatch::Expression { public: virtual ~CoreExp () {}; @@ -609,7 +611,7 @@ CompMatch::update () matchResetOps (priv->op.op); matchUpdateOps (priv->op.op); } - + bool CompMatch::evaluate (CompWindow *window) { @@ -617,11 +619,17 @@ CompMatch::evaluate (CompWindow *window) } CompString -CompMatch::toString () +CompMatch::toString () const { return matchOpsToString (priv->op.op); } +bool +CompMatch::isEmpty () const +{ + return (*this == emptyMatch); +} + CompMatch & CompMatch::operator= (const CompMatch &match) { @@ -712,7 +720,13 @@ CompMatch::operator| (const CompString &str) } bool -CompMatch::operator== (const CompMatch &match) +CompMatch::operator== (const CompMatch &match) const { return matchOpsEqual (priv->op.op, match.priv->op.op); } + +bool +CompMatch::operator!= (const CompMatch &match) const +{ + return !(*this == match); +} -- cgit v1.1