2009-09-14 [colin] 3.7.2cvs32
[claws.git] / src / matcher_parser_parse.y
index 0f3216ae4dfadc547a9da3cce8032b0b70796b32..c28684a0124e415e137109e39d32aeab9529d814 100644 (file)
@@ -337,6 +337,8 @@ int matcher_parserwrap(void)
 %token MATCHER_ADD_TO_ADDRESSBOOK
 %token MATCHER_STOP MATCHER_HIDE MATCHER_IGNORE MATCHER_WATCH
 %token MATCHER_SPAM MATCHER_NOT_SPAM
+%token MATCHER_HAS_ATTACHMENT MATCHER_HAS_NO_ATTACHMENT
+%token MATCHER_SIGNED MATCHER_NOT_SIGNED
 %token MATCHER_TAG MATCHER_NOT_TAG MATCHER_SET_TAG MATCHER_UNSET_TAG
 %token MATCHER_TAGGED MATCHER_NOT_TAGGED MATCHER_CLEAR_TAGS
 
@@ -711,6 +713,34 @@ MATCHER_ALL
        criteria = MATCHCRITERIA_NOT_SPAM;
        prop = matcherprop_new(criteria, NULL, 0, NULL, 0);
 }
+| MATCHER_HAS_ATTACHMENT
+{
+       gint criteria = 0;
+
+       criteria = MATCHCRITERIA_HAS_ATTACHMENT;
+       prop = matcherprop_new(criteria, NULL, 0, NULL, 0);
+}
+| MATCHER_HAS_NO_ATTACHMENT
+{
+       gint criteria = 0;
+
+       criteria = MATCHCRITERIA_HAS_NO_ATTACHMENT;
+       prop = matcherprop_new(criteria, NULL, 0, NULL, 0);
+}
+| MATCHER_SIGNED
+{
+       gint criteria = 0;
+
+       criteria = MATCHCRITERIA_SIGNED;
+       prop = matcherprop_new(criteria, NULL, 0, NULL, 0);
+}
+| MATCHER_NOT_SIGNED
+{
+       gint criteria = 0;
+
+       criteria = MATCHCRITERIA_NOT_SIGNED;
+       prop = matcherprop_new(criteria, NULL, 0, NULL, 0);
+}
 | MATCHER_PARTIAL
 {
        gint criteria = 0;
@@ -1133,7 +1163,7 @@ MATCHER_ALL
        matcher_is_fast = FALSE;
        criteria = MATCHCRITERIA_TEST;
        expr = $2;
-       prop = matcherprop_new(criteria, NULL, 0, expr, 0);
+       prop = matcherprop_new(criteria, NULL, MATCHTYPE_MATCH, expr, 0);
 }
 | MATCHER_NOT_TEST MATCHER_STRING
 {
@@ -1142,7 +1172,7 @@ MATCHER_ALL
        matcher_is_fast = FALSE;
        criteria = MATCHCRITERIA_NOT_TEST;
        expr = $2;
-       prop = matcherprop_new(criteria, NULL, 0, expr, 0);
+       prop = matcherprop_new(criteria, NULL, MATCHTYPE_MATCH, expr, 0);
 }
 ;