Files
clang-p2996/lldb/source/Plugins/Language/OCaml/OCamlLanguage.h
Tamas Berghammer 00adc41370 Support for OCaml native debugging
This introduces basic support for debugging OCaml binaries.
Use of the native compiler with DWARF emission support (see
https://github.com/ocaml/ocaml/pull/574) is required.

Available variables are considered as 64 bits unsigned integers,
their interpretation will be left to a OCaml-made debugging layer.

Differential revision: https://reviews.llvm.org/D22132

llvm-svn: 277443
2016-08-02 11:15:55 +00:00

62 lines
1.3 KiB
C++

//===-- OCamlLanguage.h ------------------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
#ifndef liblldb_OCamlLanguage_h_
#define liblldb_OCamlLanguage_h_
// C Includes
// C++ Includes
#include <vector>
// Other libraries and framework includes
#include "llvm/ADT/StringRef.h"
// Project includes
#include "lldb/Core/ConstString.h"
#include "lldb/Target/Language.h"
#include "lldb/lldb-private.h"
namespace lldb_private
{
class OCamlLanguage : public Language
{
public:
lldb::LanguageType
GetLanguageType() const override
{
return lldb::eLanguageTypeOCaml;
}
static void
Initialize();
static void
Terminate();
static lldb_private::Language *
CreateInstance(lldb::LanguageType language);
static lldb_private::ConstString
GetPluginNameStatic();
ConstString
GetPluginName() override;
uint32_t
GetPluginVersion() override;
bool
IsNilReference(ValueObject &valobj) override;
};
} // namespace lldb_private
#endif // liblldb_OCamlLanguage_h_