Blame


1 3448adb0 2022-11-02 op if [ "$ENCODING" = "utf8" ]; then
2 3448adb0 2022-11-02 op UNIT="byte"
3 3448adb0 2022-11-02 op ARRAYTYPE="UTF-8-encoded string"
4 3448adb0 2022-11-02 op SUFFIX="_utf8"
5 3448adb0 2022-11-02 op ANTISUFFIX=""
6 3448adb0 2022-11-02 op DATATYPE="char"
7 3448adb0 2022-11-02 op else
8 3448adb0 2022-11-02 op UNIT="codepoint"
9 3448adb0 2022-11-02 op ARRAYTYPE="codepoint array"
10 3448adb0 2022-11-02 op SUFFIX=""
11 3448adb0 2022-11-02 op ANTISUFFIX="_utf8"
12 3448adb0 2022-11-02 op DATATYPE="uint_least32_t"
13 3448adb0 2022-11-02 op fi
14 3448adb0 2022-11-02 op
15 3448adb0 2022-11-02 op cat << EOF
16 3448adb0 2022-11-02 op .Dd ${MAN_DATE}
17 3448adb0 2022-11-02 op .Dt GRAPHEME_IS_$(printf "%s%s" "$CASE" "$SUFFIX" | tr [:lower:] [:upper:]) 3
18 3448adb0 2022-11-02 op .Os suckless.org
19 3448adb0 2022-11-02 op .Sh NAME
20 3448adb0 2022-11-02 op .Nm grapheme_is_${CASE}${SUFFIX}
21 3448adb0 2022-11-02 op .Nd check if ${ARRAYTYPE} is ${CASE}
22 3448adb0 2022-11-02 op .Sh SYNOPSIS
23 3448adb0 2022-11-02 op .In grapheme.h
24 3448adb0 2022-11-02 op .Ft size_t
25 3448adb0 2022-11-02 op .Fn grapheme_is_${CASE}${SUFFIX} "const ${DATATYPE} *str" "size_t len" "size_t *caselen"
26 3448adb0 2022-11-02 op .Sh DESCRIPTION
27 3448adb0 2022-11-02 op The
28 3448adb0 2022-11-02 op .Fn grapheme_is_${CASE}${SUFFIX}
29 3448adb0 2022-11-02 op function checks if the ${ARRAYTYPE}
30 3448adb0 2022-11-02 op .Va str
31 3448adb0 2022-11-02 op is ${CASE} and writes the length of the matching ${CASE}-sequence to the integer pointed to by
32 3448adb0 2022-11-02 op .Va caselen ,
33 3448adb0 2022-11-02 op unless
34 3448adb0 2022-11-02 op .Va caselen
35 3448adb0 2022-11-02 op is set to
36 3448adb0 2022-11-02 op .Dv NULL .
37 3448adb0 2022-11-02 op .Pp
38 3448adb0 2022-11-02 op If
39 3448adb0 2022-11-02 op .Va len
40 3448adb0 2022-11-02 op is set to
41 3448adb0 2022-11-02 op .Dv SIZE_MAX
42 3448adb0 2022-11-02 op (stdint.h is already included by grapheme.h) the ${ARRAYTYPE}
43 3448adb0 2022-11-02 op .Va src
44 3448adb0 2022-11-02 op is interpreted to be NUL-terminated and processing stops when a
45 3448adb0 2022-11-02 op NUL-byte is encountered.
46 3448adb0 2022-11-02 op .Pp
47 3448adb0 2022-11-02 op For $(if [ "$ENCODING" != "utf8" ]; then printf "UTF-8-encoded"; else printf "non-UTF-8"; fi) input data
48 3448adb0 2022-11-02 op .Xr grapheme_is_${CASE}${ANTISUFFIX} 3
49 3448adb0 2022-11-02 op can be used instead.
50 3448adb0 2022-11-02 op .Sh RETURN VALUES
51 3448adb0 2022-11-02 op The
52 3448adb0 2022-11-02 op .Fn grapheme_is_${CASE}${SUFFIX}
53 3448adb0 2022-11-02 op function returns
54 3448adb0 2022-11-02 op .Dv true
55 3448adb0 2022-11-02 op if the ${ARRAYTYPE}
56 3448adb0 2022-11-02 op .Va str
57 3448adb0 2022-11-02 op is ${CASE}, otherwise
58 3448adb0 2022-11-02 op .Dv false .
59 3448adb0 2022-11-02 op .Sh SEE ALSO
60 3448adb0 2022-11-02 op .Xr grapheme_is_${CASE}${ANTISUFFIX} 3 ,
61 3448adb0 2022-11-02 op .Xr libgrapheme 7
62 3448adb0 2022-11-02 op .Sh STANDARDS
63 3448adb0 2022-11-02 op .Fn grapheme_is_${CASE}${SUFFIX}
64 3448adb0 2022-11-02 op is compliant with the Unicode ${UNICODE_VERSION} specification.
65 3448adb0 2022-11-02 op .Sh AUTHORS
66 3448adb0 2022-11-02 op .An Laslo Hunhold Aq Mt dev@frign.de
67 3448adb0 2022-11-02 op EOF