Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(685)

Side by Side Diff: third_party/harfbuzz/contrib/harfbuzz-unicode-tables.c

Issue 384503008: Delete third_party/harfbuzz (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: remove public header Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 #include <stdlib.h>
2 #include <stdint.h>
3
4 #include <harfbuzz-external.h>
5
6 #include "tables/category-properties.h"
7 #include "tables/combining-properties.h"
8
9 HB_LineBreakClass
10 HB_GetLineBreakClass(HB_UChar32 ch) {
11 abort();
12 return 0;
13 }
14
15 static int
16 combining_property_cmp(const void *vkey, const void *vcandidate) {
17 const uint32_t key = (uint32_t) (intptr_t) vkey;
18 const struct combining_property *candidate = vcandidate;
19
20 if (key < candidate->range_start) {
21 return -1;
22 } else if (key > candidate->range_end) {
23 return 1;
24 } else {
25 return 0;
26 }
27 }
28
29 static int
30 code_point_to_combining_class(HB_UChar32 cp) {
31 const void *vprop = bsearch((void *) (intptr_t) cp, combining_properties,
32 combining_properties_count,
33 sizeof(struct combining_property),
34 combining_property_cmp);
35 if (!vprop)
36 return 0;
37
38 return ((const struct combining_property *) vprop)->klass;
39 }
40
41 int
42 HB_GetUnicodeCharCombiningClass(HB_UChar32 ch) {
43 return code_point_to_combining_class(ch);
44 return 0;
45 }
46
47 static int
48 category_property_cmp(const void *vkey, const void *vcandidate) {
49 const uint32_t key = (uint32_t) (intptr_t) vkey;
50 const struct category_property *candidate = vcandidate;
51
52 if (key < candidate->range_start) {
53 return -1;
54 } else if (key > candidate->range_end) {
55 return 1;
56 } else {
57 return 0;
58 }
59 }
60
61 static HB_CharCategory
62 code_point_to_category(HB_UChar32 cp) {
63 const void *vprop = bsearch((void *) (intptr_t) cp, category_properties,
64 category_properties_count,
65 sizeof(struct category_property),
66 category_property_cmp);
67 if (!vprop)
68 return HB_NoCategory;
69
70 return ((const struct category_property *) vprop)->category;
71 }
72
73 void
74 HB_GetUnicodeCharProperties(HB_UChar32 ch,
75 HB_CharCategory *category,
76 int *combiningClass) {
77 *category = code_point_to_category(ch);
78 *combiningClass = code_point_to_combining_class(ch);
79 }
80
81 HB_CharCategory
82 HB_GetUnicodeCharCategory(HB_UChar32 ch) {
83 return code_point_to_category(ch);
84 }
OLDNEW
« no previous file with comments | « third_party/harfbuzz/contrib/harfbuzz-unicode-glib.c ('k') | third_party/harfbuzz/contrib/tables/BidiMirroring.txt » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698