Introduction
Introduction Statistics Contact Development Disclaimer Help
util.h - libgrapheme - unicode string library
git clone git://git.suckless.org/libgrapheme
Log
Files
Refs
README
LICENSE
---
util.h (1961B)
---
1 /* See LICENSE file for copyright and license details. */
2 #ifndef UTIL_H
3 #define UTIL_H
4
5 #include <stddef.h>
6 #include <stdint.h>
7
8 #include "types.h"
9
10 #define LEN(x) (sizeof(x) / sizeof *(x))
11
12 struct property_spec {
13 const char *enumname;
14 const char *file;
15 const char *ucdname;
16 const char *ucdsubname;
17 };
18
19 struct properties {
20 int_least64_t property;
21 };
22
23 struct properties_compressed {
24 size_t *offset;
25 struct properties *data;
26 size_t datalen;
27 };
28
29 struct properties_major_minor {
30 size_t *major;
31 size_t *minor;
32 size_t minorlen;
33 };
34
35 int hextocp(const char *, size_t, uint_least32_t *cp);
36 int parse_cp_list(const char *, uint_least32_t **, size_t *);
37
38 void parse_file_with_callback(const char *,
39 int (*callback)(const char *, char **, siz…
40 char *, void *),
41 void *payload);
42
43 void properties_compress(const struct properties *,
44 struct properties_compressed *comp);
45 double properties_get_major_minor(const struct properties_compressed *,
46 struct properties_major_minor *);
47 void properties_print_lookup_table(const char *, const size_t *, size_t);
48 void properties_print_derived_lookup_table(
49 char *, size_t *, size_t,
50 int_least64_t (*get_value)(const struct properties *, size_t),
51 const void *);
52
53 void properties_generate_break_property(
54 const struct property_spec *, uint_least8_t,
55 uint_least8_t (*fill_missing)(uint_least32_t),
56 uint_least8_t (*handle_conflict)(uint_least32_t, uint_least8_t,
57 uint_least8_t),
58 void (*post_process)(struct properties *), const char *, const c…
59
60 void break_test_list_parse(char *, struct break_test **, size_t *);
61 void break_test_list_print(const struct break_test *, size_t, const char…
62 const char *);
63 void break_test_list_free(struct break_test *, size_t);
64
65 #endif /* UTIL_H */
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.