home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / oper_sys / emerald / emrldsys.lha / Kernel / h / builtins.h < prev    next >
Encoding:
C/C++ Source or Header  |  1990-08-17  |  1.0 KB  |  40 lines

  1. #ifndef builtins_h
  2. #define builtins_h
  3.  
  4. #define NUMBUILTINS 24
  5. #define BUILTINOBJECTBASE         ((OID) 0xff000000)
  6. #define ATOFBUILTINOBJECTBASE         ((OID) 0xff000020)
  7. #define CTOFBUILTINOBJECTBASE        ((OID) 0xff000040)
  8. #define INSTATOFBUILTINOBJECTBASE     ((OID) 0xff000060)
  9. #define INSTCTOFBUILTINOBJECTBASE     ((OID) 0xff000080)
  10.  
  11. #define ABSTRACTTYPEINDEX 0
  12. #define ANYINDEX 1
  13. #define ARRAYINDEX 2
  14. #define BOOLEANINDEX 3
  15. #define CHARACTERINDEX 4
  16. #define CONDITIONINDEX 5
  17. #define INTEGERINDEX 6
  18. #define NILINDEX 7
  19. #define NODEINDEX 8
  20. #define SIGNATUREINDEX 9
  21. #define REALINDEX 10
  22. #define STRINGINDEX 11
  23. #define VECTORINDEX 12
  24. #define TIMEINDEX 13
  25. #define NODELISTELEMENTINDEX 14
  26. #define NODELISTINDEX 15
  27. #define INSTREAMINDEX 16
  28. #define OUTSTREAMINDEX 17
  29. #define IMMUTABLEVECTORINDEX 18
  30. #define BITCHUNKINDEX 19
  31. #define RISCINDEX 20
  32. #define HANDLERINDEX 21
  33. #define VECTOROFCHARINDEX 22
  34. #define BUFFERINDEX 23
  35.  
  36. typedef enum { B_IT, B_ITSAT, B_ITSCT, B_INSTAT, B_INSTCT } B_tag;
  37. #define OIDOfBuiltin(tag, index) \
  38.     ((OID) 0xff000000 + ((unsigned) tag * 0x20) + (unsigned) index)
  39. #endif
  40.