From owner-svn-src-user@FreeBSD.ORG Sat Feb 18 20:23:22 2012 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 88C141065672; Sat, 18 Feb 2012 20:23:22 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 753F78FC16; Sat, 18 Feb 2012 20:23:22 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q1IKNM3i046718; Sat, 18 Feb 2012 20:23:22 GMT (envelope-from gabor@svn.freebsd.org) Received: (from gabor@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q1IKNMEc046716; Sat, 18 Feb 2012 20:23:22 GMT (envelope-from gabor@svn.freebsd.org) Message-Id: <201202182023.q1IKNMEc046716@svn.freebsd.org> From: Gabor Kovesdan Date: Sat, 18 Feb 2012 20:23:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r231900 - user/gabor/tre-integration/include X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 18 Feb 2012 20:23:22 -0000 Author: gabor Date: Sat Feb 18 20:23:22 2012 New Revision: 231900 URL: http://svn.freebsd.org/changeset/base/231900 Log: - Add public interfaces for multiple-pattern matching Modified: user/gabor/tre-integration/include/mregex.h Modified: user/gabor/tre-integration/include/mregex.h ============================================================================== --- user/gabor/tre-integration/include/mregex.h Sat Feb 18 20:22:54 2012 (r231899) +++ user/gabor/tre-integration/include/mregex.h Sat Feb 18 20:23:22 2012 (r231900) @@ -8,10 +8,39 @@ typedef struct { size_t k; /* Number of patterns */ regex_t *patterns; /* regex_t structure for each pattern */ - size_t mfrag; /* Number of fragments */ + size_t mfrag; /* XXX Number of fragments */ + size_t type; /* XXX Matching type */ void *searchdata; } mregex_t; -#endif /* REGEX_H */ +int +tre_mregncomp(mregex_t *preg, size_t nr, const char *regex[], + size_t n[], int cflags); +int +tre_mregcomp(mregex_t *preg, size_t nr, const char *regex[], int cflags); +int +tre_mregnexec(const mregex_t *preg, const char *str, size_t len, + size_t nmatch, regmatch_t pmatch[], int eflags); +int +tre_regexec(const mregex_t *preg, const char *str, + size_t nmatch, regmatch_t pmatch[], int eflags); +void +tre_mregfree(mregex_t *preg); +#ifdef TRE_WCHAR +int +tre_mregwncomp(mregex_t *preg, size_t nr, const wchar_t *regex[], + size_t n[], int cflags); +int +tre_mregwcomp(mregex_t *preg, size_t nr, const wchar_t *regex[], + int cflags); +int +tre_mregwnexec(const mregex_t *preg, const wchar_t *str, size_t len, + size_t nmatch, regmatch_t pmatch[], int eflags); +int +tre_mregwexec(const mregex_t *preg, const wchar_t *str, + size_t nmatch, regmatch_t pmatch[], int eflags); +#endif /* TRE_WCHAR */ + +#endif /* MREGEX_H */ /* EOF */