/
githubmr
/
facebook-react-native
Обзор
Документация
Войти
/
githubmr
/
facebook-react-native
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
main
packages/react-native/ReactCommon/react/performance/timeline/PerformanceEntryCircularBuffer.cpp
47 строк
1 KB
Alex Hunt
Refactor PerformanceEntry as std::variant (#50995)
02 май 2025, 08:40
02 май 2025, 08:40
1135f10
Код
Авторство
О чём код?
/* * 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. */ #include "PerformanceEntryCircularBuffer.h" #include <variant> namespace facebook::react { void PerformanceEntryCircularBuffer::add(const PerformanceEntry& entry) { if (buffer_.add(entry)) { droppedEntriesCount += 1; } } void PerformanceEntryCircularBuffer::getEntries( std::vector<PerformanceEntry>& target) const { buffer_.getEntries(target); } void PerformanceEntryCircularBuffer::getEntries( std::vector<PerformanceEntry>& target, const std::string& name) const { buffer_.getEntries(target, [&](const PerformanceEntry& entry) { return std::visit( [&name](const auto& entryData) { return entryData.name == name; }, entry); }); } void PerformanceEntryCircularBuffer::clear() { buffer_.clear(); } void PerformanceEntryCircularBuffer::clear(const std::string& name) { buffer_.clear([&](const PerformanceEntry& entry) { return std::visit( [&name](const auto& entryData) { return entryData.name == name; }, entry); }); } } // namespace facebook::react