38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync/*
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Heap definitions
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync *
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Copyright 2001 Francois Gouget.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync *
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * This library is free software; you can redistribute it and/or
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * modify it under the terms of the GNU Lesser General Public
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * License as published by the Free Software Foundation; either
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * version 2.1 of the License, or (at your option) any later version.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync *
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * This library is distributed in the hope that it will be useful,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * but WITHOUT ANY WARRANTY; without even the implied warranty of
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Lesser General Public License for more details.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync *
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * You should have received a copy of the GNU Lesser General Public
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * License along with this library; if not, write to the Free Software
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync/*
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * a choice of LGPL license versions is made available with the language indicating
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * that LGPLv2 or any later version may be used, or where a choice of which version
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * of the LGPL is applied is otherwise unspecified.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#ifndef __WINE_SEARCH_H
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#define __WINE_SEARCH_H
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#include <crtdefs.h>
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#ifdef __cplusplus
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncextern "C" {
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncvoid* __cdecl _lfind(const void*,const void*,unsigned int*,unsigned int,int (*)(const void*,const void*));
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncvoid* __cdecl _lsearch(const void*,void*,unsigned int*,unsigned int,int (*)(const void*,const void*));
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncvoid* __cdecl bsearch(const void*,const void*,size_t,size_t,int (*)(const void*,const void*));
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncvoid __cdecl qsort(void*,size_t,size_t,int (*)(const void*,const void*));
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#ifdef __cplusplus
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync}
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncstatic inline void* lfind(const void* match, const void* start, unsigned int* array_size, unsigned int elem_size, int (*cf)(const void*,const void*)) { return _lfind(match, start, array_size, elem_size, cf); }
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncstatic inline void* lsearch(const void* match, void* start, unsigned int* array_size, unsigned int elem_size, int (*cf)(const void*,const void*) ) { return _lsearch(match, start, array_size, elem_size, cf); }
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* __WINE_SEARCH_H */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync