diff options
author | Tom Tromey <tom@tromey.com> | 2022-01-01 11:31:47 -0700 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2022-01-18 10:14:43 -0700 |
commit | d322d6d69df61a1af481de7e50359c3d92c0de14 (patch) | |
tree | d62d224c341e948e5712623d79648ea77ea23f0f /gdb/gdb_regex.c | |
parent | 0589ca4e7ba9b8d60599706b57be22c007c1f4fa (diff) | |
download | binutils-d322d6d69df61a1af481de7e50359c3d92c0de14.zip binutils-d322d6d69df61a1af481de7e50359c3d92c0de14.tar.gz binutils-d322d6d69df61a1af481de7e50359c3d92c0de14.tar.bz2 |
Move gdb_regex to gdbsupport
This moves the gdb_regex convenience class to gdbsupport.
Diffstat (limited to 'gdb/gdb_regex.c')
-rw-r--r-- | gdb/gdb_regex.c | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/gdb/gdb_regex.c b/gdb/gdb_regex.c deleted file mode 100644 index f4d23cf..0000000 --- a/gdb/gdb_regex.c +++ /dev/null @@ -1,57 +0,0 @@ -/* Copyright (C) 2011-2022 Free Software Foundation, Inc. - - This file is part of GDB. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see <http://www.gnu.org/licenses/>. */ - -#include "defs.h" -#include "gdb_regex.h" -#include "gdbsupport/def-vector.h" - -compiled_regex::compiled_regex (const char *regex, int cflags, - const char *message) -{ - gdb_assert (regex != NULL); - gdb_assert (message != NULL); - - int code = regcomp (&m_pattern, regex, cflags); - if (code != 0) - { - size_t length = regerror (code, &m_pattern, NULL, 0); - gdb::def_vector<char> err (length); - - regerror (code, &m_pattern, err.data (), length); - error (("%s: %s"), message, err.data ()); - } -} - -compiled_regex::~compiled_regex () -{ - regfree (&m_pattern); -} - -int -compiled_regex::exec (const char *string, size_t nmatch, - regmatch_t pmatch[], int eflags) const -{ - return regexec (&m_pattern, string, nmatch, pmatch, eflags); -} - -int -compiled_regex::search (const char *string, - int length, int start, int range, - struct re_registers *regs) -{ - return re_search (&m_pattern, string, length, start, range, regs); -} |