Bringing ChocolateCaste-0.7 into the main branch.
[AROS-Contrib.git] / rexx / inc / trace.h
blob5b394a46916abc503a3f6d77cf7598bd189ffd18
1 /*
2 * $Header$
3 * $Log$
4 * Revision 1.1 2001/04/04 05:43:37 wang
5 * First commit: compiles on Linux, Amiga, Windows, Windows CE, generic gcc
7 * Revision 1.2 1999/11/29 14:58:00 bnv
8 * Changed: Some defines
10 * Revision 1.1 1998/07/02 17:35:50 bnv
11 * Initial revision
15 #ifndef __TRACE_H__
16 #define __TRACE_H__
18 #include <lstring.h>
20 #ifdef __TRACE_C__
21 # define EXTERN
22 #else
23 # define EXTERN extern
24 #endif
27 /* ------------------ tracing --------------------- */
28 enum tracetype { all_trace = BIT0,
29 commands_trace = BIT1,
30 error_trace = BIT2,
31 intermediates_trace = BIT3,
32 labels_trace = BIT4,
33 normal_trace = BIT5,
34 off_trace = BIT6,
35 results_trace = BIT7,
36 scan_trace = BIT8
39 #define AIR_TRACE ( all_trace | intermediates_trace | results_trace )
41 /* =============== TRACE BYTE IN CODE ==================== *
42 * Bit Description
43 * 7 Marks start of a clause
44 * 6 End of Clause
45 * 5 Result trace display
46 * 4 - Not used -
47 * 3 - Not used -
48 * 2 middle character marker bit-2
49 * 1 middle character marker bit-1
50 * 0 middle character marker bit-0
53 /* ---- will use the 3 last bits ---- */
54 enum MiddleCharType { nothing_middle = 0,
55 other_middle = 1,
56 litteral_middle = 2,
57 variable_middle = 3,
58 compound_middle = 4,
59 operator_middle = 5,
60 function_middle = 6,
61 dot_middle = 7
64 #define TB_TRACE BIT7
65 #define TB_RESULT BIT6
66 #define TB_MIDDLECHAR MASK3
68 /* ------------------- Function Prototypes ------------------ */
69 int TraceCurline( RxFile **rxf, int print );
70 void TraceSet( PLstr );
71 void TraceByte( int middlechar );
72 void TraceClause( void );
73 void TraceInstruction( byte inst );
74 int TraceInteractive( int );
76 #undef EXTERN
77 #endif