aboutsummaryrefslogtreecommitdiffstats
path: root/src/buffer.h
diff options
context:
space:
mode:
authorJoakim Verona2012-08-19 02:44:11 +0200
committerJoakim Verona2012-08-19 02:44:11 +0200
commit5436d1df5e2ba0b4d4f72b03a1cd09b20403654b (patch)
tree532faa27319b3bb199d414dc85e63a58246d30b0 /src/buffer.h
parentd02344322b0d2fea8dd9ad9dd0a6c70e058f967b (diff)
parente757f1c6f393cf82057dbee0a4325b07f0fd55c4 (diff)
downloademacs-5436d1df5e2ba0b4d4f72b03a1cd09b20403654b.tar.gz
emacs-5436d1df5e2ba0b4d4f72b03a1cd09b20403654b.zip
upstream
Diffstat (limited to 'src/buffer.h')
-rw-r--r--src/buffer.h117
1 files changed, 100 insertions, 17 deletions
diff --git a/src/buffer.h b/src/buffer.h
index 7a6bddee5ec..510a8e55682 100644
--- a/src/buffer.h
+++ b/src/buffer.h
@@ -477,7 +477,6 @@ struct buffer_text
477/* Most code should use this macro to access Lisp fields in struct buffer. */ 477/* Most code should use this macro to access Lisp fields in struct buffer. */
478 478
479#define BVAR(buf, field) ((buf)->INTERNAL_FIELD (field)) 479#define BVAR(buf, field) ((buf)->INTERNAL_FIELD (field))
480#define BSET(buf, field, value) ((buf)->INTERNAL_FIELD (field) = (value))
481 480
482/* This is the structure that the buffer Lisp object points to. */ 481/* This is the structure that the buffer Lisp object points to. */
483 482
@@ -862,6 +861,104 @@ struct buffer
862 Lisp_Object INTERNAL_FIELD (undo_list); 861 Lisp_Object INTERNAL_FIELD (undo_list);
863}; 862};
864 863
864/* Most code should use these functions to set Lisp fields in struct
865 buffer. */
866BUFFER_INLINE void
867bset_bidi_paragraph_direction (struct buffer *b, Lisp_Object val)
868{
869 b->INTERNAL_FIELD (bidi_paragraph_direction) = val;
870}
871BUFFER_INLINE void
872bset_case_canon_table (struct buffer *b, Lisp_Object val)
873{
874 b->INTERNAL_FIELD (case_canon_table) = val;
875}
876BUFFER_INLINE void
877bset_case_eqv_table (struct buffer *b, Lisp_Object val)
878{
879 b->INTERNAL_FIELD (case_eqv_table) = val;
880}
881BUFFER_INLINE void
882bset_directory (struct buffer *b, Lisp_Object val)
883{
884 b->INTERNAL_FIELD (directory) = val;
885}
886BUFFER_INLINE void
887bset_display_count (struct buffer *b, Lisp_Object val)
888{
889 b->INTERNAL_FIELD (display_count) = val;
890}
891BUFFER_INLINE void
892bset_display_time (struct buffer *b, Lisp_Object val)
893{
894 b->INTERNAL_FIELD (display_time) = val;
895}
896BUFFER_INLINE void
897bset_downcase_table (struct buffer *b, Lisp_Object val)
898{
899 b->INTERNAL_FIELD (downcase_table) = val;
900}
901BUFFER_INLINE void
902bset_enable_multibyte_characters (struct buffer *b, Lisp_Object val)
903{
904 b->INTERNAL_FIELD (enable_multibyte_characters) = val;
905}
906BUFFER_INLINE void
907bset_filename (struct buffer *b, Lisp_Object val)
908{
909 b->INTERNAL_FIELD (filename) = val;
910}
911BUFFER_INLINE void
912bset_keymap (struct buffer *b, Lisp_Object val)
913{
914 b->INTERNAL_FIELD (keymap) = val;
915}
916BUFFER_INLINE void
917bset_last_selected_window (struct buffer *b, Lisp_Object val)
918{
919 b->INTERNAL_FIELD (last_selected_window) = val;
920}
921BUFFER_INLINE void
922bset_local_var_alist (struct buffer *b, Lisp_Object val)
923{
924 b->INTERNAL_FIELD (local_var_alist) = val;
925}
926BUFFER_INLINE void
927bset_mark_active (struct buffer *b, Lisp_Object val)
928{
929 b->INTERNAL_FIELD (mark_active) = val;
930}
931BUFFER_INLINE void
932bset_point_before_scroll (struct buffer *b, Lisp_Object val)
933{
934 b->INTERNAL_FIELD (point_before_scroll) = val;
935}
936BUFFER_INLINE void
937bset_read_only (struct buffer *b, Lisp_Object val)
938{
939 b->INTERNAL_FIELD (read_only) = val;
940}
941BUFFER_INLINE void
942bset_truncate_lines (struct buffer *b, Lisp_Object val)
943{
944 b->INTERNAL_FIELD (truncate_lines) = val;
945}
946BUFFER_INLINE void
947bset_undo_list (struct buffer *b, Lisp_Object val)
948{
949 b->INTERNAL_FIELD (undo_list) = val;
950}
951BUFFER_INLINE void
952bset_upcase_table (struct buffer *b, Lisp_Object val)
953{
954 b->INTERNAL_FIELD (upcase_table) = val;
955}
956BUFFER_INLINE void
957bset_width_table (struct buffer *b, Lisp_Object val)
958{
959 b->INTERNAL_FIELD (width_table) = val;
960}
961
865 962
866/* Chain of all buffers, including killed ones. */ 963/* Chain of all buffers, including killed ones. */
867 964
@@ -953,7 +1050,7 @@ extern Lisp_Object Qfirst_change_hook;
953/* Get text properties of B. */ 1050/* Get text properties of B. */
954 1051
955BUFFER_INLINE INTERVAL 1052BUFFER_INLINE INTERVAL
956buffer_get_intervals (struct buffer *b) 1053buffer_intervals (struct buffer *b)
957{ 1054{
958 eassert (b->text != NULL); 1055 eassert (b->text != NULL);
959 return b->text->intervals; 1056 return b->text->intervals;
@@ -962,26 +1059,12 @@ buffer_get_intervals (struct buffer *b)
962/* Set text properties of B to I. */ 1059/* Set text properties of B to I. */
963 1060
964BUFFER_INLINE void 1061BUFFER_INLINE void
965buffer_set_intervals (struct buffer *b, INTERVAL i) 1062set_buffer_intervals (struct buffer *b, INTERVAL i)
966{ 1063{
967 eassert (b->text != NULL); 1064 eassert (b->text != NULL);
968 b->text->intervals = i; 1065 b->text->intervals = i;
969} 1066}
970 1067
971/* Set an appropriate overlay of B. */
972
973BUFFER_INLINE void
974buffer_set_overlays_before (struct buffer *b, struct Lisp_Overlay *o)
975{
976 b->overlays_before = o;
977}
978
979BUFFER_INLINE void
980buffer_set_overlays_after (struct buffer *b, struct Lisp_Overlay *o)
981{
982 b->overlays_after = o;
983}
984
985/* Non-zero if current buffer has overlays. */ 1068/* Non-zero if current buffer has overlays. */
986 1069
987BUFFER_INLINE int 1070BUFFER_INLINE int