1*4271bf2eSjunyoung /* $NetBSD: plural_parser.h,v 1.2 2007/09/25 08:19:09 junyoung Exp $ */ 2dd416aa8Stshiozak 3dd416aa8Stshiozak /*- 4dd416aa8Stshiozak * Copyright (c) 2005 Citrus Project, 5dd416aa8Stshiozak * All rights reserved. 6dd416aa8Stshiozak * 7dd416aa8Stshiozak * Redistribution and use in source and binary forms, with or without 8dd416aa8Stshiozak * modification, are permitted provided that the following conditions 9dd416aa8Stshiozak * are met: 10dd416aa8Stshiozak * 1. Redistributions of source code must retain the above copyright 11dd416aa8Stshiozak * notice, this list of conditions and the following disclaimer. 12dd416aa8Stshiozak * 2. Redistributions in binary form must reproduce the above copyright 13dd416aa8Stshiozak * notice, this list of conditions and the following disclaimer in the 14dd416aa8Stshiozak * documentation and/or other materials provided with the distribution. 15dd416aa8Stshiozak * 16dd416aa8Stshiozak * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 17dd416aa8Stshiozak * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18dd416aa8Stshiozak * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19dd416aa8Stshiozak * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 20dd416aa8Stshiozak * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 21dd416aa8Stshiozak * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 22dd416aa8Stshiozak * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 23dd416aa8Stshiozak * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 24dd416aa8Stshiozak * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25dd416aa8Stshiozak * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26dd416aa8Stshiozak * SUCH DAMAGE. 27dd416aa8Stshiozak * 28dd416aa8Stshiozak */ 29dd416aa8Stshiozak 30dd416aa8Stshiozak #ifndef PLURAL_PARSER_H_ 31dd416aa8Stshiozak #define PLURAL_PARSER_H_ 32dd416aa8Stshiozak 33dd416aa8Stshiozak struct gettext_plural; 34dd416aa8Stshiozak 35dd416aa8Stshiozak __BEGIN_DECLS 36*4271bf2eSjunyoung int _gettext_parse_plural(struct gettext_plural **, unsigned long *, 37*4271bf2eSjunyoung const char *, size_t); 38*4271bf2eSjunyoung unsigned long _gettext_calculate_plural(const struct gettext_plural *, 39dd416aa8Stshiozak unsigned long); 40*4271bf2eSjunyoung void _gettext_free_plural(struct gettext_plural *); 41dd416aa8Stshiozak __END_DECLS 42dd416aa8Stshiozak 43dd416aa8Stshiozak #endif 44