1 /*
2 * Copyright 2024 Google LLC
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7 #include "modules/skunicode/src/SkBidiFactory_icu_subset.h"
8
9 #include <unicode/umachine.h>
10
errorName(UErrorCode status) const11 const char* SkBidiSubsetFactory::errorName(UErrorCode status) const {
12 return u_errorName_skia(status);
13 }
14
bidi_close_callback() const15 SkBidiFactory::BidiCloseCallback SkBidiSubsetFactory::bidi_close_callback() const {
16 return ubidi_close_skia;
17 }
18
bidi_getDirection(const UBiDi * bidi) const19 UBiDiDirection SkBidiSubsetFactory::bidi_getDirection(const UBiDi* bidi) const {
20 return ubidi_getDirection_skia(bidi);
21 }
22
bidi_getLength(const UBiDi * bidi) const23 SkBidiIterator::Position SkBidiSubsetFactory::bidi_getLength(const UBiDi* bidi) const {
24 return ubidi_getLength_skia(bidi);
25 }
26
bidi_getLevelAt(const UBiDi * bidi,int pos) const27 SkBidiIterator::Level SkBidiSubsetFactory::bidi_getLevelAt(const UBiDi* bidi, int pos) const {
28 return ubidi_getLevelAt_skia(bidi, pos);
29 }
30
bidi_openSized(int32_t maxLength,int32_t maxRunCount,UErrorCode * pErrorCode) const31 UBiDi* SkBidiSubsetFactory::bidi_openSized(int32_t maxLength,
32 int32_t maxRunCount,
33 UErrorCode* pErrorCode) const {
34 return ubidi_openSized_skia(maxLength, maxRunCount, pErrorCode);
35 }
36
bidi_setPara(UBiDi * bidi,const UChar * text,int32_t length,UBiDiLevel paraLevel,UBiDiLevel * embeddingLevels,UErrorCode * status) const37 void SkBidiSubsetFactory::bidi_setPara(UBiDi* bidi,
38 const UChar* text,
39 int32_t length,
40 UBiDiLevel paraLevel,
41 UBiDiLevel* embeddingLevels,
42 UErrorCode* status) const {
43 return ubidi_setPara_skia(bidi, text, length, paraLevel, embeddingLevels, status);
44 }
45
bidi_reorderVisual(const SkUnicode::BidiLevel runLevels[],int levelsCount,int32_t logicalFromVisual[]) const46 void SkBidiSubsetFactory::bidi_reorderVisual(const SkUnicode::BidiLevel runLevels[],
47 int levelsCount,
48 int32_t logicalFromVisual[]) const {
49 ubidi_reorderVisual_skia(runLevels, levelsCount, logicalFromVisual);
50 }
51