home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 22 gnu / 22-gnu.zip / fweb153.zip / fweb-1.53 / web / r_type.web < prev    next >
Text File  |  1995-09-23  |  5KB  |  133 lines

  1. @z --- r_type.web ---
  2.  
  3. FWEB version 1.53 (September 23, 1995)
  4.  
  5. Based on version 0.5 of S. Levy's CWEB [copyright (C) 1987 Princeton University]
  6.  
  7. @x-----------------------------------------------------------------------------
  8.  
  9.  
  10. \Title{R\_TYPE.WEB} % Prototypes for RATFOR.
  11.  
  12. @c 
  13. @* PROTOTYPES for {\tt RATFOR.WEB}.  The function prototypes are macroed
  14. up so that if |PROTOTYPES==1| (see \.{proto.hweb}) one gets full function
  15. prototyping; otherwise just old-style declarations.
  16.  
  17. @I formats.hweb
  18.  
  19. @I os.hweb
  20.  
  21. @ The make file produces \.{r\_type.h} from these prototypes.
  22.  
  23. @d OUT_MSG(msg,msg1) out_msg((CONST ASCII *)(msg),(CONST ASCII *)(msg1))  /*
  24.     Helps avoid compiler warning messages for pc's. */
  25.  
  26. @a
  27.  
  28. #include SFILE(c_type.h) /* Prototypes for \.{common.web}. */
  29.  
  30. #ifdef _ratfor_ 
  31.     boolean char_after PROTO((outer_char c));
  32.     outer_char HUGE *cmd_name PROTO((CMD cmd));
  33.     eight_bits copy_comment PROTO((boolean save_comments));
  34.     SRTN copyd PROTO((boolean to,
  35.             boolean xpn_cases,ASCII l,ASCII r,
  36.             boolean semi_allowed));
  37.     unsigned copy_2to PROTO((ASCII r_before,ASCII r_after));
  38.     SRTN expanding PROTO((CMD cmd));
  39.     eight_bits get_saved_output PROTO((stack_pointer stack_ptr0));
  40.     SRTN flush_comments PROTO((VOID));
  41.     SRTN id0 PROTO((sixteen_bits cur_val));
  42. #ifndef C_TYPES
  43.     name_pointer id_lookup PROTO((CONST ASCII HUGE *first,
  44.         CONST ASCII HUGE *last,    eight_bits t));
  45. #endif /* |C_TYPES| */
  46.     SRTN ini_out_tokens PROTO((SPEC HUGE *tokens));
  47.     STMT_LBL label_case PROTO((CASE_TYPE cmin,CASE_TYPE m));
  48.     SRTN not_loop PROTO((CONST outer_char id[],CONST outer_char msg[]));
  49.     SRTN not_switch PROTO((CONST outer_char s[]));
  50.     SRTN output_ended PROTO((CONST outer_char msg[],int n ELLIPSIS));
  51.     SRTN out_cmd PROTO((boolean emit_continue,
  52.         outer_char abbrev,CONST outer_char beginning[],
  53.         CONST outer_char *fmt0,int n ELLIPSIS));
  54.     SRTN out_label PROTO((boolean suppress_0,STMT_LBL stmt_num));
  55.     outer_char *qdelim PROTO((ASCII delim));
  56.     SRTN resize PROTO((eight_bits HUGE **pp,int nmax,
  57.         eight_bits HUGE **pq, eight_bits HUGE **pp_end));
  58.     int save_lbls PROTO((CMD cmd,STMT_LBL top0,STMT_LBL next0,
  59.         STMT_LBL break0,int n_used));
  60.     SRTN show_cmd PROTO((CONST CASE HUGE *cur_case));
  61.     SRTN stmt PROTO((boolean to,boolean brace_only));
  62.     SRTN unexpected PROTO((CONST outer_char id[]));
  63.     X_FCN x_block PROTO((VOID));
  64.     X_FCN x_blockdata PROTO((VOID));
  65.     X_FCN x_break PROTO((VOID));
  66.     X_FCN x_case PROTO((VOID));
  67.     X_FCN x_contains PROTO((VOID));
  68.     X_FCN x_default PROTO((VOID));
  69.     X_FCN x_do PROTO((VOID));
  70.     X_FCN x_else PROTO((VOID));
  71.     X_FCN x_els_if PROTO((VOID));
  72.     X_FCN x_end PROTO((VOID));
  73.     X_FCN x_en_if PROTO((VOID));
  74.     X_FCN x_en_interface PROTO((VOID));
  75.     X_FCN x_en_module PROTO((VOID));
  76.     X_FCN x_en_select PROTO((VOID));
  77.     X_FCN x_en_type PROTO((VOID));
  78.     X_FCN x_en_where PROTO((VOID));
  79.     X_FCN x_for PROTO((VOID));
  80.     X_FCN x_function PROTO((VOID));
  81.     X_FCN x_if PROTO((VOID));
  82.     X_FCN x_inter0face PROTO((VOID));
  83.     X_FCN x_interface PROTO((VOID));
  84.     X_FCN x_module PROTO((VOID));
  85.     X_FCN x_next PROTO((VOID));
  86.     X_FCN x_procedure PROTO((VOID));
  87.     X_FCN x_program PROTO((VOID));
  88.     X_FCN x_repeat PROTO((VOID));
  89.     X_FCN x_return PROTO((VOID));
  90.     SRTN x_stmt PROTO((VOID));
  91.     X_FCN x_subroutine PROTO((VOID));
  92.     X_FCN x_switch PROTO((VOID));
  93.     X_FCN x_then PROTO((VOID));
  94.     X_FCN x_type PROTO((VOID));
  95.     X_FCN x_until PROTO((VOID));
  96.     X_FCN x_where PROTO((VOID));
  97.     X_FCN x_while PROTO((VOID));
  98.     SRTN xpn_body PROTO((sixteen_bits token1,boolean scan_parens,
  99.         sixteen_bits token2));
  100.     boolean xpn_else PROTO((sixteen_bits id_x,sixteen_bits id_else_x,
  101.         sixteen_bits token1,boolean scan_parens,
  102.         sixteen_bits token2));
  103. #endif /* |_ratfor_| */
  104.  
  105. SRTN alloc_Rat PROTO((VOID));
  106. int chk_lbl PROTO((VOID));
  107. SRTN copy_out PROTO((CONST eight_bits HUGE *p0,
  108.         CONST eight_bits HUGE *p1,boolean is_expr));
  109. SRTN cp_fcn_body PROTO((VOID));
  110. SRTN didnt_expand PROTO((eight_bits c0,eight_bits c,CONST char *op));
  111. eight_bits get_output PROTO((VOID));
  112. SRTN ini_Ratfor PROTO((VOID));
  113. SRTN is_Rat_present PROTO((VOID));
  114. void HUGE *mac_lookup PROTO((sixteen_bits cur_val));
  115. outer_char HUGE *name_of PROTO((sixteen_bits id));
  116. SRTN out_msg PROTO((CONST ASCII *msg,CONST ASCII *msg1));
  117. SRTN out_ptrunc PROTO((sixteen_bits cur_val));
  118. CONST ASCII HUGE *proper_end PROTO((name_pointer np));
  119. SRTN RAT_error PROTO((ERR_TYPE err_type,CONST outer_char msg[],
  120.     int n ELLIPSIS));
  121. boolean Rat_OK PROTO((outer_char *msg));
  122. SRTN rst_last PROTO((VOID));
  123. SRTN skip_newlines PROTO((boolean save_comments));
  124. eight_bits HUGE *str_to_mb PROTO((CONST eight_bits HUGE *begin_arg,
  125.         CONST eight_bits HUGE *end_arg,boolean esc_chars));  
  126. SRTN x_mod_a PROTO((sixteen_bits a));
  127. SRTN x_special PROTO((VOID));
  128. eight_bits HUGE *xmacro PROTO((text_pointer macro_text,
  129.         eight_bits HUGE **pcur_byte,eight_bits HUGE *the_end,
  130.         eight_bits HUGE *mp0)); 
  131.  
  132. @ Index:
  133.