1 /* xgettext Perl backend. 2 Copyright (C) 2002-2003, 2006, 2010, 2014, 2018, 2020 Free Software Foundation, Inc. 3 Written by Guido Flohr <guido@imperia.net>, 2002-2003 4 5 This program is free software: you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published by 7 the Free Software Foundation; either version 3 of the License, or 8 (at your option) any later version. 9 10 This program is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 GNU General Public License for more details. 14 15 You should have received a copy of the GNU General Public License 16 along with this program. If not, see <https://www.gnu.org/licenses/>. */ 17 18 19 #include <stdio.h> 20 21 #include "message.h" 22 #include "xg-arglist-context.h" 23 24 25 #ifdef __cplusplus 26 extern "C" { 27 #endif 28 29 30 #define EXTENSIONS_PERL \ 31 { "pl", "perl" }, \ 32 { "PL", "perl" }, \ 33 { "pm", "perl" }, \ 34 { "perl", "perl" }, \ 35 { "cgi", "perl" }, \ 36 37 #define SCANNERS_PERL \ 38 { "perl", extract_perl, NULL, \ 39 &flag_table_perl, &formatstring_perl, &formatstring_perl_brace }, \ 40 41 /* Scan a Perl file and add its translatable strings to mdlp. */ 42 extern void extract_perl (FILE *fp, const char *real_filename, 43 const char *logical_filename, 44 flag_context_list_table_ty *flag_table, 45 msgdomain_list_ty *mdlp); 46 47 extern void x_perl_keyword (const char *keyword); 48 extern void x_perl_extract_all (void); 49 50 extern void init_flag_table_perl (void); 51 52 53 #ifdef __cplusplus 54 } 55 #endif 56