Mercurial > hg > xemacs-beta
diff src/extents.h @ 5118:e0db3c197671 ben-lisp-object
merge up to latest default branch, doesn't compile yet
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Sat, 26 Dec 2009 21:18:49 -0600 |
parents | 257b468bf2ca |
children | a9c41067dd88 |
line wrap: on
line diff
--- a/src/extents.h Sat Dec 26 00:20:27 2009 -0600 +++ b/src/extents.h Sat Dec 26 21:18:49 2009 -0600 @@ -23,7 +23,7 @@ #ifndef INCLUDED_extents_h_ #define INCLUDED_extents_h_ -DECLARE_LRECORD (extent, struct extent); +DECLARE_LISP_OBJECT (extent, struct extent); #define XEXTENT(x) XRECORD (x, extent, struct extent) #define wrap_extent(p) wrap_record (p, extent) #define EXTENTP(x) RECORDP (x, extent) @@ -32,7 +32,7 @@ struct extent_auxiliary; -DECLARE_LRECORD (extent_auxiliary, struct extent_auxiliary); +DECLARE_LISP_OBJECT (extent_auxiliary, struct extent_auxiliary); #define XEXTENT_AUXILIARY(x) \ XRECORD (x, extent_auxiliary, struct extent_auxiliary) #define wrap_extent_auxiliary(p) wrap_record (p, extent_auxiliary) @@ -42,13 +42,63 @@ struct extent_info; -DECLARE_LRECORD (extent_info, struct extent_info); +DECLARE_LISP_OBJECT (extent_info, struct extent_info); #define XEXTENT_INFO(x) XRECORD (x, extent_info, struct extent_info) #define wrap_extent_info(p) wrap_record (p, extent_info) #define EXTENT_INFOP(x) RECORDP (x, extent_info) #define CHECK_EXTENT_INFO(x) CHECK_RECORD (x, extent_info) #define CONCHECK_EXTENT_INFO(x) CONCHECK_RECORD (x, extent_info) +#ifdef NEW_GC +struct gap_array_marker; + +DECLARE_LISP_OBJECT (gap_array_marker, struct gap_array_marker); +#define XGAP_ARRAY_MARKER(x) \ + XRECORD (x, gap_array_marker, struct gap_array_marker) +#define wrap_gap_array_marker(p) wrap_record (p, gap_array_marker) +#define GAP_ARRAY_MARKERP(x) RECORDP (x, gap_array_marker) +#define CHECK_GAP_ARRAY_MARKER(x) CHECK_RECORD (x, gap_array_marker) +#define CONCHECK_GAP_ARRAY_MARKER(x) CONCHECK_RECORD (x, gap_array_marker) + +struct gap_array; + +DECLARE_LISP_OBJECT (gap_array, struct gap_array); +#define XGAP_ARRAY(x) XRECORD (x, gap_array, struct gap_array) +#define wrap_gap_array(p) wrap_record (p, gap_array) +#define GAP_ARRAYP(x) RECORDP (x, gap_array) +#define CHECK_GAP_ARRAY(x) CHECK_RECORD (x, gap_array) +#define CONCHECK_GAP_ARRAY(x) CONCHECK_RECORD (x, gap_array) + +struct extent_list_marker; + +DECLARE_LISP_OBJECT (extent_list_marker, struct extent_list_marker); +#define XEXTENT_LIST_MARKER(x) \ + XRECORD (x, extent_list_marker, struct extent_list_marker) +#define wrap_extent_list_marker(p) wrap_record (p, extent_list_marker) +#define EXTENT_LIST_MARKERP(x) RECORDP (x, extent_list_marker) +#define CHECK_EXTENT_LIST_MARKER(x) CHECK_RECORD (x, extent_list_marker) +#define CONCHECK_EXTENT_LIST_MARKER(x) CONCHECK_RECORD (x, extent_list_marker) + +struct extent_list; + +DECLARE_LISP_OBJECT (extent_list, struct extent_list); +#define XEXTENT_LIST(x) XRECORD (x, extent_list, struct extent_list) +#define wrap_extent_list(p) wrap_record (p, extent_list) +#define EXTENT_LISTP(x) RECORDP (x, extent_list) +#define CHECK_EXTENT_LIST(x) CHECK_RECORD (x, extent_list) +#define CONCHECK_EXTENT_LIST(x) CONCHECK_RECORD (x, extent_list) + +struct stack_of_extents; + +DECLARE_LISP_OBJECT (stack_of_extents, struct stack_of_extents); +#define XSTACK_OF_EXTENTS(x) \ + XRECORD (x, stack_of_extents, struct stack_of_extents) +#define wrap_stack_of_extents(p) wrap_record (p, stack_of_extents) +#define STACK_OF_EXTENTSP(x) RECORDP (x, stack_of_extents) +#define CHECK_STACK_OF_EXTENTS(x) CHECK_RECORD (x, stack_of_extents) +#define CONCHECK_STACK_OF_EXTENTS(x) CONCHECK_RECORD (x, stack_of_extents) +#endif /* NEW_GC */ + /* the layouts for glyphs (extent->flags.glyph_layout). Must fit in 2 bits. */ typedef enum glyph_layout { @@ -97,6 +147,8 @@ extern int inside_undo; extern int in_modeline_generation; +extern Fixnum mouse_highlight_priority; + EXFUN (Fextent_at, 5); EXFUN (Fextent_property, 3); EXFUN (Fput_text_property, 5); @@ -114,6 +166,9 @@ EXFUN (Fset_extent_endpoints, 4); EXFUN (Fset_extent_parent, 2); EXFUN (Fset_extent_property, 3); +EXFUN (Fset_extent_priority, 2); +EXFUN (Fset_extent_face, 2); +EXFUN (Fmap_extents, 8); enum extent_at_flag {