1 //===-- OCamlLanguage.h ------------------------------------------*- C++
4 // The LLVM Compiler Infrastructure
6 // This file is distributed under the University of Illinois Open Source
7 // License. See LICENSE.TXT for details.
9 //===----------------------------------------------------------------------===//
11 #ifndef liblldb_OCamlLanguage_h_
12 #define liblldb_OCamlLanguage_h_
18 // Other libraries and framework includes
19 #include "llvm/ADT/StringRef.h"
22 #include "lldb/Target/Language.h"
23 #include "lldb/Utility/ConstString.h"
24 #include "lldb/lldb-private.h"
26 namespace lldb_private {
28 class OCamlLanguage : public Language {
30 lldb::LanguageType GetLanguageType() const override {
31 return lldb::eLanguageTypeOCaml;
34 static void Initialize();
36 static void Terminate();
38 static lldb_private::Language *CreateInstance(lldb::LanguageType language);
40 static lldb_private::ConstString GetPluginNameStatic();
42 ConstString GetPluginName() override;
44 uint32_t GetPluginVersion() override;
46 bool IsNilReference(ValueObject &valobj) override;
49 } // namespace lldb_private
51 #endif // liblldb_OCamlLanguage_h_