1 /* ====== BEGIN INCLUDE SEGMENT         apl_function_bead.incl.pl1 ================================ */
 2 
 3 /* This bead is used by apl to store the source code for user-defined functions */
 4 
 5 declare   1 function_bead               aligned based,
 6 
 7             2 header                    aligned like general_bead,
 8 
 9             2 lexed_function_bead_pointer unaligned pointer, /* null if unlexed or has errors, else -> lexed code */
10             2 class                     fixed bin,          /* 0=normal, 1=locked, 2=external zfn, 3=mfn, 4=dfn */
11             2 stop_control_pointer      unaligned ptr,      /* points to stop value bead, or null (no stop control) */
12             2 trace_control_pointer     unaligned ptr,      /* points to trace value bead, or null (no trace control) */
13             2 text_length               fixed bin(21),      /* length of function text */
14             2 text                      aligned char(data_elements refer (function_bead.text_length));
15                                                             /* the user's code exactly as typed in */
16 
17 /* ------ END INCLUDE SEGMENT           apl_function_bead.incl.pl1 -------------------------------- */