comparison src/mule-charset.h @ 440:8de8e3f6228a r21-2-28

Import from CVS: tag r21-2-28
author cvs
date Mon, 13 Aug 2007 11:33:38 +0200
parents 84b14dcb0985
children abe6d1db359e
comparison
equal deleted inserted replaced
439:357dd071b03c 440:8de8e3f6228a
21 21
22 /* Synched up with: Mule 2.3. Not in FSF. */ 22 /* Synched up with: Mule 2.3. Not in FSF. */
23 23
24 /* Rewritten by Ben Wing <ben@xemacs.org>. */ 24 /* Rewritten by Ben Wing <ben@xemacs.org>. */
25 25
26 #ifndef _XEMACS_MULE_CHARSET_H 26 #ifndef INCLUDED_mule_charset_h_
27 #define _XEMACS_MULE_CHARSET_H 27 #define INCLUDED_mule_charset_h_
28 28
29 /* 29 /*
30 1. Character Sets 30 1. Character Sets
31 ================= 31 =================
32 32
454 { 454 {
455 struct lcrecord_header header; 455 struct lcrecord_header header;
456 456
457 int id; 457 int id;
458 Lisp_Object name; 458 Lisp_Object name;
459 Lisp_Object doc_string, registry, short_name, long_name; 459 Lisp_Object doc_string;
460 Lisp_Object registry;
461 Lisp_Object short_name;
462 Lisp_Object long_name;
460 463
461 Lisp_Object reverse_direction_charset; 464 Lisp_Object reverse_direction_charset;
462 465
463 Lisp_Object ccl_program; 466 Lisp_Object ccl_program;
464 467
487 unsigned int chars; 490 unsigned int chars;
488 491
489 /* Which half of font to be used to display this character set */ 492 /* Which half of font to be used to display this character set */
490 unsigned int graphic; 493 unsigned int graphic;
491 }; 494 };
492 495 typedef struct Lisp_Charset Lisp_Charset;
493 DECLARE_LRECORD (charset, struct Lisp_Charset); 496
494 #define XCHARSET(x) XRECORD (x, charset, struct Lisp_Charset) 497 DECLARE_LRECORD (charset, Lisp_Charset);
498 #define XCHARSET(x) XRECORD (x, charset, Lisp_Charset)
495 #define XSETCHARSET(x, p) XSETRECORD (x, p, charset) 499 #define XSETCHARSET(x, p) XSETRECORD (x, p, charset)
496 #define CHARSETP(x) RECORDP (x, charset) 500 #define CHARSETP(x) RECORDP (x, charset)
497 #define CHECK_CHARSET(x) CHECK_RECORD (x, charset) 501 #define CHECK_CHARSET(x) CHECK_RECORD (x, charset)
498 #define CONCHECK_CHARSET(x) CONCHECK_RECORD (x, charset) 502 #define CONCHECK_CHARSET(x) CONCHECK_RECORD (x, charset)
499 503
548 CHARSET_REVERSE_DIRECTION_CHARSET (XCHARSET (cs)) 552 CHARSET_REVERSE_DIRECTION_CHARSET (XCHARSET (cs))
549 553
550 struct charset_lookup { 554 struct charset_lookup {
551 /* Table of charsets indexed by leading byte. */ 555 /* Table of charsets indexed by leading byte. */
552 Lisp_Object charset_by_leading_byte[128]; 556 Lisp_Object charset_by_leading_byte[128];
553 557
554 /* Table of charsets indexed by type/final-byte/direction. */ 558 /* Table of charsets indexed by type/final-byte/direction. */
555 Lisp_Object charset_by_attributes[4][128][2]; 559 Lisp_Object charset_by_attributes[4][128][2];
556 }; 560 };
557 561
558 extern struct charset_lookup *chlook; 562 extern struct charset_lookup *chlook;
785 int copy_internal_to_external (CONST Bufbyte *internal, Bytecount len, 789 int copy_internal_to_external (CONST Bufbyte *internal, Bytecount len,
786 unsigned char *external); 790 unsigned char *external);
787 Bytecount copy_external_to_internal (CONST unsigned char *external, 791 Bytecount copy_external_to_internal (CONST unsigned char *external,
788 int len, Bufbyte *internal); 792 int len, Bufbyte *internal);
789 793
790 #endif /* _XEMACS_MULE_CHARSET_H */ 794 #endif /* INCLUDED_mule_charset_h_ */