langdep.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /* $Id$ */
  2. /* language-dependent routines and formats, together in one structure: */
  3. struct langdep {
  4. /* language info: */
  5. int has_bool_type; /* set if language has a boolean type */
  6. /* formats (for fprintf): */
  7. char *decint_fmt; /* decimal ints (format for long) */
  8. char *octint_fmt; /* octal ints (format for long) */
  9. char *hexint_fmt; /* hexadecimal ints (format for long) */
  10. char *uns_fmt; /* unsigneds (format for long) */
  11. char *addr_fmt; /* address (format for long) */
  12. char *real_fmt; /* real (format for double) */
  13. /* display openers and closers: */
  14. char *open_array_display;
  15. char *close_array_display;
  16. char *open_struct_display;
  17. char *close_struct_display;
  18. char *open_set_display;
  19. char *close_set_display;
  20. /* language dependant routines: */
  21. int (*printstring)();
  22. int (*printchar)();
  23. long (*arrayelsize)();
  24. int (*binop_prio)();
  25. int (*unop_prio)();
  26. int (*get_string)();
  27. int (*get_name)();
  28. int (*get_number)();
  29. int (*get_token)();
  30. int (*printop)();
  31. int (*fix_bin_to_pref)();
  32. };
  33. extern struct langdep *m2_dep, *c_dep, *pascal_dep, *currlang;
  34. extern int find_language();
  35. extern int init_languages();