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

Unified Diff: third_party/harfbuzz/contrib/harfbuzz-unicode.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 side-by-side diff with in-line comments
Download patch
Index: third_party/harfbuzz/contrib/harfbuzz-unicode.c
diff --git a/third_party/harfbuzz/contrib/harfbuzz-unicode.c b/third_party/harfbuzz/contrib/harfbuzz-unicode.c
deleted file mode 100644
index f2185dc6fb693967910777f6b7504139ca9e06da..0000000000000000000000000000000000000000
--- a/third_party/harfbuzz/contrib/harfbuzz-unicode.c
+++ /dev/null
@@ -1,287 +0,0 @@
-#include <stdint.h>
-#include <stdlib.h>
-
-#include <harfbuzz-external.h>
-#include <harfbuzz-impl.h>
-#include <harfbuzz-shaper.h>
-#include "harfbuzz-unicode.h"
-
-#include "tables/grapheme-break-properties.h"
-#include "tables/mirroring-properties.h"
-#include "tables/script-properties.h"
-
-uint32_t
-utf16_to_code_point(const uint16_t *chars, size_t len, ssize_t *iter) {
- const uint16_t v = chars[(*iter)++];
- if (HB_IsHighSurrogate(v)) {
- // surrogate pair
- if (*iter >= len) {
- // the surrogate is incomplete.
- return HB_InvalidCodePoint;
- }
- const uint16_t v2 = chars[(*iter)++];
- if (!HB_IsLowSurrogate(v2)) {
- // invalidate surrogate pair.
- return HB_InvalidCodePoint;
- }
-
- return HB_SurrogateToUcs4(v, v2);
- }
-
- if (HB_IsLowSurrogate(v)) {
- // this isn't a valid code point
- return HB_InvalidCodePoint;
- }
-
- return v;
-}
-
-uint32_t
-utf16_to_code_point_prev(const uint16_t *chars, size_t len, ssize_t *iter) {
- const uint16_t v = chars[(*iter)--];
- if (HB_IsLowSurrogate(v)) {
- // surrogate pair
- if (*iter < 0) {
- // the surrogate is incomplete.
- return HB_InvalidCodePoint;
- }
- const uint16_t v2 = chars[(*iter)--];
- if (!HB_IsHighSurrogate(v2)) {
- // invalidate surrogate pair.
- return HB_InvalidCodePoint;
- }
-
- return HB_SurrogateToUcs4(v2, v);
- }
-
- if (HB_IsHighSurrogate(v)) {
- // this isn't a valid code point
- return HB_InvalidCodePoint;
- }
-
- return v;
-}
-
-static int
-script_property_cmp(const void *vkey, const void *vcandidate) {
- const uint32_t key = (uint32_t) (intptr_t) vkey;
- const struct script_property *candidate = vcandidate;
-
- if (key < candidate->range_start) {
- return -1;
- } else if (key > candidate->range_end) {
- return 1;
- } else {
- return 0;
- }
-}
-
-HB_Script
-code_point_to_script(uint32_t cp) {
- const void *vprop = bsearch((void *) (intptr_t) cp, script_properties,
- script_properties_count,
- sizeof(struct script_property),
- script_property_cmp);
- if (!vprop)
- return HB_Script_Common;
-
- return ((const struct script_property *) vprop)->script;
-}
-
-char
-hb_utf16_script_run_next(unsigned *num_code_points, HB_ScriptItem *output,
- const uint16_t *chars, size_t len, ssize_t *iter) {
- if (*iter == len)
- return 0;
-
- output->pos = *iter;
- const uint32_t init_cp = utf16_to_code_point(chars, len, iter);
- unsigned cps = 1;
- if (init_cp == HB_InvalidCodePoint)
- return 0;
- const HB_Script init_script = code_point_to_script(init_cp);
- HB_Script current_script = init_script;
- output->script = init_script;
-
- for (;;) {
- if (*iter == len)
- break;
- const ssize_t prev_iter = *iter;
- const uint32_t cp = utf16_to_code_point(chars, len, iter);
- if (cp == HB_InvalidCodePoint)
- return 0;
- cps++;
- const HB_Script script = code_point_to_script(cp);
-
- if (script != current_script) {
- if (current_script == init_script == HB_Script_Inherited) {
- // If we started off as inherited, we take whatever we can find.
- output->script = script;
- current_script = script;
- continue;
- } else if (script == HB_Script_Inherited) {
- continue;
- } else {
- *iter = prev_iter;
- cps--;
- break;
- }
- }
- }
-
- if (output->script == HB_Script_Inherited)
- output->script = HB_Script_Common;
-
- output->length = *iter - output->pos;
- if (num_code_points)
- *num_code_points = cps;
- return 1;
-}
-
-char
-hb_utf16_script_run_prev(unsigned *num_code_points, HB_ScriptItem *output,
- const uint16_t *chars, size_t len, ssize_t *iter) {
- if (*iter == (size_t) -1)
- return 0;
-
- const size_t ending_index = *iter;
- const uint32_t init_cp = utf16_to_code_point_prev(chars, len, iter);
- unsigned cps = 1;
- if (init_cp == HB_InvalidCodePoint)
- return 0;
- const HB_Script init_script = code_point_to_script(init_cp);
- HB_Script current_script = init_script;
- output->script = init_script;
-
- for (;;) {
- if (*iter < 0)
- break;
- const ssize_t prev_iter = *iter;
- const uint32_t cp = utf16_to_code_point_prev(chars, len, iter);
- if (cp == HB_InvalidCodePoint)
- return 0;
- cps++;
- const HB_Script script = code_point_to_script(cp);
-
- if (script != current_script) {
- if (current_script == init_script == HB_Script_Inherited) {
- // If we started off as inherited, we take whatever we can find.
- output->script = script;
- current_script = script;
- continue;
- } else if (script == HB_Script_Inherited) {
- // Just assume that whatever follows this combining character is within
- // the same script. This is incorrect if you had language1 + combining
- // char + language 2, but that is rare and this code is suspicious
- // anyway.
- continue;
- } else {
- *iter = prev_iter;
- cps--;
- break;
- }
- }
- }
-
- if (output->script == HB_Script_Inherited)
- output->script = HB_Script_Common;
-
- output->pos = *iter + 1;
- output->length = ending_index - *iter;
- if (num_code_points)
- *num_code_points = cps;
- return 1;
-}
-
-static int
-grapheme_break_property_cmp(const void *vkey, const void *vcandidate) {
- const uint32_t key = (uint32_t) (intptr_t) vkey;
- const struct grapheme_break_property *candidate = vcandidate;
-
- if (key < candidate->range_start) {
- return -1;
- } else if (key > candidate->range_end) {
- return 1;
- } else {
- return 0;
- }
-}
-
-HB_GraphemeClass
-HB_GetGraphemeClass(HB_UChar32 ch) {
- const void *vprop = bsearch((void *) (intptr_t) ch, grapheme_break_properties,
- grapheme_break_properties_count,
- sizeof(struct grapheme_break_property),
- grapheme_break_property_cmp);
- if (!vprop)
- return HB_Grapheme_Other;
-
- return ((const struct grapheme_break_property *) vprop)->klass;
-}
-
-HB_WordClass
-HB_GetWordClass(HB_UChar32 ch) {
- abort();
- return 0;
-}
-
-HB_SentenceClass
-HB_GetSentenceClass(HB_UChar32 ch) {
- abort();
- return 0;
-}
-
-void
-HB_GetGraphemeAndLineBreakClass(HB_UChar32 ch, HB_GraphemeClass *gclass, HB_LineBreakClass *breakclass) {
- *gclass = HB_GetGraphemeClass(ch);
- *breakclass = HB_GetLineBreakClass(ch);
-}
-
-static int
-mirroring_property_cmp(const void *vkey, const void *vcandidate) {
- const uint32_t key = (uint32_t) (intptr_t) vkey;
- const struct mirroring_property *candidate = vcandidate;
-
- if (key < candidate->a) {
- return -1;
- } else if (key > candidate->a) {
- return 1;
- } else {
- return 0;
- }
-}
-
-HB_UChar16
-HB_GetMirroredChar(HB_UChar16 ch) {
- const void *mprop = bsearch((void *) (intptr_t) ch, mirroring_properties,
- mirroring_properties_count,
- sizeof(struct mirroring_property),
- mirroring_property_cmp);
- if (!mprop)
- return ch;
-
- return ((const struct mirroring_property *) mprop)->b;
-}
-
-void *
-HB_Library_Resolve(const char *library, const char *symbol) {
- abort();
- return NULL;
-}
-
-void *
-HB_TextCodecForMib(int mib) {
- abort();
- return NULL;
-}
-
-char *
-HB_TextCodec_ConvertFromUnicode(void *codec, const HB_UChar16 *unicode, hb_uint32 length, hb_uint32 *outputLength) {
- abort();
- return NULL;
-}
-
-void
-HB_TextCodec_FreeResult(char *v) {
- abort();
-}
« no previous file with comments | « third_party/harfbuzz/contrib/harfbuzz-unicode.h ('k') | third_party/harfbuzz/contrib/harfbuzz-unicode-glib.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698