blob: b0cf476e919367b2501d0befe76db29a5b83d79a [file] [log] [blame]
Zachary Turnere6e2bb32015-03-31 21:03:22 +00001//===-- SystemInitializerFull.h ---------------------------------*- C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10#ifndef LLDB_API_SYSTEM_INITIALIZER_FULL_H
11#define LLDB_API_SYSTEM_INITIALIZER_FULL_H
12
13#include "lldb/Initialization/SystemInitializerCommon.h"
14
Kate Stoneb9c1b512016-09-06 20:57:50 +000015namespace lldb_private {
Zachary Turnere6e2bb32015-03-31 21:03:22 +000016//------------------------------------------------------------------
17/// Initializes lldb.
18///
19/// This class is responsible for initializing all of lldb system
20/// services needed to use the full LLDB application. This class is
21/// not intended to be used externally, but is instead used
22/// internally by SBDebugger to initialize the system.
23//------------------------------------------------------------------
Kate Stoneb9c1b512016-09-06 20:57:50 +000024class SystemInitializerFull : public SystemInitializerCommon {
25public:
26 SystemInitializerFull();
27 ~SystemInitializerFull() override;
Zachary Turnere6e2bb32015-03-31 21:03:22 +000028
Jonas Devlieghere15eacd72018-12-03 17:28:29 +000029 llvm::Error Initialize(const InitializerOptions &options) override;
Kate Stoneb9c1b512016-09-06 20:57:50 +000030 void Terminate() override;
Zachary Turnere6e2bb32015-03-31 21:03:22 +000031
Kate Stoneb9c1b512016-09-06 20:57:50 +000032private:
33 void InitializeSWIG();
Zachary Turnere6e2bb32015-03-31 21:03:22 +000034};
Zachary Turnere6e2bb32015-03-31 21:03:22 +000035
Pavel Labath3a3354e2015-09-02 09:19:24 +000036} // namespace lldb_private
37
38#endif // LLDB_API_SYSTEM_INITIALIZER_FULL_H