#include "mojo/public/cpp/bindings/sync_call_restrictions.h"
#include "base/check_op.h"
#include "base/debug/leak_annotations.h"
#include "base/logging.h"
#include "base/no_destructor.h"
#include "base/synchronization/lock.h"
#include "base/threading/sequence_local_storage_map.h"
#include "base/threading/sequence_local_storage_slot.h"
#include "mojo/public/c/system/core.h"
namespace mojo {
namespace {
bool g_enable_sync_call_interrupts = …;
#if ENABLE_SYNC_CALL_RESTRICTIONS
class GlobalSyncCallSettings { … };
GlobalSyncCallSettings& GetGlobalSettings() { … }
size_t& GetSequenceLocalScopedAllowCount() { … }
bool SyncCallRestrictionsEnforceable() { … }
#endif
}
#if ENABLE_SYNC_CALL_RESTRICTIONS
void SyncCallRestrictions::AssertSyncCallAllowed() { … }
void SyncCallRestrictions::DisallowSyncCall() { … }
void SyncCallRestrictions::IncreaseScopedAllowCount() { … }
void SyncCallRestrictions::DecreaseScopedAllowCount() { … }
#endif
void SyncCallRestrictions::DisableSyncCallInterrupts() { … }
void SyncCallRestrictions::EnableSyncCallInterruptsForTesting() { … }
bool SyncCallRestrictions::AreSyncCallInterruptsEnabled() { … }
}