|
|
1.1 ! root 1: /* indent_globs.h 4.2 83/08/11 */ ! 2: ! 3: /* ! 4: ! 5: Copyright (C) 1976 ! 6: by the ! 7: Board of Trustees ! 8: of the ! 9: University of Illinois ! 10: ! 11: All rights reserved ! 12: ! 13: FILE NAME: ! 14: indent_globs.h ! 15: ! 16: PURPOSE: ! 17: This include file contains the declarations for all global variables ! 18: used in indent. ! 19: ! 20: GLOBALS: ! 21: The names of all of the variables will not be repeated here. The ! 22: declarations start on the next page. ! 23: ! 24: FUNCTIONS: ! 25: None ! 26: */ ! 27: #define bufsize 600/* size of internal buffers */ ! 28: #define inp_bufs 512 ! 29: /* size of input buffer */ ! 30: #define sc_size 5000 ! 31: /* size of save_com buffer */ ! 32: #define label_offset 2 ! 33: /* number of levels a label is placed to left of code ! 34: */ ! 35: ! 36: #define d_ljust 0 /* default for ljust_decl */ ! 37: #define d_max_col 75 ! 38: /* default for max_col */ ! 39: #define d_com_ind 33 ! 40: /* default com_ind */ ! 41: #define d_ind_size 4 ! 42: /* default ind_size */ ! 43: #define d_verbose 0/* default verbose */ ! 44: #define d_unindent 1 ! 45: /* default value for unindent_displace */ ! 46: #define d_leave_comma 0 ! 47: /* default value for leave_comma */ ! 48: #define d_btype_2 1/* default value for btype_2 */ ! 49: ! 50: #define tabsize 8 /* the size of a tab */ ! 51: #define tabmask 0177770 ! 52: /* mask used when figuring length of lines with tabs */ ! 53: ! 54: ! 55: #define false 0 ! 56: #define true 1 ! 57: ! 58: ! 59: int input; /* the fid for the input file */ ! 60: int output; /* the fid for the output file */ ! 61: ! 62: char labbuf[bufsize]; ! 63: /* buffer for label */ ! 64: char *s_lab; /* start ... */ ! 65: char *e_lab; /* .. and end of stored label */ ! 66: ! 67: char codebuf[bufsize]; ! 68: /* buffer for code section */ ! 69: char *s_code; /* start ... */ ! 70: char *e_code; /* .. and end of stored code */ ! 71: ! 72: char combuf[bufsize]; ! 73: /* buffer for comments */ ! 74: char *s_com; /* start ... */ ! 75: char *e_com; /* ... and end of stored comments */ ! 76: ! 77: char in_buffer[inp_bufs]; ! 78: /* input buffer */ ! 79: char *buf_ptr; /* ptr to next character to be taken from in_buffer */ ! 80: char *buf_end; /* ptr to first after last char in in_buffer */ ! 81: ! 82: char save_com[sc_size]; ! 83: /* input text is saved here when looking for the brace ! 84: after an if, while, etc */ ! 85: char *sc_end; /* pointer into save_com buffer */ ! 86: ! 87: char *bp_save; /* saved value of buf_ptr when taking input from ! 88: save_com */ ! 89: char *be_save; /* similarly saved value of buf_end */ ! 90: ! 91: char token[bufsize]; ! 92: /* the last token scanned */ ! 93: ! 94: ! 95: ! 96: ! 97: int bl_line; /* set to 1 by dump_line if the line is blank */ ! 98: int break_comma; ! 99: /* when true and not in parens, break after a comma */ ! 100: int btype_2; /* when true, brace should be on same line as if, ! 101: while, etc */ ! 102: int case_ind; /* indentation level to be used for a "case n:" */ ! 103: int code_lines;/* count of lines with code */ ! 104: int col_1; /* set to true if the last token started in column 1 */ ! 105: int com_col; /* this is the column in which the current coment ! 106: should start */ ! 107: int com_ind; /* the column in which comments to the right of code ! 108: should start */ ! 109: int com_lines; /* the number of lines with comments, set by dump_line ! 110: */ ! 111: int dec_nest; /* current nesting level for structure or init */ ! 112: int decl_com_ind; ! 113: /* the column in which comments after declarations ! 114: should be put */ ! 115: int decl_on_line; ! 116: /* set to true if this line of code has part of a ! 117: declaration on it */ ! 118: int had_eof; /* set to true when input is exhausted */ ! 119: int i_l_follow;/* the level to which ind_level should be set after the ! 120: current line is printed */ ! 121: int in_decl; /* set to true when we are in a declaration stmt. The ! 122: processing of braces is then slightly different */ ! 123: int in_stmt; /* set to 1 while in a stmt */ ! 124: int ind_level; /* the current indentation level */ ! 125: int ind_size; /* the size of one indentation level */ ! 126: int ind_stmt; /* set to 1 if next line should have an extra ! 127: indentation level because we are in the middle of a ! 128: stmt */ ! 129: int last_u_d; /* set to true after scanning a token which forces a ! 130: following operator to be unary */ ! 131: int leave_comma; ! 132: /* if true, never break declarations after commas */ ! 133: int line_no; /* the current line number. */ ! 134: int ljust_decl;/* true if declarations should be left justified */ ! 135: int max_col; /* the maximum allowable line length */ ! 136: int out_coms; /* the number of comments processed, set by pr_comment ! 137: */ ! 138: int out_lines; /* the number of lines written, set by dump_line */ ! 139: int p_l_follow;/* used to remember how to indent following statement ! 140: */ ! 141: int paren_level; ! 142: /* parenthesization level. used to indent within stmts ! 143: */ ! 144: int pcase; /* set to 1 if the current line label is a case. It is ! 145: printed differently from a regular label */ ! 146: int search_brace; ! 147: /* set to true by parse when it is necessary to buffer ! 148: up all info up to the start of a stmt after an if, ! 149: while, etc */ ! 150: int unindent_displace; ! 151: /* comments not to the right of code will be placed ! 152: this many indentation levels to the left of code */ ! 153: int use_ff; /* set to one if the current line should be terminated ! 154: with a form feed */ ! 155: int verbose; /* when true, non-essential error messages are printed ! 156: */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.