HEX
Server: Apache/2.4.41 (Amazon) OpenSSL/1.0.2k-fips PHP/5.6.40
System: Linux ip-172-31-40-18 4.14.146-93.123.amzn1.x86_64 #1 SMP Tue Sep 24 00:45:23 UTC 2019 x86_64
User: apache (48)
PHP: 5.6.40
Disabled: NONE
Upload Files
File: //proc/thread-self/root/usr/include/php/5.6/php/ext/http/php_http_strlist.h
/*
    +--------------------------------------------------------------------+
    | PECL :: http                                                       |
    +--------------------------------------------------------------------+
    | Redistribution and use in source and binary forms, with or without |
    | modification, are permitted provided that the conditions mentioned |
    | in the accompanying LICENSE file are met.                          |
    +--------------------------------------------------------------------+
    | Copyright (c) 2004-2014, Michael Wallner <mike@php.net>            |
    +--------------------------------------------------------------------+
*/

#ifndef PHP_HTTP_STRLIST_H
#define PHP_HTTP_STRLIST_H

#ifdef NUL
#	undef NUL
#endif
#define NUL "\0"

#define PHP_HTTP_STRLIST(name)			const char name[]
#define PHP_HTTP_STRLIST_ITEM(item)		item NUL
#define PHP_HTTP_STRLIST_NEXT			NUL
#define PHP_HTTP_STRLIST_STOP			NUL NUL

PHP_HTTP_API const char *php_http_strlist_find(const char list[], unsigned factor, unsigned item);

typedef struct php_http_strlist_iterator {
	const char *p;
	unsigned factor, major, minor;
} php_http_strlist_iterator_t;

PHP_HTTP_API php_http_strlist_iterator_t *php_http_strlist_iterator_init(php_http_strlist_iterator_t *iter, const char list[], unsigned factor);
PHP_HTTP_API const char *php_http_strlist_iterator_this(php_http_strlist_iterator_t *iter, unsigned *id);
PHP_HTTP_API const char *php_http_strlist_iterator_next(php_http_strlist_iterator_t *iter);
PHP_HTTP_API void php_http_strlist_iterator_dtor(php_http_strlist_iterator_t *iter);
PHP_HTTP_API void php_http_strlist_iterator_free(php_http_strlist_iterator_t **iter);

#endif /* PHP_HTTP_STRLIST_H */

/*
 * Local variables:
 * tab-width: 4
 * c-basic-offset: 4
 * End:
 * vim600: noet sw=4 ts=4 fdm=marker
 * vim<600: noet sw=4 ts=4
 */