# HG changeset patch # User Kenichi Handa # Date 885432405 0 # Node ID b5b97880b7d0972b6fe7bb5a782080652e030139 # Parent f084bb8d535f7de7bccb08618430c560d4433359 Definition of macros CCL_STAT_XXX are moved from ccl.c to here. (struct ccl_program): New member private_state. diff -r f084bb8d535f -r b5b97880b7d0 src/ccl.h --- a/src/ccl.h Thu Jan 22 01:26:45 1998 +0000 +++ b/src/ccl.h Thu Jan 22 01:26:45 1998 +0000 @@ -22,6 +22,14 @@ #ifndef _CCL_H #define _CCL_H +/* Macros for exit status of CCL program. */ +#define CCL_STAT_SUCCESS 0 /* Terminated successfully. */ +#define CCL_STAT_SUSPEND_BY_SRC 1 /* Terminated by empty input. */ +#define CCL_STAT_SUSPEND_BY_DST 2 /* Terminated by output buffer full. */ +#define CCL_STAT_INVALID_CMD 3 /* Terminated because of invalid + command. */ +#define CCL_STAT_QUIT 4 /* Terminated because of quit. */ + /* Structure to hold information about running CCL code. Read comments in the file ccl.c for the detail of each field. */ struct ccl_program { @@ -33,6 +41,11 @@ int reg[8]; /* CCL registers, reg[7] is used for condition flag of relational operations. */ + int private_state; /* CCL instruction may use this + for private use, mainly for preservation + internal states for suspending. + This variable is set to 0 when ccl is + set up. */ int last_block; /* Set to 1 while processing the last block. */ int status; /* Exit status of the CCL program. */