doc: use ASCII in .texi files where UTF-8 isn't needed
[gnulib.git] / lib / unigbrk.in.h
index 5310d6f..8335e5a 100644 (file)
@@ -1,5 +1,5 @@
 /* Grapheme cluster breaks in Unicode strings.
-   Copyright (C) 2010 Free Software Foundation, Inc.
+   Copyright (C) 2010-2014 Free Software Foundation, Inc.
    Written by Ben Pfaff <blp@cs.stanford.edu>, 2010.
 
    This program is free software: you can redistribute it and/or modify it
@@ -56,13 +56,14 @@ enum
 
 /* Return the Grapheme_Cluster_Break property of a Unicode character. */
 extern int
-       uc_graphemeclusterbreak_property (ucs4_t uc);
+       uc_graphemeclusterbreak_property (ucs4_t uc)
+       _UC_ATTRIBUTE_CONST;
 
 /* ========================================================================= */
 
 /* Grapheme cluster breaks.  */
 
-/* Returns true if there is an grapheme cluster boundary between Unicode code
+/* Returns true if there is a grapheme cluster boundary between Unicode code
    points A and B.  A "grapheme cluster" is an approximation to a
    user-perceived character, which sometimes corresponds to multiple code
    points.  For example, an English letter followed by an acute accent can be
@@ -76,35 +77,32 @@ extern int
    Use A == 0 or B == 0 to indicate start of text or end of text,
    respectively. */
 extern bool
-       uc_is_grapheme_cluster_break (ucs4_t a, ucs4_t b);
-
-/* Returns the length (in units) of the first grapheme cluster in the N units
-   in S.  If the return value is N, then extending the string could extend the
-   length of the grapheme cluster too.  Returns 0 only if N is zero. */
-extern size_t
-       u8_grapheme_len (const uint8_t *s, size_t n);
-extern size_t
-       u16_grapheme_len (const uint16_t *s, size_t n);
-extern size_t
-       u32_grapheme_len (const uint32_t *s, size_t n);
+       uc_is_grapheme_break (ucs4_t a, ucs4_t b)
+       _UC_ATTRIBUTE_CONST;
 
 /* Returns the start of the next grapheme cluster following S, or NULL if the
-   end of the string has ben reached. */
+   end of the string has been reached. */
 extern const uint8_t *
-       u8_grapheme_next (const uint8_t *s, const uint8_t *end);
+       u8_grapheme_next (const uint8_t *s, const uint8_t *end)
+       _UC_ATTRIBUTE_PURE;
 extern const uint16_t *
-       u16_grapheme_next (const uint16_t *s, const uint16_t *end);
+       u16_grapheme_next (const uint16_t *s, const uint16_t *end)
+       _UC_ATTRIBUTE_PURE;
 extern const uint32_t *
-       u32_grapheme_next (const uint32_t *s, const uint32_t *end);
+       u32_grapheme_next (const uint32_t *s, const uint32_t *end)
+       _UC_ATTRIBUTE_PURE;
 
 /* Returns the start of the previous grapheme cluster before S, or NULL if the
-   start of the string has ben reached. */
+   start of the string has been reached. */
 extern const uint8_t *
-       u8_grapheme_prev (const uint8_t *s, const uint8_t *start);
+       u8_grapheme_prev (const uint8_t *s, const uint8_t *start)
+       _UC_ATTRIBUTE_PURE;
 extern const uint16_t *
-       u16_grapheme_prev (const uint16_t *s, const uint16_t *start);
+       u16_grapheme_prev (const uint16_t *s, const uint16_t *start)
+       _UC_ATTRIBUTE_PURE;
 extern const uint32_t *
-       u32_grapheme_prev (const uint32_t *s, const uint32_t *start);
+       u32_grapheme_prev (const uint32_t *s, const uint32_t *start)
+       _UC_ATTRIBUTE_PURE;
 
 /* Determine the grapheme cluster boundaries in S, and store the result at
    p[0..n-1].  p[i] = 1 means that a new grapheme cluster begins at s[i].  p[i]