(*
- * Copyright 2005-2010, Ecole des Mines de Nantes, University of Copenhagen
+ * Copyright 2010, INRIA, University of Copenhagen
+ * Julia Lawall, Rene Rydhof Hansen, Gilles Muller, Nicolas Palix
+ * Copyright 2005-2009, Ecole des Mines de Nantes, University of Copenhagen
* Yoann Padioleau, Julia Lawall, Rene Rydhof Hansen, Henrik Stuart, Gilles Muller, Nicolas Palix
* This file is part of Coccinelle.
*
*)
-(*
- * Copyright 2005-2010, Ecole des Mines de Nantes, University of Copenhagen
- * Yoann Padioleau, Julia Lawall, Rene Rydhof Hansen, Henrik Stuart, Gilles Muller, Nicolas Palix
- * This file is part of Coccinelle.
- *
- * Coccinelle 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, according to version 2 of the License.
- *
- * Coccinelle 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 Coccinelle. If not, see <http://www.gnu.org/licenses/>.
- *
- * The authors reserve the right to distribute this or future versions of
- * Coccinelle under other licenses.
- *)
-
-
-(* Yoann Padioleau
- *
- * Copyright (C) 2006, 2007 Ecole des Mines de Nantes
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License (GPL)
- * version 2 as published by the Free Software Foundation.
- *
- * 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
- * file license.txt for more details.
- *
- * This file was part of Coccinelle.
- *)
open Common
module Flag_engine = Flag_matcher
in
tag_mck_pos_mcode mcode posmck x tin
- let distrf_e = distrf (Lib_parsing_c.ii_of_expr)
- let distrf_args = distrf (Lib_parsing_c.ii_of_args)
- let distrf_type = distrf (Lib_parsing_c.ii_of_type)
- let distrf_param = distrf (Lib_parsing_c.ii_of_param)
+ let distrf_e = distrf (Lib_parsing_c.ii_of_expr)
+ let distrf_args = distrf (Lib_parsing_c.ii_of_args)
+ let distrf_type = distrf (Lib_parsing_c.ii_of_type)
+ let distrf_param = distrf (Lib_parsing_c.ii_of_param)
let distrf_params = distrf (Lib_parsing_c.ii_of_params)
- let distrf_ini = distrf (Lib_parsing_c.ii_of_ini)
+ let distrf_ini = distrf (Lib_parsing_c.ii_of_ini)
+ let distrf_inis = distrf (Lib_parsing_c.ii_of_inis)
+ let distrf_decl = distrf (Lib_parsing_c.ii_of_decl)
+ let distrf_field = distrf (Lib_parsing_c.ii_of_field)
let distrf_node = distrf (Lib_parsing_c.ii_of_node)
- let distrf_struct_fields = distrf (Lib_parsing_c.ii_of_struct_fields)
- let distrf_cst = distrf (Lib_parsing_c.ii_of_cst)
+ let distrf_enum_fields = distrf (Lib_parsing_c.ii_of_enum_fields)
+ let distrf_struct_fields = distrf (Lib_parsing_c.ii_of_struct_fields)
+ let distrf_cst = distrf (Lib_parsing_c.ii_of_cst)
let distrf_define_params = distrf (Lib_parsing_c.ii_of_define_params)
then Lib_parsing_c.al_arguments a
else Lib_parsing_c.semi_al_arguments a))
+ | Ast_c.MetaDeclVal a ->
+ success
+ (Ast_c.MetaDeclVal
+ (if strip
+ then Lib_parsing_c.al_declaration a
+ else Lib_parsing_c.semi_al_declaration a))
+ | Ast_c.MetaFieldVal a ->
+ success
+ (Ast_c.MetaFieldVal
+ (if strip
+ then Lib_parsing_c.al_field a
+ else Lib_parsing_c.semi_al_field a))
| Ast_c.MetaStmtVal a ->
success
(Ast_c.MetaStmtVal
let value_format_flag f = fun tin ->
f (tin.extra.value_format_iso) tin
-
(* ------------------------------------------------------------------------*)
(* Tokens *)
(* ------------------------------------------------------------------------*)