diff options
Diffstat (limited to 'gettext-tools/src/x-c.h')
-rw-r--r-- | gettext-tools/src/x-c.h | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/gettext-tools/src/x-c.h b/gettext-tools/src/x-c.h new file mode 100644 index 0000000..64e4953 --- /dev/null +++ b/gettext-tools/src/x-c.h @@ -0,0 +1,92 @@ +/* xgettext C/C++/ObjectiveC backend. + Copyright (C) 2001-2003, 2006, 2009 Free Software Foundation, Inc. + Written by Bruno Haible <haible@clisp.cons.org>, 2001. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. */ + + +#include <stdio.h> + +#include "message.h" +#include "xgettext.h" + + +#ifdef __cplusplus +extern "C" { +#endif + + +#define EXTENSIONS_C \ + { "c", "C" }, \ + { "h", "C" }, \ + { "C", "C++" }, \ + { "c++", "C++" }, \ + { "cc", "C++" }, \ + { "cxx", "C++" }, \ + { "cpp", "C++" }, \ + { "hh", "C++" }, \ + { "hxx", "C++" }, \ + { "hpp", "C++" }, \ + { "m", "ObjectiveC" }, \ + +#define SCANNERS_C \ + { "C", extract_c, \ + &flag_table_c, \ + &formatstring_c, NULL, \ + &literalstring_c }, \ + { "C++", extract_c, \ + &flag_table_c, \ + &formatstring_c, NULL, \ + &literalstring_c }, \ + { "ObjectiveC", extract_objc, \ + &flag_table_objc, \ + &formatstring_c, &formatstring_objc, \ + &literalstring_c }, \ + { "GCC-source", extract_c, \ + &flag_table_gcc_internal, \ + &formatstring_gcc_internal, &formatstring_gfc_internal, \ + &literalstring_c }, \ + +/* Scan a C/C++ file and add its translatable strings to mdlp. */ +extern void extract_c (FILE *fp, const char *real_filename, + const char *logical_filename, + flag_context_list_table_ty *flag_table, + msgdomain_list_ty *mdlp); +/* Scan an ObjectiveC file and add its translatable strings to mdlp. */ +extern void extract_objc (FILE *fp, const char *real_filename, + const char *logical_filename, + flag_context_list_table_ty *flag_table, + msgdomain_list_ty *mdlp); + + +/* Handling of options specific to this language. */ + +extern void x_c_extract_all (void); + +extern void x_c_keyword (const char *name); +extern void x_objc_keyword (const char *name); + +extern void x_c_trigraphs (void); + +extern void init_flag_table_c (void); +extern void init_flag_table_objc (void); +extern void init_flag_table_gcc_internal (void); + + +extern struct literalstring_parser literalstring_c; + + +#ifdef __cplusplus +} +#endif |