61 lines
2.1 KiB
C
61 lines
2.1 KiB
C
/*
|
||
* regfree - free an RE
|
||
*
|
||
* Copyright (c) 1998, 1999 Henry Spencer. All rights reserved.
|
||
*
|
||
* Development of this software was funded, in part, by Cray Research Inc.,
|
||
* UUNET Communications Services Inc., Sun Microsystems Inc., and Scriptics
|
||
* Corporation, none of whom are responsible for the results. The author
|
||
* thanks all of them.
|
||
*
|
||
* Redistribution and use in source and binary forms -- with or without
|
||
* modification -- are permitted for any purpose, provided that
|
||
* redistributions in source form retain this entire copyright notice and
|
||
* indicate the origin and nature of any modifications.
|
||
*
|
||
* I'd appreciate being given credit for this package in the documentation of
|
||
* software which uses it, but that is not a requirement.
|
||
*
|
||
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
|
||
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
|
||
* AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
|
||
* HENRY SPENCER BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
|
||
* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
||
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
||
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||
*
|
||
* You might think that this could be incorporated into regcomp.c, and that
|
||
* would be a reasonable idea... except that this is a generic function (with
|
||
* a generic name), applicable to all compiled REs regardless of the size of
|
||
* their characters, whereas the stuff in regcomp.c gets compiled once per
|
||
* character size.
|
||
*/
|
||
|
||
#include "regguts.h"
|
||
|
||
/*
|
||
- regfree - free an RE (generic function, punts to RE-specific function)
|
||
*
|
||
* Ignoring invocation with NULL is a convenience.
|
||
*/
|
||
void
|
||
regfree(
|
||
regex_t *re)
|
||
{
|
||
if (re == NULL) {
|
||
return;
|
||
}
|
||
(*((struct fns *)re->re_fns)->free)(re);
|
||
}
|
||
|
||
/*
|
||
* Local Variables:
|
||
* mode: c
|
||
* c-basic-offset: 4
|
||
* fill-column: 78
|
||
* End:
|
||
*/
|