blob: 3a5081680879a7c031451fe409a0318ea9e0adf1 [file] [log] [blame]
Andrew Walbran3d2c1972020-04-07 12:24:26 +01001//===-- SystemInitializerCommon.h -------------------------------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
Olivier Deprezf4ef2d02021-04-20 13:36:24 +02009#ifndef LLDB_INITIALIZATION_SYSTEMINITIALIZERCOMMON_H
10#define LLDB_INITIALIZATION_SYSTEMINITIALIZERCOMMON_H
Andrew Walbran3d2c1972020-04-07 12:24:26 +010011
12#include "SystemInitializer.h"
13
14namespace lldb_private {
15/// Initializes common lldb functionality.
16///
17/// This class is responsible for initializing a subset of lldb
18/// useful to both debug servers and debug clients. Debug servers
19/// do not use all of LLDB and desire small binary sizes, so this
20/// functionality is separate. This class is used by constructing
21/// an instance of SystemLifetimeManager with this class passed to
22/// the constructor.
23class SystemInitializerCommon : public SystemInitializer {
24public:
25 SystemInitializerCommon();
26 ~SystemInitializerCommon() override;
27
28 llvm::Error Initialize() override;
29 void Terminate() override;
30};
31
32} // namespace lldb_private
33
Olivier Deprezf4ef2d02021-04-20 13:36:24 +020034#endif // LLDB_INITIALIZATION_SYSTEMINITIALIZERCOMMON_H