From: Bruno Haible Date: Mon, 1 Oct 2007 22:24:48 +0000 (+0200) Subject: Rename search_.h to search.in.h. X-Git-Tag: v0.0~166 X-Git-Url: http://erislabs.org.uk/gitweb/?a=commitdiff_plain;h=b2b1b4208042f959acc8cbc9ec1da0cac0445492;p=gnulib.git Rename search_.h to search.in.h. --- diff --git a/ChangeLog b/ChangeLog index 7ca248435..bf854e016 100644 --- a/ChangeLog +++ b/ChangeLog @@ -41,6 +41,9 @@ of netinet_in_.h. Add dependency. * lib/poll.in.h: Renamed from lib/poll_.h. * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h. + * lib/search.in.h: Renamed from lib/search_.h. + * modules/search (Files, Makefile.am): Use search.in.h instead of + search_.h. 2007-09-30 Bruno Haible diff --git a/lib/search.in.h b/lib/search.in.h new file mode 100644 index 000000000..b41abdc4d --- /dev/null +++ b/lib/search.in.h @@ -0,0 +1,115 @@ +/* A GNU-like . + + Copyright (C) 2007 Free Software Foundation, Inc. + + 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 2, 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, write to the Free Software Foundation, + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + +#ifndef _GL_SEARCH_H + +/* The include_next requires a split double-inclusion guard. */ +#if @HAVE_SEARCH_H@ +# @INCLUDE_NEXT@ @NEXT_SEARCH_H@ +#endif + +#ifndef _GL_SEARCH_H +#define _GL_SEARCH_H + + +/* The definition of GL_LINK_WARNING is copied here. */ + + +#ifdef __cplusplus +extern "C" { +#endif + + +#if @GNULIB_TSEARCH@ +# if !@HAVE_TSEARCH@ + +/* See , + + for details. */ + +typedef enum +{ + preorder, + postorder, + endorder, + leaf +} +VISIT; + +/* Searches an element in the tree *VROOTP that compares equal to KEY. + If one is found, it is returned. Otherwise, a new element equal to KEY + is inserted in the tree and is returned. */ +extern void * tsearch (const void *key, void **vrootp, + int (*compar) (const void *, const void *)); + +/* Searches an element in the tree *VROOTP that compares equal to KEY. + If one is found, it is returned. Otherwise, NULL is returned. */ +extern void * tfind (const void *key, void *const *vrootp, + int (*compar) (const void *, const void *)); + +/* Searches an element in the tree *VROOTP that compares equal to KEY. + If one is found, it is removed from the tree, and its parent node is + returned. Otherwise, NULL is returned. */ +extern void * tdelete (const void *key, void **vrootp, + int (*compar) (const void *, const void *)); + +/* Perform a depth-first, left-to-right traversal of the tree VROOT. + The ACTION function is called: + - for non-leaf nodes: 3 times, before the left subtree traversal, + after the left subtree traversal but before the right subtree traversal, + and after the right subtree traversal, + - for leaf nodes: once. + The arguments passed to ACTION are: + 1. the node; it can be casted to a 'const void * const *', i.e. into a + pointer to the key, + 2. an indicator which visit of the node this is, + 3. the level of the node in the tree (0 for the root). */ +extern void twalk (const void *vroot, + void (*action) (const void *, VISIT, int)); + +# endif +#elif defined GNULIB_POSIXCHECK +# undef tsearch +# define tsearch(k,v,c) \ + (GL_LINK_WARNING ("tsearch is unportable - " \ + "use gnulib module tsearch for portability"), \ + tsearch (k, v, c)) +# undef tfind +# define tfind(k,v,c) \ + (GL_LINK_WARNING ("tfind is unportable - " \ + "use gnulib module tsearch for portability"), \ + tfind (k, v, c)) +# undef tdelete +# define tdelete(k,v,c) \ + (GL_LINK_WARNING ("tdelete is unportable - " \ + "use gnulib module tsearch for portability"), \ + tdelete (k, v, c)) +# undef twalk +# define twalk(v,a) \ + (GL_LINK_WARNING ("twalk is unportable - " \ + "use gnulib module tsearch for portability"), \ + twalk (v, a)) +#endif + + +#ifdef __cplusplus +} +#endif + +#endif /* _GL_SEARCH_H */ +#endif /* _GL_SEARCH_H */ diff --git a/lib/search_.h b/lib/search_.h deleted file mode 100644 index b41abdc4d..000000000 --- a/lib/search_.h +++ /dev/null @@ -1,115 +0,0 @@ -/* A GNU-like . - - Copyright (C) 2007 Free Software Foundation, Inc. - - 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 2, 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, write to the Free Software Foundation, - Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ - -#ifndef _GL_SEARCH_H - -/* The include_next requires a split double-inclusion guard. */ -#if @HAVE_SEARCH_H@ -# @INCLUDE_NEXT@ @NEXT_SEARCH_H@ -#endif - -#ifndef _GL_SEARCH_H -#define _GL_SEARCH_H - - -/* The definition of GL_LINK_WARNING is copied here. */ - - -#ifdef __cplusplus -extern "C" { -#endif - - -#if @GNULIB_TSEARCH@ -# if !@HAVE_TSEARCH@ - -/* See , - - for details. */ - -typedef enum -{ - preorder, - postorder, - endorder, - leaf -} -VISIT; - -/* Searches an element in the tree *VROOTP that compares equal to KEY. - If one is found, it is returned. Otherwise, a new element equal to KEY - is inserted in the tree and is returned. */ -extern void * tsearch (const void *key, void **vrootp, - int (*compar) (const void *, const void *)); - -/* Searches an element in the tree *VROOTP that compares equal to KEY. - If one is found, it is returned. Otherwise, NULL is returned. */ -extern void * tfind (const void *key, void *const *vrootp, - int (*compar) (const void *, const void *)); - -/* Searches an element in the tree *VROOTP that compares equal to KEY. - If one is found, it is removed from the tree, and its parent node is - returned. Otherwise, NULL is returned. */ -extern void * tdelete (const void *key, void **vrootp, - int (*compar) (const void *, const void *)); - -/* Perform a depth-first, left-to-right traversal of the tree VROOT. - The ACTION function is called: - - for non-leaf nodes: 3 times, before the left subtree traversal, - after the left subtree traversal but before the right subtree traversal, - and after the right subtree traversal, - - for leaf nodes: once. - The arguments passed to ACTION are: - 1. the node; it can be casted to a 'const void * const *', i.e. into a - pointer to the key, - 2. an indicator which visit of the node this is, - 3. the level of the node in the tree (0 for the root). */ -extern void twalk (const void *vroot, - void (*action) (const void *, VISIT, int)); - -# endif -#elif defined GNULIB_POSIXCHECK -# undef tsearch -# define tsearch(k,v,c) \ - (GL_LINK_WARNING ("tsearch is unportable - " \ - "use gnulib module tsearch for portability"), \ - tsearch (k, v, c)) -# undef tfind -# define tfind(k,v,c) \ - (GL_LINK_WARNING ("tfind is unportable - " \ - "use gnulib module tsearch for portability"), \ - tfind (k, v, c)) -# undef tdelete -# define tdelete(k,v,c) \ - (GL_LINK_WARNING ("tdelete is unportable - " \ - "use gnulib module tsearch for portability"), \ - tdelete (k, v, c)) -# undef twalk -# define twalk(v,a) \ - (GL_LINK_WARNING ("twalk is unportable - " \ - "use gnulib module tsearch for portability"), \ - twalk (v, a)) -#endif - - -#ifdef __cplusplus -} -#endif - -#endif /* _GL_SEARCH_H */ -#endif /* _GL_SEARCH_H */ diff --git a/modules/search b/modules/search index 9ab82eaec..0796bd7f4 100644 --- a/modules/search +++ b/modules/search @@ -2,7 +2,7 @@ Description: A GNU-like . Files: -lib/search_.h +lib/search.in.h m4/search_h.m4 Depends-on: @@ -17,7 +17,7 @@ BUILT_SOURCES += search.h # We need the following in order to create when the system # doesn't have one that works with the given compiler. -search.h: search_.h +search.h: search.in.h rm -f $@-t $@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''HAVE_SEARCH_H''@|$(HAVE_SEARCH_H)|g' \ @@ -26,7 +26,7 @@ search.h: search_.h -e 's|@''GNULIB_TSEARCH''@|$(GNULIB_TSEARCH)|g' \ -e 's|@''HAVE_TSEARCH''@|$(HAVE_TSEARCH)|g' \ -e '/definition of GL_LINK_WARNING/r $(LINK_WARNING_H)' \ - < $(srcdir)/search_.h; \ + < $(srcdir)/search.in.h; \ } > $@-t mv $@-t $@ MOSTLYCLEANFILES += search.h search.h-t