1 /* translation of file "gutil.k" */
5 #ifndef KC_FUNCTIONS_gutil_HEADER
6 #define KC_FUNCTIONS_gutil_HEADER
7 #include "k.h" /* in case a user forgets */
13 // The Termprocessor Kimwitu++
15 // Copyright (C) 1991 University of Twente, Dept TIOS.
16 // Copyright (C) 1998-2003 Humboldt-University of Berlin, Institute of Informatics
17 // All rights reserved.
19 // Kimwitu++ is free software; you can redistribute it and/or modify
20 // it under the terms of the GNU General Public License as published by
21 // the Free Software Foundation; either version 2 of the License, or
22 // (at your option) any later version.
24 // Kimwitu++ is distributed in the hope that it will be useful,
25 // but WITHOUT ANY WARRANTY; without even the implied warranty of
26 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27 // GNU General Public License for more details.
29 // You should have received a copy of the GNU General Public License
30 // along with Kimwitu++; if not, write to the Free Software
31 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
34 extern phylumdeclaration The_abstract_phylum_decl
;
35 extern phylumdeclaration The_abstract_phylum_ref_decl
;
36 extern phylumdeclaration The_abstract_list_decl
;
38 /* end included stuff */
42 bool f_something_to_initialize (Ccode_option cco
);
43 bool f_something_to_initialize (alternative a
);
44 bool f_NilCtexts (Ctexts c
);
45 bool f_constructors_in_operatordecl (alternative op
);
46 bool f_constructors_in_phylumdecl (phylumdeclaration ph
);
47 bool f_destructors_in_operatordecl (alternative op
);
48 bool f_destructors_in_phylumdecl (phylumdeclaration ph
);
49 bool f_no_params (ac_parameter_type_list p
);
50 bool f_post_create_in_operatordecl (alternative op
);
51 bool f_post_create_in_phylumdecl (phylumdeclaration ph
);
52 bool f_rewrite_in_phylumdecl (phylumdeclaration ph
);
53 bool f_rewrite_in_operatordecl (alternative op
);
54 ID
f_phylumofwithcasesinfo (withcasesinfo wcso
);
55 ID
f_phylumofpatternrepresentation (patternrepresentation a_patrep
);
56 ac_parameter_type_list
sort_extend_parameter_type_list (ac_declaration_list C_vardecls
, ac_declarator decl
);
57 ac_parameter_list
t_sort_extend_parameter_list (ac_declaration_list C_vardecls
, ac_identifier_list fn_args
, ac_parameter_list temp
);
58 void unparse (const char *s
, printer_functor printer_fn
, uview v
);
59 ID
f_mkselvar (const char *prefix
, int level
);
60 ID
f_mkselvar2 (const char *prefix
, int level
, int branch
);
61 char *f_mk_filename (casestring a_casestring
, const char *suffix
);
62 char *f_mk_filename (casestring a_casestring
, const string
&suffix
);
63 char *f_make_identifier_basename (const char *fn
);
64 rewriterulesinfo
f_rewriterulesinfoofalternativeinview (alternative a_alternative
, ID a_view
);
65 rewriteviewsinfo
f_rewriteviewsinfo_of_alternative (alternative a_alternative
, viewnames a_views
);
66 unparseviewsinfo
f_unparseviewsinfo_of_alternative (alternative a_alternative
, viewnames a_views
);
67 ID
f_typeof (path a_path
);
68 ID
f_operatorofpatternrepresentation (patternrepresentation a_patternrepresentation
);
69 ID
f_typeofunpsubterm (unpsubterm a_unpsubterm
, ID a_operator
);
70 elem_patternrepresentation
f_outmost_nl_preds_in_rewriterulesinfo (rewriterulesinfo ri
);
71 elem_patternrepresentation
f_outmost_nl_preds_in_unparsedeclsinfo (unparsedeclsinfo ri
);
72 bool f_is_known_ptr_type (ID id
);
73 withcasesinfo
rewrite_withcasesinfo (withcasesinfo a_withcasesinfo
);
74 int pos_of_sole_dollar_or_pattern_in_patternchain (patternchain a_patternchain
);
75 int t_pos_of_sole_dollar_or_pattern_in_patternchain (patternchain a_patternchain
, int tmp_result
, int pos
);
76 string
f_getidentfromstring (const char **c
);
80 #endif // ! KC_FUNCTIONS_gutil_HEADER