24 MATCHING_NOT_FORWARDED
,
36 MATCHING_NOT_TO_AND_NOT_CC
,
40 MATCHING_NOT_NEWSGROUPS
,
42 MATCHING_NOT_INREPLYTO
,
44 MATCHING_NOT_REFERENCES
,
45 MATCHING_SCORE_GREATER
,
53 MATCHING_HEADERS_PART
,
54 MATCHING_NOT_HEADERS_PART
,
56 MATCHING_NOT_BODY_PART
,
66 MATCHING_ACTION_DELETE
,
68 MATCHING_ACTION_MARK_AS_READ
,
69 MATCHING_ACTION_UNMARK
,
70 MATCHING_ACTION_MARK_AS_UNREAD
,
71 MATCHING_ACTION_FORWARD
,
72 MATCHING_ACTION_FORWARD_AS_ATTACHMENT
,
73 MATCHING_ACTION_COLOR
,
74 /* MATCHING_ACTION_EXECUTE, */
93 typedef struct _MatcherProp MatcherProp
;
100 typedef struct _MatcherList MatcherList
;
102 gchar
* get_matchparser_tab_str(gint id
);
103 MatcherProp
* matcherprop_new(gint criteria
, gchar
* header
,
104 gint matchtype
, gchar
* expr
,
106 void matcherprop_free(MatcherProp
* prop
);
107 MatcherProp
* matcherprop_parse(gchar
** str
);
109 gboolean
matcherprop_match(MatcherProp
* prop
, MsgInfo
* info
);
111 MatcherList
* matcherlist_new(GSList
* matchers
, gboolean bool_and
);
112 void matcherlist_free(MatcherList
* cond
);
113 MatcherList
* matcherlist_parse(gchar
** str
);
115 gboolean
matcherlist_match(MatcherList
* cond
, MsgInfo
* info
);
117 gint
matcher_parse_keyword(gchar
** str
);
118 gint
matcher_parse_number(gchar
** str
);
119 gboolean
matcher_parse_boolean_op(gchar
** str
);
120 gchar
* matcher_parse_regexp(gchar
** str
);
121 gchar
* matcher_parse_str(gchar
** str
);
122 gchar
* matcher_unescape_str(gchar
*str
);
123 gchar
* matcherprop_to_string(MatcherProp
* matcher
);
124 gchar
* matcherlist_to_string(MatcherList
* matchers
);
125 gchar
* matching_build_command(gchar
* cmd
, MsgInfo
* info
);