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,
54 MATCHING_HEADERS_PART,
55 MATCHING_NOT_HEADERS_PART,
57 MATCHING_NOT_BODY_PART,
67 MATCHING_ACTION_DELETE,
69 MATCHING_ACTION_MARK_AS_READ,
70 MATCHING_ACTION_UNMARK,
71 MATCHING_ACTION_MARK_AS_UNREAD,
72 MATCHING_ACTION_FORWARD,
73 MATCHING_ACTION_FORWARD_AS_ATTACHMENT,
74 MATCHING_ACTION_COLOR,
75 /* MATCHING_ACTION_EXECUTE, */
94 typedef struct _MatcherProp MatcherProp;
101 typedef struct _MatcherList MatcherList;
103 gchar * get_matchparser_tab_str(gint id);
104 MatcherProp * matcherprop_new(gint criteria, gchar * header,
105 gint matchtype, gchar * expr,
107 void matcherprop_free(MatcherProp * prop);
108 MatcherProp * matcherprop_parse(gchar ** str);
110 gboolean matcherprop_match(MatcherProp * prop, MsgInfo * info);
112 MatcherList * matcherlist_new(GSList * matchers, gboolean bool_and);
113 void matcherlist_free(MatcherList * cond);
114 MatcherList * matcherlist_parse(gchar ** str);
116 gboolean matcherlist_match(MatcherList * cond, MsgInfo * info);
118 gint matcher_parse_keyword(gchar ** str);
119 gint matcher_parse_number(gchar ** str);
120 gboolean matcher_parse_boolean_op(gchar ** str);
121 gchar * matcher_parse_regexp(gchar ** str);
122 gchar * matcher_parse_str(gchar ** str);
123 gchar * matcher_unescape_str(gchar *str);
124 gchar * matcherprop_to_string(MatcherProp * matcher);
125 gchar * matcherlist_to_string(MatcherList * matchers);
126 gchar * matching_build_command(gchar * cmd, MsgInfo * info);