1 /* 2 +----------------------------------------------------------------------+ 3 | PHP Version 7 | 4 +----------------------------------------------------------------------+ 5 | Copyright (c) 1997-2017 The PHP Group | 6 +----------------------------------------------------------------------+ 7 | This source file is subject to version 3.01 of the PHP license, | 8 | that is bundled with this package in the file LICENSE, and is | 9 | available through the world-wide-web at the following url: | 10 | http://www.php.net/license/3_01.txt | 11 | If you did not receive a copy of the PHP license and are unable to | 12 | obtain it through the world-wide-web, please send a note to | 13 | license@php.net so we can mail you a copy immediately. | 14 +----------------------------------------------------------------------+ 15 | Author: Johannes Schlueter <johannes@php.net> | 16 +----------------------------------------------------------------------+ 17 */ 18 19 /* $Id$ */ 20 21 #ifndef CLI_H 22 #define CLI_H 23 24 #ifdef PHP_WIN32 25 # define PHP_CLI_API __declspec(dllexport) 26 #elif defined(__GNUC__) && __GNUC__ >= 4 27 # define PHP_CLI_API __attribute__ ((visibility("default"))) 28 #else 29 # define PHP_CLI_API 30 #endif 31 32 33 extern PHP_CLI_API size_t sapi_cli_single_write(const char *str, size_t str_length); 34 35 typedef struct { 36 size_t (*cli_shell_write)(const char *str, size_t str_length); 37 size_t (*cli_shell_ub_write)(const char *str, size_t str_length); 38 int (*cli_shell_run)(void); 39 } cli_shell_callbacks_t; 40 41 extern PHP_CLI_API cli_shell_callbacks_t *php_cli_get_shell_callbacks(); 42 43 #endif /* CLI_H */ 44 45 /* 46 * Local variables: 47 * tab-width: 4 48 * c-basic-offset: 4 49 * End: 50 * vim600: noet sw=4 ts=4 fdm=marker 51 * vim<600: noet sw=4 ts=4 52 */ 53