X-Git-Url: http://git.hcoop.net/bpt/emacs.git/blobdiff_plain/8121e4813da7e5898eb216a5de3c17f4875cac61..92dca4df0956bc153431f79dbfdd0235c1f9fded:/src/composite.h diff --git a/src/composite.h b/src/composite.h index 53665b36bd..f01ae323c0 100644 --- a/src/composite.h +++ b/src/composite.h @@ -1,5 +1,5 @@ /* Header for composite sequence handler. - Copyright (C) 2001-2013 Free Software Foundation, Inc. + Copyright (C) 2001-2014 Free Software Foundation, Inc. Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 National Institute of Advanced Industrial Science and Technology (AIST) Registration Number H14PRO021 @@ -25,10 +25,9 @@ along with GNU Emacs. If not, see . */ #ifndef EMACS_COMPOSITE_H #define EMACS_COMPOSITE_H +#include "font.h" + INLINE_HEADER_BEGIN -#ifndef COMPOSITE_INLINE -# define COMPOSITE_INLINE INLINE -#endif /* Methods to display a sequence of components of a composition. */ enum composition_method { @@ -57,7 +56,7 @@ enum composition_method { They don't check validity of PROP. */ /* Return true if PROP is already registered. */ -COMPOSITE_INLINE bool +INLINE bool composition_registered_p (Lisp_Object prop) { return INTEGERP (XCAR (prop)); @@ -113,7 +112,7 @@ composition_registered_p (Lisp_Object prop) gref = (rule_code) / 12; \ if (gref > 12) gref = 11; \ nref = (rule_code) % 12; \ - } while (0) + } while (false) /* Like COMPOSITION_DECODE_REFS (RULE_CODE, GREF, NREF), but also decode RULE_CODE into XOFF and YOFF (vertical offset). */ @@ -123,7 +122,7 @@ composition_registered_p (Lisp_Object prop) xoff = (rule_code) >> 16; \ yoff = ((rule_code) >> 8) & 0xFF; \ COMPOSITION_DECODE_REFS (rule_code, gref, nref); \ - } while (0) + } while (false) /* Nonzero if the global reference point GREF and new reference point NREF are valid. */ @@ -205,7 +204,7 @@ extern void compose_text (ptrdiff_t, ptrdiff_t, Lisp_Object, Lisp_Object, /* Return the method of a composition with property PROP. */ -COMPOSITE_INLINE enum composition_method +INLINE enum composition_method composition_method (Lisp_Object prop) { if (composition_registered_p (prop)) @@ -224,7 +223,7 @@ composition_method (Lisp_Object prop) /* Given offsets START and END, return true if PROP is a valid composition property with length END - START. */ -COMPOSITE_INLINE bool +INLINE bool composition_valid_p (ptrdiff_t start, ptrdiff_t end, Lisp_Object prop) { return (CONSP (prop) @@ -260,7 +259,7 @@ composition_valid_p (ptrdiff_t start, ptrdiff_t end, Lisp_Object prop) #define LGSTRING_GLYPH_LEN(lgs) (ASIZE ((lgs)) - 2) #define LGSTRING_GLYPH(lgs, idx) AREF ((lgs), (idx) + 2) #define LGSTRING_SET_GLYPH(lgs, idx, val) ASET ((lgs), (idx) + 2, (val)) -COMPOSITE_INLINE Lisp_Object * +INLINE Lisp_Object * lgstring_glyph_addr (Lisp_Object lgs, ptrdiff_t idx) { return aref_addr (lgs, idx + 2); @@ -312,10 +311,6 @@ enum lglyph_indices #define LGLYPH_WADJUST(g) (VECTORP (LGLYPH_ADJUSTMENT (g)) \ ? XINT (AREF (LGLYPH_ADJUSTMENT (g), 2)) : 0) -struct composition_it; -struct face; -struct font_metrics; - extern Lisp_Object composition_gstring_put_cache (Lisp_Object, ptrdiff_t); extern Lisp_Object composition_gstring_from_id (ptrdiff_t); extern bool composition_gstring_p (Lisp_Object);