aboutsummaryrefslogtreecommitdiffstats
path: root/src/coding.h
diff options
context:
space:
mode:
authorPaul Eggert2012-08-27 09:19:34 -0700
committerPaul Eggert2012-08-27 09:19:34 -0700
commitf10fe38f772c29031a23ef7aa92d2de1b3675461 (patch)
tree5e45fef267903dafb4d2a92bd464ff851b3e3835 /src/coding.h
parent5474c384641da64d402e4d135dbf4697a60a70d3 (diff)
downloademacs-f10fe38f772c29031a23ef7aa92d2de1b3675461.tar.gz
emacs-f10fe38f772c29031a23ef7aa92d2de1b3675461.zip
* cmds.c, coding.c: Use bool for booleans.
* cmds.c (move_point, Fself_insert_command): * coding.h (struct composition status, struct coding_system): * coding.c (detect_coding_utf_8, encode_coding_utf_8) (detect_coding_utf_16, encode_coding_utf_16, detect_coding_emacs_mule) (emacs_mule_char, decode_coding_emacs_mule) (encode_coding_emacs_mule, detect_coding_iso_2022) (decode_coding_iso_2022, encode_invocation_designation) (encode_designation_at_bol, encode_coding_iso_2022) (detect_coding_sjis, detect_coding_big5, decode_coding_sjis) (decode_coding_big5, encode_coding_sjis, encode_coding_big5) (detect_coding_ccl, encode_coding_ccl, decode_coding_raw_text) (encode_coding_raw_text, detect_coding_charset) (decode_coding_charset, encode_coding_charset, detect_eol) (detect_coding, get_translation_table, produce_chars) (consume_chars, reused_workbuf_in_use) (make_conversion_work_buffer, code_conversion_save) (decode_coding_object, encode_coding_object) (detect_coding_system, char_encodable_p) (Funencodable_char_position, code_convert_region) (code_convert_string, code_convert_string_norecord) (Fset_coding_system_priority): * fileio.c (Finsert_file_contents): Use bool for booleans. * coding.h, lisp.h: Reflect above API changes. * coding.c: Remove unnecessary static function decls. (detect_coding): Use unsigned, not signed, to copy an unsigned field. (decode_coding, encode_coding, decode_coding_gap): Return 'void', not a boolean 'int', since callers never look at the return value. (ALLOC_CONVERSION_WORK_AREA): Assume caller returns 'void', not 'int'. * coding.h (decoding_buffer_size, encoding_buffer_size) (emacs_mule_string_char): Remove unused extern decls. (struct iso_2022_spec, struct coding_system): Use 'unsigned int : 1' for boolean fields, since there's more than one. (struct emacs_mule_spec): Remove unused field 'full_support'. All initializations removed. * cmds.c (internal_self_insert): Don't assume EMACS_INT fits in 'int'.
Diffstat (limited to 'src/coding.h')
-rw-r--r--src/coding.h49
1 files changed, 22 insertions, 27 deletions
diff --git a/src/coding.h b/src/coding.h
index 2987f19607b..c45d2ef86e2 100644
--- a/src/coding.h
+++ b/src/coding.h
@@ -321,7 +321,7 @@ struct composition_status
321{ 321{
322 enum composition_state state; 322 enum composition_state state;
323 enum composition_method method; 323 enum composition_method method;
324 int old_form; /* 0:pre-21 form, 1:post-21 form */ 324 bool old_form; /* true if pre-21 form */
325 int length; /* number of elements produced in charbuf */ 325 int length; /* number of elements produced in charbuf */
326 int nchars; /* number of characters composed */ 326 int nchars; /* number of characters composed */
327 int ncomps; /* number of composition components */ 327 int ncomps; /* number of composition components */
@@ -350,18 +350,18 @@ struct iso_2022_spec
350 there was an invalid designation previously. */ 350 there was an invalid designation previously. */
351 int current_designation[4]; 351 int current_designation[4];
352 352
353 /* Set to 1 temporarily only when graphic register 2 or 3 is invoked
354 by single-shift while encoding. */
355 int single_shifting;
356
357 /* Set to 1 temporarily only when processing at beginning of line. */
358 int bol;
359
360 /* If positive, we are now scanning CTEXT extended segment. */ 353 /* If positive, we are now scanning CTEXT extended segment. */
361 int ctext_extended_segment_len; 354 int ctext_extended_segment_len;
362 355
363 /* If nonzero, we are now scanning embedded UTF-8 sequence. */ 356 /* True temporarily only when graphic register 2 or 3 is invoked by
364 int embedded_utf_8; 357 single-shift while encoding. */
358 unsigned single_shifting : 1;
359
360 /* True temporarily only when processing at beginning of line. */
361 unsigned bol : 1;
362
363 /* If true, we are now scanning embedded UTF-8 sequence. */
364 unsigned embedded_utf_8 : 1;
365 365
366 /* The current composition. */ 366 /* The current composition. */
367 struct composition_status cmp_status; 367 struct composition_status cmp_status;
@@ -369,7 +369,6 @@ struct iso_2022_spec
369 369
370struct emacs_mule_spec 370struct emacs_mule_spec
371{ 371{
372 int full_support;
373 struct composition_status cmp_status; 372 struct composition_status cmp_status;
374}; 373};
375 374
@@ -470,10 +469,6 @@ struct coding_system
470 Lisp_Object dst_object; 469 Lisp_Object dst_object;
471 unsigned char *destination; 470 unsigned char *destination;
472 471
473 /* Set to 1 if the source of conversion is not in the member
474 `charbuf', but at `src_object'. */
475 int chars_at_source;
476
477 /* If an element is non-negative, it is a character code. 472 /* If an element is non-negative, it is a character code.
478 473
479 If it is in the range -128..-1, it is a 8-bit character code 474 If it is in the range -128..-1, it is a 8-bit character code
@@ -489,18 +484,21 @@ struct coding_system
489 int *charbuf; 484 int *charbuf;
490 int charbuf_size, charbuf_used; 485 int charbuf_size, charbuf_used;
491 486
487 /* True if the source of conversion is not in the member
488 `charbuf', but at `src_object'. */
489 unsigned chars_at_source : 1;
490
492 /* Set to 1 if charbuf contains an annotation. */ 491 /* Set to 1 if charbuf contains an annotation. */
493 int annotated; 492 unsigned annotated : 1;
494 493
495 unsigned char carryover[64]; 494 unsigned char carryover[64];
496 int carryover_bytes; 495 int carryover_bytes;
497 496
498 int default_char; 497 int default_char;
499 498
500 int (*detector) (struct coding_system *, 499 bool (*detector) (struct coding_system *, struct coding_detection_info *);
501 struct coding_detection_info *);
502 void (*decoder) (struct coding_system *); 500 void (*decoder) (struct coding_system *);
503 int (*encoder) (struct coding_system *); 501 bool (*encoder) (struct coding_system *);
504}; 502};
505 503
506/* Meanings of bits in the member `common_flags' of the structure 504/* Meanings of bits in the member `common_flags' of the structure
@@ -688,22 +686,20 @@ struct coding_system
688#define ENCODE_UTF_8(str) code_convert_string_norecord (str, Qutf_8, 1) 686#define ENCODE_UTF_8(str) code_convert_string_norecord (str, Qutf_8, 1)
689 687
690/* Extern declarations. */ 688/* Extern declarations. */
691extern Lisp_Object code_conversion_save (int, int); 689extern Lisp_Object code_conversion_save (bool, bool);
692extern int decoding_buffer_size (struct coding_system *, int);
693extern int encoding_buffer_size (struct coding_system *, int);
694extern void setup_coding_system (Lisp_Object, struct coding_system *); 690extern void setup_coding_system (Lisp_Object, struct coding_system *);
695extern Lisp_Object coding_charset_list (struct coding_system *); 691extern Lisp_Object coding_charset_list (struct coding_system *);
696extern Lisp_Object coding_system_charset_list (Lisp_Object); 692extern Lisp_Object coding_system_charset_list (Lisp_Object);
697extern Lisp_Object code_convert_string (Lisp_Object, Lisp_Object, 693extern Lisp_Object code_convert_string (Lisp_Object, Lisp_Object,
698 Lisp_Object, int, int, int); 694 Lisp_Object, bool, bool, bool);
699extern Lisp_Object code_convert_string_norecord (Lisp_Object, Lisp_Object, 695extern Lisp_Object code_convert_string_norecord (Lisp_Object, Lisp_Object,
700 int); 696 bool);
701extern Lisp_Object raw_text_coding_system (Lisp_Object); 697extern Lisp_Object raw_text_coding_system (Lisp_Object);
702extern Lisp_Object coding_inherit_eol_type (Lisp_Object, Lisp_Object); 698extern Lisp_Object coding_inherit_eol_type (Lisp_Object, Lisp_Object);
703extern Lisp_Object complement_process_encoding_system (Lisp_Object); 699extern Lisp_Object complement_process_encoding_system (Lisp_Object);
704 700
705extern int decode_coding_gap (struct coding_system *, 701extern void decode_coding_gap (struct coding_system *,
706 ptrdiff_t, ptrdiff_t); 702 ptrdiff_t, ptrdiff_t);
707extern void decode_coding_object (struct coding_system *, 703extern void decode_coding_object (struct coding_system *,
708 Lisp_Object, ptrdiff_t, ptrdiff_t, 704 Lisp_Object, ptrdiff_t, ptrdiff_t,
709 ptrdiff_t, ptrdiff_t, Lisp_Object); 705 ptrdiff_t, ptrdiff_t, Lisp_Object);
@@ -778,6 +774,5 @@ extern struct coding_system safe_terminal_coding;
778extern Lisp_Object Qcoding_system_error; 774extern Lisp_Object Qcoding_system_error;
779 775
780extern char emacs_mule_bytes[256]; 776extern char emacs_mule_bytes[256];
781extern int emacs_mule_string_char (unsigned char *);
782 777
783#endif /* EMACS_CODING_H */ 778#endif /* EMACS_CODING_H */