Annotation of embedaddon/php/ext/intl/locale/locale.c, revision 1.1.1.2
1.1 misho 1: /*
2: +----------------------------------------------------------------------+
3: | PHP Version 5 |
4: +----------------------------------------------------------------------+
5: | This source file is subject to version 3.01 of the PHP license, |
6: | that is bundled with this package in the file LICENSE, and is |
7: | available through the world-wide-web at the following url: |
8: | http://www.php.net/license/3_01.txt |
9: | If you did not receive a copy of the PHP license and are unable to |
10: | obtain it through the world-wide-web, please send a note to |
11: | license@php.net so we can mail you a copy immediately. |
12: +----------------------------------------------------------------------+
13: | Author: Kirti Velankar <kirtig@yahoo-inc.com> |
14: +----------------------------------------------------------------------+
15: */
16:
1.1.1.2 ! misho 17: /* $Id$ */
1.1 misho 18:
19: #ifdef HAVE_CONFIG_H
20: #include "config.h"
21: #endif
22:
23: #include "locale_class.h"
24: #include "locale.h"
25:
26: #include <unicode/utypes.h>
27: #include <unicode/uloc.h>
28: #include <unicode/ustring.h>
29:
30: /* {{{ locale_register_constants
31: * Register constants common for the both (OO and procedural)
32: * APIs.
33: */
34: void locale_register_constants( INIT_FUNC_ARGS )
35: {
36: if( !Locale_ce_ptr )
37: {
38: zend_error( E_ERROR, "Locale class not defined" );
39: return;
40: }
41:
42: #define LOCALE_EXPOSE_CONST(x) REGISTER_LONG_CONSTANT(#x, x, CONST_CS)
43: #define LOCALE_EXPOSE_CLASS_CONST(x) zend_declare_class_constant_long( Locale_ce_ptr, ZEND_STRS( #x ) - 1, ULOC_##x TSRMLS_CC );
44: #define LOCALE_EXPOSE_CUSTOM_CLASS_CONST_STR(name, value) zend_declare_class_constant_string( Locale_ce_ptr, ZEND_STRS( name ) - 1, value TSRMLS_CC );
45:
46: LOCALE_EXPOSE_CLASS_CONST( ACTUAL_LOCALE );
47: LOCALE_EXPOSE_CLASS_CONST( VALID_LOCALE );
48:
49: zend_declare_class_constant_null(Locale_ce_ptr, ZEND_STRS("DEFAULT_LOCALE") - 1 TSRMLS_CC);
50:
51: LOCALE_EXPOSE_CUSTOM_CLASS_CONST_STR( "LANG_TAG", LOC_LANG_TAG);
52: LOCALE_EXPOSE_CUSTOM_CLASS_CONST_STR( "EXTLANG_TAG", LOC_EXTLANG_TAG);
53: LOCALE_EXPOSE_CUSTOM_CLASS_CONST_STR( "SCRIPT_TAG", LOC_SCRIPT_TAG);
54: LOCALE_EXPOSE_CUSTOM_CLASS_CONST_STR( "REGION_TAG", LOC_REGION_TAG);
55: LOCALE_EXPOSE_CUSTOM_CLASS_CONST_STR( "VARIANT_TAG",LOC_VARIANT_TAG);
56: LOCALE_EXPOSE_CUSTOM_CLASS_CONST_STR( "GRANDFATHERED_LANG_TAG",LOC_GRANDFATHERED_LANG_TAG);
57: LOCALE_EXPOSE_CUSTOM_CLASS_CONST_STR( "PRIVATE_TAG",LOC_PRIVATE_TAG);
58:
59: #undef LOCALE_EXPOSE_CUSTOM_CLASS_CONST_STR
60: #undef LOCALE_EXPOSE_CLASS_CONST
61: #undef LOCALE_EXPOSE_CONST
62: }
63: /* }}} */
64:
65: /*
66: * Local variables:
67: * tab-width: 4
68: * c-basic-offset: 4
69: * End:
70: * vim600: noet sw=4 ts=4 fdm=marker
71: * vim<600: noet sw=4 ts=4
72: */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>