home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1994 March / Source_Code_CD-ROM_Walnut_Creek_March_1994.iso / win3 / patches / symantec / rtlinc.exe / GENERIC.H < prev    next >
C/C++ Source or Header  |  1991-02-04  |  792b  |  24 lines

  1. /*_ generic.hpp   Tue Jul  5 1988   Modified by: Walter Bright */
  2.  
  3. #ifndef __GENERIC_H
  4. #define __GENERIC_H    1
  5.  
  6. /* Name concatenator functions    */
  7. #define name2(n1,n2)        n1 ## n2
  8. #define name3(n1,n2,n3)        n1 ## n2 ## n3
  9. #define name4(n1,n2,n3,n4)    n1 ## n2 ## n3 ## n4
  10.  
  11. typedef int (*GPT)    (int,char *);
  12. extern  int genericerror(int,char *);
  13.  
  14. #define set_handler(generic,type,x)    set_##type##generic##_handler(x)
  15. #define errorhandler(generic,type)    type##generic##handler
  16. #define callerror(generic,type,a,b)    (*errorhandler(generic,type))(a,b)
  17.  
  18. #define declare(a,type)            a##declare(type)
  19. #define implement(a,type)        a##implement(type)
  20. #define declare2(a,type1,type2)        a##declare2(type1,type2)
  21. #define implement2(a,type1,type2)    a##implement2(type1,type2)
  22.  
  23. #endif /* __GENERIC_H */
  24.