blob: cfeb821b45c58b97c0de9a128e3091f775c05bd1 [file] [log] [blame]
Zachary Turnere6e2bb32015-03-31 21:03:22 +00001//===-- SystemInitializerFull.h ---------------------------------*- C++ -*-===//
2//
Chandler Carruth2946cd72019-01-19 08:50:56 +00003// 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
Zachary Turnere6e2bb32015-03-31 21:03:22 +00006//
7//===----------------------------------------------------------------------===//
8
9#ifndef LLDB_API_SYSTEM_INITIALIZER_FULL_H
10#define LLDB_API_SYSTEM_INITIALIZER_FULL_H
11
12#include "lldb/Initialization/SystemInitializerCommon.h"
13
Kate Stoneb9c1b512016-09-06 20:57:50 +000014namespace lldb_private {
Zachary Turnere6e2bb32015-03-31 21:03:22 +000015//------------------------------------------------------------------
16/// Initializes lldb.
17///
18/// This class is responsible for initializing all of lldb system
19/// services needed to use the full LLDB application. This class is
20/// not intended to be used externally, but is instead used
21/// internally by SBDebugger to initialize the system.
22//------------------------------------------------------------------
Kate Stoneb9c1b512016-09-06 20:57:50 +000023class SystemInitializerFull : public SystemInitializerCommon {
24public:
25 SystemInitializerFull();
26 ~SystemInitializerFull() override;
Zachary Turnere6e2bb32015-03-31 21:03:22 +000027
Jonas Devlieghere15eacd72018-12-03 17:28:29 +000028 llvm::Error Initialize(const InitializerOptions &options) override;
Kate Stoneb9c1b512016-09-06 20:57:50 +000029 void Terminate() override;
Zachary Turnere6e2bb32015-03-31 21:03:22 +000030
Kate Stoneb9c1b512016-09-06 20:57:50 +000031private:
32 void InitializeSWIG();
Zachary Turnere6e2bb32015-03-31 21:03:22 +000033};
Zachary Turnere6e2bb32015-03-31 21:03:22 +000034
Pavel Labath3a3354e2015-09-02 09:19:24 +000035} // namespace lldb_private
36
37#endif // LLDB_API_SYSTEM_INITIALIZER_FULL_H