Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-src
Path: blob/main/contrib/llvm-project/lldb/source/API/SBLanguageRuntime.cpp
39587 views
1
//===-- SBLanguageRuntime.cpp ---------------------------------------------===//
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
9
#include "lldb/API/SBLanguageRuntime.h"
10
#include "lldb/Target/Language.h"
11
#include "lldb/Utility/Instrumentation.h"
12
13
using namespace lldb;
14
using namespace lldb_private;
15
16
lldb::LanguageType
17
SBLanguageRuntime::GetLanguageTypeFromString(const char *string) {
18
LLDB_INSTRUMENT_VA(string);
19
20
return Language::GetLanguageTypeFromString(llvm::StringRef(string));
21
}
22
23
const char *
24
SBLanguageRuntime::GetNameForLanguageType(lldb::LanguageType language) {
25
LLDB_INSTRUMENT_VA(language);
26
27
return Language::GetNameForLanguageType(language);
28
}
29
30
bool SBLanguageRuntime::LanguageIsCPlusPlus(lldb::LanguageType language) {
31
return Language::LanguageIsCPlusPlus(language);
32
}
33
34
bool SBLanguageRuntime::LanguageIsObjC(lldb::LanguageType language) {
35
return Language::LanguageIsObjC(language);
36
}
37
38
bool SBLanguageRuntime::LanguageIsCFamily(lldb::LanguageType language) {
39
return Language::LanguageIsCFamily(language);
40
}
41
42
bool SBLanguageRuntime::SupportsExceptionBreakpointsOnThrow(
43
lldb::LanguageType language) {
44
if (Language *lang_plugin = Language::FindPlugin(language))
45
return lang_plugin->SupportsExceptionBreakpointsOnThrow();
46
return false;
47
}
48
49
bool SBLanguageRuntime::SupportsExceptionBreakpointsOnCatch(
50
lldb::LanguageType language) {
51
if (Language *lang_plugin = Language::FindPlugin(language))
52
return lang_plugin->SupportsExceptionBreakpointsOnCatch();
53
return false;
54
}
55
56
const char *
57
SBLanguageRuntime::GetThrowKeywordForLanguage(lldb::LanguageType language) {
58
if (Language *lang_plugin = Language::FindPlugin(language))
59
return ConstString(lang_plugin->GetThrowKeyword()).AsCString();
60
return nullptr;
61
}
62
63
const char *
64
SBLanguageRuntime::GetCatchKeywordForLanguage(lldb::LanguageType language) {
65
if (Language *lang_plugin = Language::FindPlugin(language))
66
return ConstString(lang_plugin->GetCatchKeyword()).AsCString();
67
return nullptr;
68
}
69
70