diff options
| author | Max Horn | 2010-06-10 15:25:36 +0000 |
|---|---|---|
| committer | Max Horn | 2010-06-10 15:25:36 +0000 |
| commit | 874151f5d12d86557dbea3bde180dbba0dfd4a2c (patch) | |
| tree | 264fd939d56d028a3fcd1fee4489ba8c9e75eecf /engines/sci/engine/kernel.h | |
| parent | 8295eb09cd7f0a62359631ab4b1975b2b6364bf3 (diff) | |
| download | scummvm-rg350-874151f5d12d86557dbea3bde180dbba0dfd4a2c.tar.gz scummvm-rg350-874151f5d12d86557dbea3bde180dbba0dfd4a2c.tar.bz2 scummvm-rg350-874151f5d12d86557dbea3bde180dbba0dfd4a2c.zip | |
SCI: Cleanup kernel signature code a bit.
* Moved KSIG_SPEC_* from kernel.h to kernel.cpp
* Clarified the comment on KSIG_SPEC_* a bit
* Changed the other KSIG_ #defines into an enum
* Removed KSIG_TERMINATOR and KSIG_SPEC_ARITMETIC (sic)
svn-id: r49578
Diffstat (limited to 'engines/sci/engine/kernel.h')
| -rw-r--r-- | engines/sci/engine/kernel.h | 40 |
1 files changed, 12 insertions, 28 deletions
diff --git a/engines/sci/engine/kernel.h b/engines/sci/engine/kernel.h index c5513f1240..fc4b51f4ee 100644 --- a/engines/sci/engine/kernel.h +++ b/engines/sci/engine/kernel.h @@ -95,36 +95,20 @@ struct List; // from segment.h //#define DISABLE_VALIDATIONS // enable to stop validation checks // ---- Kernel signatures ----------------------------------------------------- -#define KSIG_TERMINATOR 0 - -// Uncompiled signatures -#define KSIG_SPEC_ARITMETIC 'i' -#define KSIG_SPEC_LIST 'l' -#define KSIG_SPEC_NODE 'n' -#define KSIG_SPEC_OBJECT 'o' -#define KSIG_SPEC_REF 'r' // Said Specs and strings -#define KSIG_SPEC_ARITHMETIC 'i' -#define KSIG_SPEC_NULL 'z' -#define KSIG_SPEC_ANY '.' -#define KSIG_SPEC_ELLIPSIS '*' // Arbitrarily more TYPED arguments - -#define KSIG_SPEC_SUM_DONE ('a' - 'A') // Use small letters to indicate end of sum type -/* Use capital letters for sum types, e.g. -** "LNoLr" for a function which takes two arguments: -** (1) list, node or object -** (2) list or ref -*/ + // Compiled signatures -#define KSIG_LIST 0x01 -#define KSIG_NODE 0x02 -#define KSIG_OBJECT 0x04 -#define KSIG_REF 0x08 -#define KSIG_ARITHMETIC 0x10 - -#define KSIG_NULL 0x40 -#define KSIG_ANY 0x5f -#define KSIG_ELLIPSIS 0x80 +enum { + KSIG_LIST = 0x01, + KSIG_NODE = 0x02, + KSIG_OBJECT = 0x04, + KSIG_REF = 0x08, + KSIG_ARITHMETIC = 0x10, + KSIG_NULL = 0x40, + KSIG_ANY = 0x5f, + KSIG_ELLIPSIS = 0x80 +}; + // ---------------------------------------------------------------------------- /* Generic description: */ |
