MobilityDB 1.3
Loading...
Searching...
No Matches
port.h
Go to the documentation of this file.
1/*-------------------------------------------------------------------------
2 *
3 * port.h
4 * Header for src/port/ compatibility functions.
5 *
6 * Portions Copyright (c) 1996-2021, PostgreSQL Global Development Group
7 * Portions Copyright (c) 1994, Regents of the University of California
8 *
9 * src/include/port.h
10 *
11 *-------------------------------------------------------------------------
12 */
13#ifndef PG_PORT_H
14#define PG_PORT_H
15
16#include <ctype.h>
17// #include <netdb.h>
18// #include <pwd.h>
19
20/*
21 * Windows has enough specialized port stuff that we push most of it off
22 * into another file.
23 * Note: Some CYGWIN includes might #define WIN32.
24 */
25#if defined(WIN32) && !defined(__CYGWIN__)
26#include "port/win32_port.h"
27#endif
28
29/* Portable SQL-like case-independent comparisons and conversions */
30extern int pg_strcasecmp(const char *s1, const char *s2);
31extern int pg_strncasecmp(const char *s1, const char *s2, size_t n);
32extern unsigned char pg_toupper(unsigned char ch);
33extern unsigned char pg_tolower(unsigned char ch);
34extern unsigned char pg_ascii_toupper(unsigned char ch);
35extern unsigned char pg_ascii_tolower(unsigned char ch);
36
37
38extern void pg_qsort(void *base, size_t nel, size_t elsize,
39 int (*cmp) (const void *, const void *));
40extern int pg_qsort_strcmp(const void *a, const void *b);
41
42#define qsort(a,b,c,d) pg_qsort(a,b,c,d)
43
44typedef int (*qsort_arg_comparator) (const void *a, const void *b, void *arg);
45
46extern void qsort_arg(void *base, size_t nel, size_t elsize,
47 qsort_arg_comparator cmp, void *arg);
48
49#endif /* PG_PORT_H */
int pg_strcasecmp(const char *s1, const char *s2)
Definition: pgstrcasecmp.c:36
int(* qsort_arg_comparator)(const void *a, const void *b, void *arg)
Definition: port.h:44
int pg_qsort_strcmp(const void *a, const void *b)
Definition: qsort.c:19
unsigned char pg_toupper(unsigned char ch)
Definition: pgstrcasecmp.c:105
void qsort_arg(void *base, size_t nel, size_t elsize, qsort_arg_comparator cmp, void *arg)
unsigned char pg_tolower(unsigned char ch)
Definition: pgstrcasecmp.c:122
unsigned char pg_ascii_tolower(unsigned char ch)
Definition: pgstrcasecmp.c:146
unsigned char pg_ascii_toupper(unsigned char ch)
Definition: pgstrcasecmp.c:135
void pg_qsort(void *base, size_t nel, size_t elsize, int(*cmp)(const void *, const void *))
int pg_strncasecmp(const char *s1, const char *s2, size_t n)
Definition: pgstrcasecmp.c:69