package diffast-langs-fortran-parsing

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type token = token
type production
type 'a env
type !'a checkpoint = private
  1. | InputNeeded of 'a env
  2. | Shifting of 'a env * 'a env * bool
  3. | AboutToReduce of 'a env * production
  4. | HandlingError of 'a env
  5. | Accepted of 'a
  6. | Rejected
type strategy = [
  1. | `Legacy
  2. | `Simplified
]
val resume : ?strategy:strategy -> 'a checkpoint -> 'a checkpoint
val lexer_lexbuf_to_supplier : (Lexing.lexbuf -> token) -> Lexing.lexbuf -> supplier
val loop : ?strategy:strategy -> supplier -> 'a checkpoint -> 'a
val loop_handle : ('a -> 'answer) -> ('a checkpoint -> 'answer) -> supplier -> 'a checkpoint -> 'answer
val loop_handle_undo : ('a -> 'answer) -> ('a checkpoint -> 'a checkpoint -> 'answer) -> supplier -> 'a checkpoint -> 'answer
val shifts : 'a checkpoint -> 'a env option
val acceptable : 'a checkpoint -> token -> MenhirLib.IncrementalEngine.position -> bool
type 'a lr1state
val number : 'a lr1state -> int
val production_index : production -> int
val find_production : int -> production
val stack : 'a env -> stack
val top : 'a env -> element option
val pop_many : int -> 'a env -> 'a env option
val get : int -> 'a env -> element option
val current_state_number : 'a env -> int
val equal : 'a env -> 'a env -> bool
val env_has_default_reduction : 'a env -> bool
val state_has_default_reduction : 'a lr1state -> bool
val pop : 'a env -> 'a env option
val force_reduction : production -> 'a env -> 'a env
val input_needed : 'a env -> 'a checkpoint
type !'a nonterminal =
  1. | N_xlf_source : F_xlf.Directive.source nonterminal
  2. | N_xlf_option : Ast.node nonterminal
  3. | N_xlf_factor : Ast.node nonterminal
  4. | N_xlf_directive : Ast.node nonterminal
  5. | N_xlf_cycle : string nonterminal
  6. | N_xlf_assertion : Ast.node nonterminal
  7. | N_xlf : Ast.node nonterminal
  8. | N_write_stmt_head2 : Ast.node list nonterminal
  9. | N_write_stmt_head : unit nonterminal
  10. | N_where_stmt : Ast.node nonterminal
  11. | N_where_construct_stmt : Ast.node nonterminal
  12. | N_where_construct_head : Ast.node nonterminal
  13. | N_where_construct : Ast.node nonterminal
  14. | N_where_body_construct : Ast.node nonterminal
  15. | N_wait_stmt_head : unit nonterminal
  16. | N_wait_spec : Ast.node nonterminal
  17. | N_use_stmt : Ast.node nonterminal
  18. | N_unlock_stmt_head : unit nonterminal
  19. | N_union_stmt : Ast.node nonterminal
  20. | N_union_decl : Ast.node nonterminal
  21. | N_type_spec_node : Ast.node nonterminal
  22. | N_type_spec_no_character : Ast.node nonterminal
  23. | N_type_spec : Ast.node nonterminal
  24. | N_type_param_value : Ast.node nonterminal
  25. | N_type_kw : unit nonterminal
  26. | N_type_is : unit nonterminal
  27. | N_type_guard_stmt : Ast.node nonterminal
  28. | N_type_guard_block : Ast.node nonterminal
  29. | N_type_declaration_stmt_head : (Ast.node * Ast.node option) nonterminal
  30. | N_type_declaration_stmt : Ast.node nonterminal
  31. | N_type_bound_procedure_stmt : Ast.node nonterminal
  32. | N_type_bound_procedure_part : Ast.node nonterminal
  33. | N_type_bound_proc_decl : Ast.node nonterminal
  34. | N_type_bound_proc_binding : Ast.node nonterminal
  35. | N_type_bound_generic_stmt : Ast.node nonterminal
  36. | N_tuple_head : unit nonterminal
  37. | N_tuple : Ast.node nonterminal
  38. | N_tb_contains_stmt : Ast.node nonterminal
  39. | N_target_stmt : Ast.node nonterminal
  40. | N_sync_stmt_part : Ast.node list nonterminal
  41. | N_sync_stat_OR_image_set : Ast.node nonterminal
  42. | N_suffix : Ast.node nonterminal
  43. | N_substring_range_OR_section_subscript_OR_actual_arg_spec : Ast.node nonterminal
  44. | N_substring_range : Ast.node nonterminal
  45. | N_subscriptorder_array : Ast.node nonterminal
  46. | N_subroutine_subprogram0 : (Ast.node * Ast.node list * string) nonterminal
  47. | N_subroutine_subprogram : Ast.node nonterminal
  48. | N_subroutine_stmt_head : (Ast.node list * string) nonterminal
  49. | N_subroutine_stmt : Ast.node nonterminal
  50. | N_subroutine_head0 : (Ast.Partial.spec * Ast.node) nonterminal
  51. | N_subroutine_head : (Ast.Partial.spec * Ast.node * string) nonterminal
  52. | N_subprograms : Ast.node list nonterminal
  53. | N_subprogram_part : Ast.node nonterminal
  54. | N_subprogram : Ast.node nonterminal
  55. | N_submodule_stmt : Ast.node nonterminal
  56. | N_submodule_head0 : Ast.node list nonterminal
  57. | N_submodule_head : Ast.node nonterminal
  58. | N_submodule : Ast.node nonterminal
  59. | N_structure_stmt_head : unit nonterminal
  60. | N_structure_stmt : Ast.node nonterminal
  61. | N_structure_decl : Ast.node nonterminal
  62. | N_stmt_end : unit nonterminal
  63. | N_stmt : Ast.node nonterminal
  64. | N_specification_stmt_no_access_stmt : Ast.node nonterminal
  65. | N_specification_stmt : Ast.node nonterminal
  66. | N_specification_part_construct_OR_execution_part_construct : Ast.node nonterminal
  67. | N_specification_part_construct : Ast.node nonterminal
  68. | N_special_token : unit nonterminal
  69. | N_special_symbol : unit nonterminal
  70. | N_spec_part_construct_OR_exec_part_constructs : (Ast.node list * Ast.node list * Ast.node list) nonterminal
  71. | N_simple_attr_stmt_head : string nonterminal
  72. | N_simple_attr_stmt : Ast.node nonterminal
  73. | N_sign_edit_desc_OR_blank_interp_edit_desc : F_control_edit_desc.t nonterminal
  74. | N_shape_spec : Ast.node nonterminal
  75. | N_sequence_stmt : Ast.node nonterminal
  76. | N_separated_nonempty_list_ioption_END_FRAGMENT__partial_subprogram_ : Ast.node list nonterminal
  77. | N_separated_nonempty_list_ioption_COMMA__SLASH__namelist_group_ : Ast.node list nonterminal
  78. | N_separated_nonempty_list_ioption_COMMA__SLASH__common_spec_ : Ast.node list nonterminal
  79. | N_separated_nonempty_list_ioption_COMMA__only_ : Ast.node list nonterminal
  80. | N_separated_nonempty_list_ioption_COMMA__omp_clause_ : Ast.node list nonterminal
  81. | N_separated_nonempty_list_ioption_COMMA__format_item_ : Ast.node list nonterminal
  82. | N_separated_nonempty_list_ioption_COMMA__dec_clause_ : Ast.node list nonterminal
  83. | N_separated_nonempty_list_ioption_COMMA__data_stmt_set_ : Ast.node list nonterminal
  84. | N_separated_nonempty_list_ioption_COMMA__acc_clause_ : Ast.node list nonterminal
  85. | N_separated_nonempty_list_component_sep_part_ref__ : Ast.node list list nonterminal
  86. | N_separated_nonempty_list_COMMA__SLASH_record_decl_ : Ast.node list nonterminal
  87. | N_separated_nonempty_list_COMMA_xlf_option_ : Ast.node list nonterminal
  88. | N_separated_nonempty_list_COMMA_xlf_assertion_ : Ast.node list nonterminal
  89. | N_separated_nonempty_list_COMMA_wait_spec_ : Ast.node list nonterminal
  90. | N_separated_nonempty_list_COMMA_var_or_ref_ : Ast.node list nonterminal
  91. | N_separated_nonempty_list_COMMA_type_bound_proc_decl_ : Ast.node list nonterminal
  92. | N_separated_nonempty_list_COMMA_type_attr_spec_ : Ast.node list nonterminal
  93. | N_separated_nonempty_list_COMMA_target_object_ : Ast.node list nonterminal
  94. | N_separated_nonempty_list_COMMA_sync_stat_OR_image_set_ : Ast.node list nonterminal
  95. | N_separated_nonempty_list_COMMA_substring_range_OR_section_subscript_OR_actual_arg_spec_ : Ast.node list nonterminal
  96. | N_separated_nonempty_list_COMMA_subscriptorder_array_ : Ast.node list nonterminal
  97. | N_separated_nonempty_list_COMMA_shape_spec_ : Ast.node list nonterminal
  98. | N_separated_nonempty_list_COMMA_saved_entity_ : Ast.node list nonterminal
  99. | N_separated_nonempty_list_COMMA_rename_ : Ast.node list nonterminal
  100. | N_separated_nonempty_list_COMMA_proc_decl_ : Ast.node list nonterminal
  101. | N_separated_nonempty_list_COMMA_proc_compo_attr_spec_ : Ast.node list nonterminal
  102. | N_separated_nonempty_list_COMMA_proc_attr_spec_ : Ast.node list nonterminal
  103. | N_separated_nonempty_list_COMMA_position_spec_OR_sync_stat_ : Ast.node list nonterminal
  104. | N_separated_nonempty_list_COMMA_position_spec_ : Ast.node list nonterminal
  105. | N_separated_nonempty_list_COMMA_pointer_object_ : Ast.node list nonterminal
  106. | N_separated_nonempty_list_COMMA_pointee_ : Ast.node list nonterminal
  107. | N_separated_nonempty_list_COMMA_omp_type_spec_ : Ast.node list nonterminal
  108. | N_separated_nonempty_list_COMMA_omp_list_item_ : Ast.node list nonterminal
  109. | N_separated_nonempty_list_COMMA_ocl_nn_ : F_ocl_directive.num_or_name list nonterminal
  110. | N_separated_nonempty_list_COMMA_ocl_directive_ : Ast.node list nonterminal
  111. | N_separated_nonempty_list_COMMA_object__ : Ast.node list nonterminal
  112. | N_separated_nonempty_list_COMMA_named_constant_def_ : Ast.node list nonterminal
  113. | N_separated_nonempty_list_COMMA_name_ : Ast.node list nonterminal
  114. | N_separated_nonempty_list_COMMA_lock_variable_OR_lock_stat_ : Ast.node list nonterminal
  115. | N_separated_nonempty_list_COMMA_letter_spec_ : Ast.node list nonterminal
  116. | N_separated_nonempty_list_COMMA_label_ : Ast.node list nonterminal
  117. | N_separated_nonempty_list_COMMA_ioption_substring_range_OR_section_subscript_OR_actual_arg_spec__ : Ast.node option list nonterminal
  118. | N_separated_nonempty_list_COMMA_ioption_expr__ : Ast.node option list nonterminal
  119. | N_separated_nonempty_list_COMMA_io_item_ : Ast.node list nonterminal
  120. | N_separated_nonempty_list_COMMA_io_control_spec_ : Ast.node list nonterminal
  121. | N_separated_nonempty_list_COMMA_int_literal_ : string list nonterminal
  122. | N_separated_nonempty_list_COMMA_inquire_spec_ : Ast.node list nonterminal
  123. | N_separated_nonempty_list_COMMA_independent_clause_ : Ast.node list nonterminal
  124. | N_separated_nonempty_list_COMMA_implicit_spec_ : Ast.node list nonterminal
  125. | N_separated_nonempty_list_COMMA_generic_spec_ : Ast.node list nonterminal
  126. | N_separated_nonempty_list_COMMA_forall_triplet_spec_OR_expr_ : Ast.node list nonterminal
  127. | N_separated_nonempty_list_COMMA_flush_spec_ : Ast.node list nonterminal
  128. | N_separated_nonempty_list_COMMA_expr_ : Ast.node list nonterminal
  129. | N_separated_nonempty_list_COMMA_explicit_shape_spec_ : Ast.node list nonterminal
  130. | N_separated_nonempty_list_COMMA_explicit_coshape_spec_ : Ast.node list nonterminal
  131. | N_separated_nonempty_list_COMMA_equivalence_set_ : Ast.node list nonterminal
  132. | N_separated_nonempty_list_COMMA_equivalence_object_ : Ast.node list nonterminal
  133. | N_separated_nonempty_list_COMMA_enumerator_ : Ast.node list nonterminal
  134. | N_separated_nonempty_list_COMMA_encode_decode_spec_ : Ast.node list nonterminal
  135. | N_separated_nonempty_list_COMMA_dummy_arg_ : Ast.node list nonterminal
  136. | N_separated_nonempty_list_COMMA_dimension_array_ : Ast.node list nonterminal
  137. | N_separated_nonempty_list_COMMA_define_file_spec_ : Ast.node list nonterminal
  138. | N_separated_nonempty_list_COMMA_deferred_shape_spec_ : Ast.node list nonterminal
  139. | N_separated_nonempty_list_COMMA_deferred_coshape_spec_ : Ast.node list nonterminal
  140. | N_separated_nonempty_list_COMMA_dec_var_expr_ : Ast.node list nonterminal
  141. | N_separated_nonempty_list_COMMA_dec_list_item_ : Ast.node list nonterminal
  142. | N_separated_nonempty_list_COMMA_dec_level_ : (int * int) list nonterminal
  143. | N_separated_nonempty_list_COMMA_dec_int_ : int list nonterminal
  144. | N_separated_nonempty_list_COMMA_dec_hint_ : Ast.node list nonterminal
  145. | N_separated_nonempty_list_COMMA_dec_clause_ : Ast.node list nonterminal
  146. | N_separated_nonempty_list_COMMA_dec_class_rule_ : string list nonterminal
  147. | N_separated_nonempty_list_COMMA_dec_att_ : Ast.node list nonterminal
  148. | N_separated_nonempty_list_COMMA_dec_a_ : Ast.node list nonterminal
  149. | N_separated_nonempty_list_COMMA_deallocate_stmt_part_ : Ast.node list nonterminal
  150. | N_separated_nonempty_list_COMMA_data_stmt_value_ : Ast.node list nonterminal
  151. | N_separated_nonempty_list_COMMA_data_stmt_object_ : Ast.node list nonterminal
  152. | N_separated_nonempty_list_COMMA_data_i_do_object_OR_variable_ : Ast.node list nonterminal
  153. | N_separated_nonempty_list_COMMA_cray_pointer_spec_ : Ast.node list nonterminal
  154. | N_separated_nonempty_list_COMMA_connect_spec_ : Ast.node list nonterminal
  155. | N_separated_nonempty_list_COMMA_component_decl_OR_entity_decl_ : (Ast.node option * Ast.node option * Ast.node) list nonterminal
  156. | N_separated_nonempty_list_COMMA_common_block_object_ : Ast.node list nonterminal
  157. | N_separated_nonempty_list_COMMA_collapse_array_ : Ast.node list nonterminal
  158. | N_separated_nonempty_list_COMMA_codimension_decl_ : Ast.node list nonterminal
  159. | N_separated_nonempty_list_COMMA_close_spec_ : Ast.node list nonterminal
  160. | N_separated_nonempty_list_COMMA_case_value_range_ : Ast.node list nonterminal
  161. | N_separated_nonempty_list_COMMA_binding_attr_ : Ast.node list nonterminal
  162. | N_separated_nonempty_list_COMMA_bind_entity_ : Ast.node list nonterminal
  163. | N_separated_nonempty_list_COMMA_attr_spec_ : Ast.node list nonterminal
  164. | N_separated_nonempty_list_COMMA_association_ : Ast.node list nonterminal
  165. | N_separated_nonempty_list_COMMA_allocate_stmt_part_ : Ast.node list nonterminal
  166. | N_separated_nonempty_list_COMMA_allocatable_array_ : Ast.node list nonterminal
  167. | N_separated_nonempty_list_COMMA_acc_list_item_ : Ast.node list nonterminal
  168. | N_separated_nonempty_list_COMMA_ac_value_ : Ast.node list nonterminal
  169. | N_separate_module_subprogram0 : (Ast.node * Ast.node list * string) nonterminal
  170. | N_separate_module_subprogram : Ast.node nonterminal
  171. | N_selector_part : Ast.node nonterminal
  172. | N_select_type_stmt : Ast.node nonterminal
  173. | N_select_type_construct : Ast.node nonterminal
  174. | N_select_case_stmt : Ast.node nonterminal
  175. | N_save_stmt_head : unit nonterminal
  176. | N_save_stmt : Ast.node nonterminal
  177. | N_rewrite_stmt_head2 : Ast.node list nonterminal
  178. | N_rewrite_stmt_head : unit nonterminal
  179. | N_rewind_stmt_head : unit nonterminal
  180. | N_result : Ast.node nonterminal
  181. | N_rename_OR_only : Ast.node list nonterminal
  182. | N_rename : Ast.node nonterminal
  183. | N_record_stmt_head : unit nonterminal
  184. | N_record_stmt : Ast.node nonterminal
  185. | N_record_decl : Ast.node nonterminal
  186. | N_real_literal : string nonterminal
  187. | N_read_stmt_head2 : Ast.node list nonterminal
  188. | N_read_stmt_head : unit nonterminal
  189. | N_read_OR_write_stmt_head2 : (Macro.kind * string * Ast.node list) nonterminal
  190. | N_read_OR_write_stmt_head : (Macro.kind * string) nonterminal
  191. | N_read_OR_print_stmt_head : string nonterminal
  192. | N_program_unit : Ast.node nonterminal
  193. | N_program_stmt_head : unit nonterminal
  194. | N_program_stmt : Ast.node nonterminal
  195. | N_program : Ast.node nonterminal
  196. | N_procedure_stmt : Ast.node nonterminal
  197. | N_procedure_kw : unit nonterminal
  198. | N_procedure_declaration_stmt : Ast.node nonterminal
  199. | N_proc_interface : Ast.node nonterminal
  200. | N_proc_decl : Ast.node nonterminal
  201. | N_proc_compo_attr_spec : Ast.node nonterminal
  202. | N_proc_attr_spec : Ast.node nonterminal
  203. | N_proc_attr_part : Ast.node list nonterminal
  204. | N_private_stmt : Ast.node nonterminal
  205. | N_private_sequence_stmt : Ast.node nonterminal
  206. | N_primary : Ast.node nonterminal
  207. | N_prefix_spec_no_type_spec : Ast.node nonterminal
  208. | N_pp_token : unit nonterminal
  209. | N_pp_macro_id : string nonterminal
  210. | N_pp_macro_const : string nonterminal
  211. | N_pp_ident : unit nonterminal
  212. | N_pp_directive : Ast.node nonterminal
  213. | N_pp_cond : unit nonterminal
  214. | N_pp_branch : unit nonterminal
  215. | N_position_spec : Ast.node nonterminal
  216. | N_pointer_stmt : Ast.node nonterminal
  217. | N_pointer_assignment_stmt : Ast.node nonterminal
  218. | N_pointee : Ast.node nonterminal
  219. | N_partial_variable : Ast.Partial.t nonterminal
  220. | N_partial_type_spec : Ast.Partial.t nonterminal
  221. | N_partial_type_declaration_stmt : Ast.Partial.t nonterminal
  222. | N_partial_type_bound_proc_part : Ast.Partial.t nonterminal
  223. | N_partial_subroutine_stmt_head : Ast.Partial.t nonterminal
  224. | N_partial_subroutine_head : Ast.Partial.t nonterminal
  225. | N_partial_subprograms : Ast.Partial.t nonterminal
  226. | N_partial_subprogram : Ast.node nonterminal
  227. | N_partial_stmts : Ast.Partial.t nonterminal
  228. | N_partial_specification_part : Ast.Partial.t nonterminal
  229. | N_partial_spec__exec : Ast.Partial.t nonterminal
  230. | N_partial_pu_tail : Ast.Partial.t nonterminal
  231. | N_partial_program_unit : Ast.Partial.t nonterminal
  232. | N_partial_program : Ast.Partial.t nonterminal
  233. | N_partial_onlys : Ast.Partial.t nonterminal
  234. | N_partial_interface_spec : Ast.Partial.t nonterminal
  235. | N_partial_function_stmt_head : Ast.Partial.t nonterminal
  236. | N_partial_function_stmt : Ast.Partial.t nonterminal
  237. | N_partial_function_head : Ast.Partial.t nonterminal
  238. | N_partial_expr : Ast.Partial.t nonterminal
  239. | N_partial_execution_part : Ast.Partial.t nonterminal
  240. | N_partial_derived_type_def_part : Ast.Partial.t nonterminal
  241. | N_partial_data_stmt_sets : Ast.Partial.t nonterminal
  242. | N_partial_case_block : Ast.Partial.t nonterminal
  243. | N_partial_assignment_stmt : Ast.Partial.t nonterminal
  244. | N_partial_action_stmt : Ast.Partial.t nonterminal
  245. | N_part_ref_ : Ast.node list nonterminal
  246. | N_part_name : Ast.node nonterminal
  247. | N_parameter_stmt : Ast.node nonterminal
  248. | N_parameter_format_entry_stmt : Ast.node nonterminal
  249. | N_or_operand : Ast.node nonterminal
  250. | N_optional_stmt_head : unit nonterminal
  251. | N_optional_stmt : Ast.node nonterminal
  252. | N_operator_defined_op : Ast.node nonterminal
  253. | N_open_stmt_head : unit nonterminal
  254. | N_opclist_substring_range_OR_section_subscript_OR_actual_arg_spec_ : Ast.node list nonterminal
  255. | N_opclist_expr_ : Ast.node list nonterminal
  256. | N_onlys : Ast.node list nonterminal
  257. | N_only_head : unit nonterminal
  258. | N_only : Ast.node nonterminal
  259. | N_omp_token : unit nonterminal
  260. | N_omp_reduction_op : Ast.node nonterminal
  261. | N_omp_policy : F_omp_clause.policy nonterminal
  262. | N_omp_nowait : Ast.node nonterminal
  263. | N_omp_map_type : F_omp_clause.map_type nonterminal
  264. | N_omp_list : Ast.node list nonterminal
  265. | N_omp_kind : F_omp_clause.kind nonterminal
  266. | N_omp_initializer_clause : Ast.node nonterminal
  267. | N_omp_if_clause : Ast.node nonterminal
  268. | N_omp_directive : Ast.node nonterminal
  269. | N_omp_dependence_type : F_omp_clause.dependence_type nonterminal
  270. | N_omp_construct_type : F_omp_directive.construct_type nonterminal
  271. | N_omp_combiner : Ast.node nonterminal
  272. | N_omp_clause : Ast.node nonterminal
  273. | N_omp_attr : F_omp_clause.data_sharing_attr nonterminal
  274. | N_omp_atomic : F_omp_directive.atomic_sub nonterminal
  275. | N_omp : Ast.node nonterminal
  276. | N_ocl_tuple : (F_ocl_directive.num_or_name option * F_ocl_directive.num_or_name list) nonterminal
  277. | N_ocl_scope : F_ocl_directive.listv_scope nonterminal
  278. | N_ocl_nn__colon : F_ocl_directive.num_or_name nonterminal
  279. | N_ocl_nn : F_ocl_directive.num_or_name nonterminal
  280. | N_ocl_directive : Ast.node nonterminal
  281. | N_ocl : Ast.node nonterminal
  282. | N_object_ : Ast.node nonterminal
  283. | N_null_ref : Ast.node nonterminal
  284. | N_nonempty_list_subroutine_head0_ : (Ast.Partial.spec * Ast.node) list nonterminal
  285. | N_nonempty_list_stmt_ : Ast.node list nonterminal
  286. | N_nonempty_list_program_unit_ : Ast.node list nonterminal
  287. | N_nonempty_list_prefix_spec_no_type_spec_ : Ast.node list nonterminal
  288. | N_nonempty_list_name_ : Ast.node list nonterminal
  289. | N_nonempty_list_map_decl_ : Ast.node list nonterminal
  290. | N_nonempty_list_function_head0_ : (Ast.Partial.spec * Ast.node) list nonterminal
  291. | N_nonempty_list_field_decl_ : Ast.node list nonterminal
  292. | N_nonempty_list_enumerator_def_stmt_ : Ast.node list nonterminal
  293. | N_nonempty_list_dec_option_ : string list nonterminal
  294. | N_nonempty_list_data_stmt_set__comma_opt_ : Ast.node list nonterminal
  295. | N_nonempty_list_comma__attr_spec_ : Ast.node list nonterminal
  296. | N_nonempty_list_case_stmt__block_ : Ast.node list nonterminal
  297. | N_nonempty_list_case_block_ : Ast.node list nonterminal
  298. | N_nonempty_list_TYPE_SPEC_ : (Ast.Partial.spec * Ast.node) list nonterminal
  299. | N_nonempty_list_SEMICOLON_ : unit list nonterminal
  300. | N_namelist_stmt_head : unit nonterminal
  301. | N_namelist_stmt : Ast.node nonterminal
  302. | N_namelist_group : Ast.node nonterminal
  303. | N_named_constant_def : Ast.node nonterminal
  304. | N_name : Ast.node nonterminal
  305. | N_mult_operand : Ast.node nonterminal
  306. | N_mp_subprogram_stmt : Ast.node nonterminal
  307. | N_module_stmt : Ast.node nonterminal
  308. | N_module_nature_part : Ast.node option nonterminal
  309. | N_module_nature : Ast.node nonterminal
  310. | N_module_ : Ast.node nonterminal
  311. | N_module0_ : Ast.node list nonterminal
  312. | N_masked_or_unmasked_elsewhere_stmt : Ast.node nonterminal
  313. | N_map_stmt : Ast.node nonterminal
  314. | N_map_decl : Ast.node nonterminal
  315. | N_main_program : Ast.node nonterminal
  316. | N_main : Ast.node nonterminal
  317. | N_lparen__omp_list__rparen : Ast.node list nonterminal
  318. | N_lparen__name__rparen : string nonterminal
  319. | N_loop_control : Ast.node nonterminal
  320. | N_logical_literal : string nonterminal
  321. | N_lock_variable_OR_lock_stat : Ast.node nonterminal
  322. | N_list_where_body_construct_ : Ast.node list nonterminal
  323. | N_list_type_guard_block_ : Ast.node list nonterminal
  324. | N_list_type_bound_proc_binding_ : Ast.node list nonterminal
  325. | N_list_subprogram_ : Ast.node list nonterminal
  326. | N_list_program_unit_ : Ast.node list nonterminal
  327. | N_list_private_sequence_stmt_ : Ast.node list nonterminal
  328. | N_list_prefix_spec_no_type_spec_ : Ast.node list nonterminal
  329. | N_list_masked_or_unmasked_elsewhere_block_ : Ast.node list nonterminal
  330. | N_list_interface_specification_ : Ast.node list nonterminal
  331. | N_list_forall_body_construct_ : Ast.node list nonterminal
  332. | N_list_derived_type_def_content_ : Ast.node list nonterminal
  333. | N_list_component_def_stmt_ : Ast.node list nonterminal
  334. | N_list_comma__attr_spec_ : Ast.node list nonterminal
  335. | N_linda_typeof : unit nonterminal
  336. | N_linda_formal : Ast.node nonterminal
  337. | N_linda_call : Ast.node nonterminal
  338. | N_linda_anonymous_formal_head : unit nonterminal
  339. | N_linda_anonymous_formal : Ast.node nonterminal
  340. | N_level_5_expr : Ast.node nonterminal
  341. | N_level_4_expr : Ast.node nonterminal
  342. | N_level_3_expr : Ast.node nonterminal
  343. | N_level_2_expr : Ast.node nonterminal
  344. | N_level_1_expr : Ast.node nonterminal
  345. | N_letter_spec : Ast.node nonterminal
  346. | N_length_selector : Ast.node nonterminal
  347. | N_language_binding_spec_head : unit nonterminal
  348. | N_language_binding_spec : Ast.node nonterminal
  349. | N_kind_selector : Ast.node nonterminal
  350. | N_ioctl_spec_kw : F_io_control_spec.t nonterminal
  351. | N_io_control_spec : Ast.node nonterminal
  352. | N_intrinsic_type_spec : Ast.node nonterminal
  353. | N_intrinsic_stmt : Ast.node nonterminal
  354. | N_intrinsic_op : F_generic_spec.t nonterminal
  355. | N_interface_stmt : Ast.node nonterminal
  356. | N_interface_specification : Ast.node nonterminal
  357. | N_interface_body : Ast.node nonterminal
  358. | N_interface_block : Ast.node nonterminal
  359. | N_interface : unit nonterminal
  360. | N_intent_stmt : Ast.node nonterminal
  361. | N_intent_spec : F_intent_spec.t nonterminal
  362. | N_intent : unit nonterminal
  363. | N_int_literal : string nonterminal
  364. | N_inquire_stmt_head : unit nonterminal
  365. | N_inquire_spec : Ast.node nonterminal
  366. | N_initialization : Ast.node nonterminal
  367. | N_independent_clause : Ast.node nonterminal
  368. | N_import_stmt : Ast.node nonterminal
  369. | N_implicit_stmt_head : unit nonterminal
  370. | N_implicit_stmt : Ast.node nonterminal
  371. | N_implicit_spec : Ast.node nonterminal
  372. | N_implicit_part_stmt_proper : Ast.node nonterminal
  373. | N_implicit_part_stmt_OR_declaration_construct : Ast.node nonterminal
  374. | N_image_selector : Ast.node nonterminal
  375. | N_if_then_stmt : Ast.node nonterminal
  376. | N_if__lparen__expr__rparen : Ast.node nonterminal
  377. | N_if__lparen__expr : Ast.node nonterminal
  378. | N_if_ : unit nonterminal
  379. | N_high_or_low : F_xlf.Directive.high_or_low nonterminal
  380. | N_generic_spec : Ast.node nonterminal
  381. | N_function_subprogram0 : (Ast.node * Ast.node list * string) nonterminal
  382. | N_function_subprogram : Ast.node nonterminal
  383. | N_function_stmt_head0 : (Ast.node list * string) nonterminal
  384. | N_function_stmt_head : (string * Ast.node list * Ast.node list) nonterminal
  385. | N_function_stmt : Ast.node nonterminal
  386. | N_function_head0 : (Ast.Partial.spec * Ast.node) nonterminal
  387. | N_function_head : (Ast.Partial.spec * Ast.node * string) nonterminal
  388. | N_fragment : Ast.node nonterminal
  389. | N_format_stmt_head : unit nonterminal
  390. | N_format_stmt : Ast.node nonterminal
  391. | N_format_specification : Ast.node nonterminal
  392. | N_format_item : Ast.node nonterminal
  393. | N_format_entry_stmt : Ast.node nonterminal
  394. | N_format : Ast.node nonterminal
  395. | N_forall_triplet_spec_OR_expr : Ast.node nonterminal
  396. | N_forall_stmt : Ast.node nonterminal
  397. | N_forall_header : Ast.node nonterminal
  398. | N_forall_construct_stmt : Ast.node nonterminal
  399. | N_forall_construct : Ast.node nonterminal
  400. | N_forall_body_construct : Ast.node nonterminal
  401. | N_forall_assignment_stmt : Ast.node nonterminal
  402. | N_flush_stmt_head : unit nonterminal
  403. | N_flush_spec : Ast.node nonterminal
  404. | N_find_stmt_head : unit nonterminal
  405. | N_final_procedure_stmt : Ast.node nonterminal
  406. | N_expr : Ast.node nonterminal
  407. | N_explicit_shape_spec : Ast.node nonterminal
  408. | N_explicit_coshape_spec : Ast.node nonterminal
  409. | N_execution_part_construct : Ast.node nonterminal
  410. | N_executable_construct : Ast.node nonterminal
  411. | N_equivalence_stmt : Ast.node nonterminal
  412. | N_equivalence_set : Ast.node nonterminal
  413. | N_equivalence_object : Ast.node nonterminal
  414. | N_equiv_operand : Ast.node nonterminal
  415. | N_enumerator_def_stmt : Ast.node nonterminal
  416. | N_enumerator : Ast.node nonterminal
  417. | N_enum_def_stmt : Ast.node nonterminal
  418. | N_enum_def : Ast.node nonterminal
  419. | N_enum_cst : Ast.node nonterminal
  420. | N_entry_stmt_sub : (Ast.node * Ast.node list) nonterminal
  421. | N_entry_stmt : Ast.node nonterminal
  422. | N_entity_name : Ast.node nonterminal
  423. | N_endfile_stmt_head : unit nonterminal
  424. | N_end_where_stmt : Ast.node nonterminal
  425. | N_end_union_stmt : Ast.node nonterminal
  426. | N_end_type_stmt : Ast.node nonterminal
  427. | N_end_subroutine_stmt_head : unit nonterminal
  428. | N_end_submodule_stmt_head : unit nonterminal
  429. | N_end_structure_stmt : Ast.node nonterminal
  430. | N_end_stmt_p : Ast.node nonterminal
  431. | N_end_stmt : Ast.node nonterminal
  432. | N_end_select_type_stmt : Ast.node nonterminal
  433. | N_end_select_stmt : Ast.node nonterminal
  434. | N_end_program_stmt_head : unit nonterminal
  435. | N_end_mp_subprogram_stmt_head : unit nonterminal
  436. | N_end_module_stmt_head : unit nonterminal
  437. | N_end_map_stmt : Ast.node nonterminal
  438. | N_end_interface_stmt : Ast.node nonterminal
  439. | N_end_interface : unit nonterminal
  440. | N_end_if_stmt : Ast.node nonterminal
  441. | N_end_function_stmt_head : unit nonterminal
  442. | N_end_forall_stmt : Ast.node nonterminal
  443. | N_end_enum_stmt : Ast.node nonterminal
  444. | N_end_do_stmt : Ast.node nonterminal
  445. | N_end_critical_stmt : Ast.node nonterminal
  446. | N_end_block_stmt : Ast.node nonterminal
  447. | N_end_block_data_stmt_head : unit nonterminal
  448. | N_end_associate_stmt : Ast.node nonterminal
  449. | N_encode_decode_stmt_head : F_stmt._t nonterminal
  450. | N_else_stmt : Ast.node nonterminal
  451. | N_else_if_stmt_head : Ast.node nonterminal
  452. | N_else_if_stmt : Ast.node nonterminal
  453. | N_else_if : unit nonterminal
  454. | N_dummy_arg : Ast.node nonterminal
  455. | N_dtype_args : Ast.node list nonterminal
  456. | N_do_stmt_head : string option nonterminal
  457. | N_do_stmt : Ast.node nonterminal
  458. | N_directive : Ast.node nonterminal
  459. | N_dimension_stmt_head : F_stmt._t nonterminal
  460. | N_dimension_stmt : Ast.node nonterminal
  461. | N_dimension_array : Ast.node nonterminal
  462. | N_derived_type_stmt : Ast.node nonterminal
  463. | N_derived_type_def_part : Ast.node list nonterminal
  464. | N_derived_type_def_content : Ast.node nonterminal
  465. | N_derived_type_def : Ast.node nonterminal
  466. | N_delete_stmt_head : unit nonterminal
  467. | N_define_file_spec : Ast.node nonterminal
  468. | N_declaration_construct_proper : Ast.node nonterminal
  469. | N_decl_type_spec_proper : Ast.node nonterminal
  470. | N_decl_type_spec : Ast.node nonterminal
  471. | N_dec_var_expr : Ast.node nonterminal
  472. | N_dec_prefetch_hint : Ast.node list nonterminal
  473. | N_dec_p : string nonterminal
  474. | N_dec_option : string nonterminal
  475. | N_dec_op : Ast.node nonterminal
  476. | N_dec_loop_count : (int list * Ast.node list) nonterminal
  477. | N_dec_list_p : Ast.node list nonterminal
  478. | N_dec_list_item : Ast.node nonterminal
  479. | N_dec_list : Ast.node list nonterminal
  480. | N_dec_level : (int * int) nonterminal
  481. | N_dec_iop : F_intrinsic_operator.t nonterminal
  482. | N_dec_int_spec : int nonterminal
  483. | N_dec_int : int nonterminal
  484. | N_dec_hint : Ast.node nonterminal
  485. | N_dec_directive : Ast.node nonterminal
  486. | N_dec_data_type : Ast.node nonterminal
  487. | N_dec_clause : Ast.node nonterminal
  488. | N_dec_class_rule : string nonterminal
  489. | N_dec_att : Ast.node nonterminal
  490. | N_dec_a : Ast.node nonterminal
  491. | N_dec : Ast.node nonterminal
  492. | N_data_stmt_value : Ast.node nonterminal
  493. | N_data_stmt_set__comma_opt : Ast.node nonterminal
  494. | N_data_stmt_set : Ast.node nonterminal
  495. | N_data_stmt_repeat__star : Ast.node nonterminal
  496. | N_data_stmt_repeat : Ast.node nonterminal
  497. | N_data_stmt_object : Ast.node nonterminal
  498. | N_data_stmt_head : unit nonterminal
  499. | N_data_stmt_constant : Ast.node nonterminal
  500. | N_data_stmt : Ast.node nonterminal
  501. | N_data_ref_ : Ast.node nonterminal
  502. | N_data_implied_do : Ast.node nonterminal
  503. | N_data_i_do_object_OR_variable : Ast.node nonterminal
  504. | N_critical_stmt : Ast.node nonterminal
  505. | N_critical_construct : Ast.node nonterminal
  506. | N_cray_pointer_spec : Ast.node nonterminal
  507. | N_control_edit_desc : Ast.node nonterminal
  508. | N_contains_stmt : Ast.node nonterminal
  509. | N_construct_name__colon : string nonterminal
  510. | N_constant : F_constant.t nonterminal
  511. | N_connect_spec_kw : F_connect_spec.t nonterminal
  512. | N_connect_spec : Ast.node nonterminal
  513. | N_computed_goto_stmt_head : unit nonterminal
  514. | N_component_sep : unit nonterminal
  515. | N_component_def_stmt : Ast.node nonterminal
  516. | N_component_decl_OR_entity_decl : (Ast.node option * Ast.node option * Ast.node) nonterminal
  517. | N_component_attr_part : Ast.node option nonterminal
  518. | N_complex_literal : (string * string) nonterminal
  519. | N_common_stmt_head : unit nonterminal
  520. | N_common_stmt : Ast.node nonterminal
  521. | N_common_spec : Ast.node nonterminal
  522. | N_common_name_part : Ast.node option nonterminal
  523. | N_common_block_object : Ast.node nonterminal
  524. | N_comma__module_nature : Ast.node nonterminal
  525. | N_colon__name : Ast.node nonterminal
  526. | N_collapse_array : Ast.node nonterminal
  527. | N_codimension_stmt_head : unit nonterminal
  528. | N_codimension_stmt : Ast.node nonterminal
  529. | N_codimension_decl : Ast.node nonterminal
  530. | N_coarray_spec_part : Ast.node nonterminal
  531. | N_coarray_spec : Ast.node nonterminal
  532. | N_close_stmt_head : unit nonterminal
  533. | N_close_spec1 : Ast.node nonterminal
  534. | N_close_spec : Ast.node nonterminal
  535. | N_class_is : unit nonterminal
  536. | N_character : unit nonterminal
  537. | N_char_selector_no_length_selector : Ast.node nonterminal
  538. | N_char_selector : Ast.node nonterminal
  539. | N_char_literal : string nonterminal
  540. | N_char_length_part : Ast.node nonterminal
  541. | N_char_length : Ast.node nonterminal
  542. | N_case_value_range : Ast.node nonterminal
  543. | N_case_stmt__block : Ast.node nonterminal
  544. | N_case_stmt : Ast.node nonterminal
  545. | N_case_selector : Ast.node nonterminal
  546. | N_case_construct : Ast.node nonterminal
  547. | N_case_block : Ast.node nonterminal
  548. | N_boz_literal : string nonterminal
  549. | N_block_stmt : Ast.node nonterminal
  550. | N_block_data_stmt : Ast.node nonterminal
  551. | N_block_data0 : Ast.node list nonterminal
  552. | N_block_data : Ast.node nonterminal
  553. | N_block_construct : Ast.node nonterminal
  554. | N_block : Ast.node list nonterminal
  555. | N_binding_private_stmt : Ast.node nonterminal
  556. | N_binding_attr_part : Ast.node list nonterminal
  557. | N_binding_attr : Ast.node nonterminal
  558. | N_bind_stmt : Ast.node nonterminal
  559. | N_backspace_stmt_head : unit nonterminal
  560. | N_attr_spec : Ast.node nonterminal
  561. | N_asynchronous_stmt_head : unit nonterminal
  562. | N_asynchronous_stmt : Ast.node nonterminal
  563. | N_association : Ast.node nonterminal
  564. | N_associate_stmt : Ast.node nonterminal
  565. | N_associate_construct : Ast.node nonterminal
  566. | N_assignment_stmt_head : Ast.node nonterminal
  567. | N_assignment_stmt : Ast.node nonterminal
  568. | N_array_spec : Ast.node nonterminal
  569. | N_array_constructor_head : unit nonterminal
  570. | N_array_constructor : Ast.node nonterminal
  571. | N_apollo_pointer_spec : Ast.node nonterminal
  572. | N_and_operand : Ast.node nonterminal
  573. | N_alt_return_spec : Ast.node nonterminal
  574. | N_allocate_ : unit nonterminal
  575. | N_allocatable_stmt : Ast.node nonterminal
  576. | N_add_operand : Ast.node nonterminal
  577. | N_action_stmt_no_assign : Ast.node nonterminal
  578. | N_action_stmt : Ast.node nonterminal
  579. | N_access_stmt_public : Ast.node nonterminal
  580. | N_access_stmt_private : Ast.node nonterminal
  581. | N_access_stmt : Ast.node nonterminal
  582. | N_accept_stmt_head : unit nonterminal
  583. | N_acc_op : Ast.node nonterminal
  584. | N_acc_list_item : Ast.node nonterminal
  585. | N_acc_list : Ast.node list nonterminal
  586. | N_acc_iop : F_intrinsic_operator.t nonterminal
  587. | N_acc_directive : Ast.node nonterminal
  588. | N_acc_clause : Ast.node nonterminal
  589. | N_acc_atomic : F_acc_directive.atomic_sub nonterminal
  590. | N_acc : Ast.node nonterminal
  591. | N_ac_spec : Ast.node list nonterminal
  592. | N__xlf : Ast.node nonterminal
  593. | N__write_stmt : Ast.node nonterminal
  594. | N__where_stmt : Ast.node nonterminal
  595. | N__where_construct_stmt : Ast.node nonterminal
  596. | N__wait_stmt : Ast.node nonterminal
  597. | N__use_stmt : Ast.node nonterminal
  598. | N__unlock_stmt : Ast.node nonterminal
  599. | N__union_stmt : Ast.node nonterminal
  600. | N__type_stmt : Ast.node nonterminal
  601. | N__type_guard_stmt : Ast.node nonterminal
  602. | N__type_declaration_stmt : Ast.node nonterminal
  603. | N__type_bound_procedure_stmt : Ast.node nonterminal
  604. | N__type_bound_generic_stmt : Ast.node nonterminal
  605. | N__tuple : Ast.node nonterminal
  606. | N__tb_contains_stmt : Ast.node nonterminal
  607. | N__target_stmt : Ast.node nonterminal
  608. | N__sync_xxx_stmt : Ast.node nonterminal
  609. | N__subroutine_subprogram : Ast.node nonterminal
  610. | N__subroutine_stmt : Ast.node nonterminal
  611. | N__submodule_stmt : Ast.node nonterminal
  612. | N__structure_stmt : Ast.node nonterminal
  613. | N__stop_stmt : Ast.node nonterminal
  614. | N__simple_attr_stmt : Ast.node nonterminal
  615. | N__sequence_stmt : Ast.node nonterminal
  616. | N__separate_module_subprogram : Ast.node nonterminal
  617. | N__select_type_stmt : Ast.node nonterminal
  618. | N__select_case_stmt : Ast.node nonterminal
  619. | N__save_stmt : Ast.node nonterminal
  620. | N__rewrite_stmt : Ast.node nonterminal
  621. | N__rewind_stmt : Ast.node nonterminal
  622. | N__return_stmt : Ast.node nonterminal
  623. | N__record_stmt : Ast.node nonterminal
  624. | N__read_stmt : Ast.node nonterminal
  625. | N__read_OR_write_stmt : Ast.node nonterminal
  626. | N__read_OR_print_stmt : Ast.node nonterminal
  627. | N__program_stmt : Ast.node nonterminal
  628. | N__procedure_stmt : Ast.node nonterminal
  629. | N__procedure_declaration_stmt : Ast.node nonterminal
  630. | N__proc_compo_attr_spec : F_proc_component_attr_spec.t nonterminal
  631. | N__private_stmt : Ast.node nonterminal
  632. | N__print_stmt : Ast.node nonterminal
  633. | N__prefix : Ast.node list nonterminal
  634. | N__pp_macro_stmt : Ast.node nonterminal
  635. | N__pointer_stmt : Ast.node nonterminal
  636. | N__pointer_assignment_stmt : Ast.node nonterminal
  637. | N__pause_stmt : Ast.node nonterminal
  638. | N__parameter_stmt : Ast.node nonterminal
  639. | N__optional_stmt : Ast.node nonterminal
  640. | N__open_stmt : Ast.node nonterminal
  641. | N__onlys : Ast.node list nonterminal
  642. | N__omp : Ast.node nonterminal
  643. | N__ocl_scope : F_ocl_directive.listv_scope nonterminal
  644. | N__ocl : Ast.node nonterminal
  645. | N__nullify_stmt : Ast.node nonterminal
  646. | N__namelist_stmt : Ast.node nonterminal
  647. | N__mp_subprogram_stmt : Ast.node nonterminal
  648. | N__module_stmt : Ast.node nonterminal
  649. | N__module_ : Ast.node nonterminal
  650. | N__masked_or_unmasked_elsewhere_stmt : Ast.node nonterminal
  651. | N__map_stmt : Ast.node nonterminal
  652. | N__main_program : Ast.node nonterminal
  653. | N__lock_stmt : Ast.node nonterminal
  654. | N__linda_anonymous_formal : Ast.node nonterminal
  655. | N__intrinsic_stmt : Ast.node nonterminal
  656. | N__interface_stmt : Ast.node nonterminal
  657. | N__intent_stmt : Ast.node nonterminal
  658. | N__inquire_stmt : Ast.node nonterminal
  659. | N__import_stmt : Ast.node nonterminal
  660. | N__implicit_stmt : Ast.node nonterminal
  661. | N__if_then_stmt : Ast.node nonterminal
  662. | N__if_stmt : Ast.node nonterminal
  663. | N__goto_stmt : Ast.node nonterminal
  664. | N__function_subprogram : Ast.node nonterminal
  665. | N__function_stmt : Ast.node nonterminal
  666. | N__format_stmt : Ast.node nonterminal
  667. | N__forall_stmt : Ast.node nonterminal
  668. | N__forall_construct_stmt : Ast.node nonterminal
  669. | N__forall_assignment_stmt : Ast.node nonterminal
  670. | N__flush_stmt : Ast.node nonterminal
  671. | N__find_stmt : Ast.node nonterminal
  672. | N__final_procedure_stmt : Ast.node nonterminal
  673. | N__exit_stmt : Ast.node nonterminal
  674. | N__error_stop_stmt : Ast.node nonterminal
  675. | N__equivalence_stmt : Ast.node nonterminal
  676. | N__enumerator_def_stmt : Ast.node nonterminal
  677. | N__enum_def_stmt : Ast.node nonterminal
  678. | N__entry_stmt : Ast.node nonterminal
  679. | N__endfile_stmt : Ast.node nonterminal
  680. | N__end_where_stmt : Ast.node nonterminal
  681. | N__end_union_stmt : Ast.node nonterminal
  682. | N__end_type_stmt : Ast.node nonterminal
  683. | N__end_subroutine_stmt : Ast.node nonterminal
  684. | N__end_submodule_stmt : Ast.node nonterminal
  685. | N__end_structure_stmt : Ast.node nonterminal
  686. | N__end_stmt_p : Ast.node nonterminal
  687. | N__end_stmt : Ast.node nonterminal
  688. | N__end_select_type_stmt : Ast.node nonterminal
  689. | N__end_select_stmt : Ast.node nonterminal
  690. | N__end_program_stmt : Ast.node nonterminal
  691. | N__end_mp_subprogram_stmt : Ast.node nonterminal
  692. | N__end_module_stmt : Ast.node nonterminal
  693. | N__end_map_stmt : Ast.node nonterminal
  694. | N__end_interface_stmt : Ast.node nonterminal
  695. | N__end_if_stmt : Ast.node nonterminal
  696. | N__end_function_stmt : Ast.node nonterminal
  697. | N__end_forall_stmt : Ast.node nonterminal
  698. | N__end_enum_stmt : Ast.node nonterminal
  699. | N__end_do_stmt : Ast.node nonterminal
  700. | N__end_critical_stmt : Ast.node nonterminal
  701. | N__end_block_stmt : Ast.node nonterminal
  702. | N__end_block_data_stmt : Ast.node nonterminal
  703. | N__end_associate_stmt : Ast.node nonterminal
  704. | N__encode_decode_stmt : Ast.node nonterminal
  705. | N__else_stmt : Ast.node nonterminal
  706. | N__else_if_stmt : Ast.node nonterminal
  707. | N__do_stmt : Ast.node nonterminal
  708. | N__dimension_stmt : Ast.node nonterminal
  709. | N__derived_type_stmt : Ast.node nonterminal
  710. | N__delete_stmt : Ast.node nonterminal
  711. | N__define_file_stmt : Ast.node nonterminal
  712. | N__dec : Ast.node nonterminal
  713. | N__deallocate_stmt : Ast.node nonterminal
  714. | N__data_stmt : Ast.node nonterminal
  715. | N__cycle_stmt : Ast.node nonterminal
  716. | N__critical_stmt : Ast.node nonterminal
  717. | N__continue_stmt : Ast.node nonterminal
  718. | N__contains_stmt : Ast.node nonterminal
  719. | N__computed_goto_stmt : Ast.node nonterminal
  720. | N__component_def_stmt : Ast.node nonterminal
  721. | N__common_stmt : Ast.node nonterminal
  722. | N__codimension_stmt : Ast.node nonterminal
  723. | N__close_stmt : Ast.node nonterminal
  724. | N__case_stmt : Ast.node nonterminal
  725. | N__call_stmt : Ast.node nonterminal
  726. | N__block_stmt : Ast.node nonterminal
  727. | N__block_data_stmt : Ast.node nonterminal
  728. | N__binding_private_stmt : Ast.node nonterminal
  729. | N__binding_attr : F_binding_attr.t nonterminal
  730. | N__bind_stmt : Ast.node nonterminal
  731. | N__backspace_stmt : Ast.node nonterminal
  732. | N__asynchronous_stmt : Ast.node nonterminal
  733. | N__associate_stmt : Ast.node nonterminal
  734. | N__assignment_stmt : Ast.node nonterminal
  735. | N__assigned_goto_stmt : Ast.node nonterminal
  736. | N__assign_stmt : Ast.node nonterminal
  737. | N__arithmetic_if_stmt : Ast.node nonterminal
  738. | N__allocate_stmt : Ast.node nonterminal
  739. | N__allocatable_stmt : Ast.node nonterminal
  740. | N__action_stmt_no_assign : Ast.node nonterminal
  741. | N__action_stmt : Ast.node nonterminal
  742. | N__access_stmt_public : Ast.node nonterminal
  743. | N__access_stmt_private : Ast.node nonterminal
  744. | N__accept_stmt : Ast.node nonterminal
  745. | N__acc : Ast.node nonterminal
type !'a symbol =
  1. | T : 'a0 terminal -> 'a0 symbol
  2. | N : 'a1 nonterminal -> 'a1 symbol
type xsymbol =
  1. | X : 'a symbol -> xsymbol
type item = production * int
val compare_terminals : 'a terminal -> 'b terminal -> int
val compare_nonterminals : 'a nonterminal -> 'b nonterminal -> int
val compare_symbols : xsymbol -> xsymbol -> int
val compare_productions : production -> production -> int
val compare_items : item -> item -> int
val incoming_symbol : 'a lr1state -> 'a symbol
val items : 'a lr1state -> item list
val lhs : production -> xsymbol
val rhs : production -> xsymbol list
val nullable : 'a nonterminal -> bool
val first : 'a nonterminal -> 'b terminal -> bool
val xfirst : xsymbol -> 'a terminal -> bool
val foreach_terminal : (xsymbol -> 'a -> 'a) -> 'a -> 'a
val foreach_terminal_but_error : (xsymbol -> 'a -> 'a) -> 'a -> 'a
OCaml

Innovation. Community. Security.