/
githubmr
/
facebook-react-native
Обзор
Документация
Войти
/
githubmr
/
facebook-react-native
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
main
packages/react-native/ReactCommon/react/bridging/AString.h
42 строки
1018 B
Nick Gerleman
PointerAlignment: Left
04 сен 2023, 20:55
04 сен 2023, 20:55
d2e9159
Код
Авторство
О чём код?
/* * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ #pragma once #include <react/bridging/Base.h> #include <string> #include <string_view> namespace facebook::react { template <> struct Bridging<std::string> { static std::string fromJs(jsi::Runtime& rt, const jsi::String& value) { return value.utf8(rt); } static jsi::String toJs(jsi::Runtime& rt, const std::string& value) { return jsi::String::createFromUtf8(rt, value); } }; template <> struct Bridging<std::string_view> { static jsi::String toJs(jsi::Runtime& rt, std::string_view value) { return jsi::String::createFromUtf8( rt, reinterpret_cast<const uint8_t*>(value.data()), value.length()); } }; template <> struct Bridging<const char*> : Bridging<std::string_view> {}; template <size_t N> struct Bridging<char[N]> : Bridging<std::string_view> {}; } // namespace facebook::react