Files
react-native/packages/react-native/ReactCxxPlatform/react/logging/LogOnce.cpp
T
Andrew DatsenkoandFacebook GitHub Bot 798eb0ab84 move rncxx logging (#50652)
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50652

Changelog: [Internal]

Reviewed By: zeyap

Differential Revision: D72800216

fbshipit-source-id: 722546b4538fce0d30d90a346a737a564bfd21ee
2025-04-11 08:06:06 -07:00

44 lines
882 B
C++

/*
* 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 "LogOnce.h"
#include <glog/logging.h>
#include <unordered_set>
namespace facebook::react {
LogOnceWrapper::~LogOnceWrapper() {
std::string message = str();
static std::unordered_set<std::string> loggedMessages;
if (loggedMessages.find(message) != loggedMessages.end()) {
return;
}
switch (severity_) {
case Severity::Info:
LOG(INFO) << message;
break;
case Severity::Warning:
LOG(WARNING) << message;
break;
case Severity::Error:
LOG(ERROR) << message;
break;
case Severity::Fatal:
default:
LOG(FATAL) << message;
break;
}
loggedMessages.insert(message);
}
} // namespace facebook::react