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_EXECUTE, */
92 typedef struct _MatcherProp MatcherProp;
99 typedef struct _MatcherList MatcherList;
101 gchar * get_matchparser_tab_str(gint id);
102 MatcherProp * matcherprop_new(gint criteria, gchar * header,
103 gint matchtype, gchar * expr,
105 void matcherprop_free(MatcherProp * prop);
106 MatcherProp * matcherprop_parse(gchar ** str);
108 gboolean matcherprop_match(MatcherProp * prop, MsgInfo * info);
110 MatcherList * matcherlist_new(GSList * matchers, gboolean bool_and);
111 void matcherlist_free(MatcherList * cond);
112 MatcherList * matcherlist_parse(gchar ** str);
114 gboolean matcherlist_match(MatcherList * cond, MsgInfo * info);
116 gint matcher_parse_keyword(gchar ** str);
117 gint matcher_parse_number(gchar ** str);
118 gboolean matcher_parse_boolean_op(gchar ** str);
119 gchar * matcher_parse_regexp(gchar ** str);
120 gchar * matcher_parse_str(gchar ** str);
121 gchar * matcherprop_to_string(MatcherProp * matcher);
122 gchar * matcherlist_to_string(MatcherList * matchers);
123 gchar * matching_build_command(gchar * cmd, MsgInfo * info);