@@ -564,11 +564,12 @@ static LanguageInstances &GetLanguageInstances() {
564564 return g_instances;
565565}
566566
567- bool PluginManager::RegisterPlugin (llvm::StringRef name,
568- llvm::StringRef description,
569- LanguageCreateInstance create_callback) {
570- return GetLanguageInstances ().RegisterPlugin (name, description,
571- create_callback);
567+ bool PluginManager::RegisterPlugin (
568+ llvm::StringRef name, llvm::StringRef description,
569+ LanguageCreateInstance create_callback,
570+ DebuggerInitializeCallback debugger_init_callback) {
571+ return GetLanguageInstances ().RegisterPlugin (
572+ name, description, create_callback, debugger_init_callback);
572573}
573574
574575bool PluginManager::UnregisterPlugin (LanguageCreateInstance create_callback) {
@@ -1682,6 +1683,7 @@ void PluginManager::DebuggerInitialize(Debugger &debugger) {
16821683 GetStructuredDataPluginInstances ().PerformDebuggerCallback (debugger);
16831684 GetTracePluginInstances ().PerformDebuggerCallback (debugger);
16841685 GetScriptedInterfaceInstances ().PerformDebuggerCallback (debugger);
1686+ GetLanguageInstances ().PerformDebuggerCallback (debugger);
16851687}
16861688
16871689// This is the preferred new way to register plugin specific settings. e.g.
@@ -1810,6 +1812,7 @@ static constexpr llvm::StringLiteral kSymbolLocatorPluginName("symbol-locator");
18101812static constexpr llvm::StringLiteral kJITLoaderPluginName (" jit-loader" );
18111813static constexpr llvm::StringLiteral
18121814 kStructuredDataPluginName (" structured-data" );
1815+ static constexpr llvm::StringLiteral kCPlusPlusLanguagePlugin (" cplusplus" );
18131816
18141817lldb::OptionValuePropertiesSP
18151818PluginManager::GetSettingForDynamicLoaderPlugin (Debugger &debugger,
@@ -1967,3 +1970,17 @@ bool PluginManager::CreateSettingForStructuredDataPlugin(
19671970 " Settings for structured data plug-ins" ,
19681971 properties_sp, description, is_global_property);
19691972}
1973+
1974+ lldb::OptionValuePropertiesSP
1975+ PluginManager::GetSettingForCPlusPlusLanguagePlugin (
1976+ Debugger &debugger, llvm::StringRef setting_name) {
1977+ return GetSettingForPlugin (debugger, setting_name, kCPlusPlusLanguagePlugin );
1978+ }
1979+
1980+ bool PluginManager::CreateSettingForCPlusPlusLanguagePlugin (
1981+ Debugger &debugger, const lldb::OptionValuePropertiesSP &properties_sp,
1982+ llvm::StringRef description, bool is_global_property) {
1983+ return CreateSettingForPlugin (debugger, kCPlusPlusLanguagePlugin ,
1984+ " Settings for CPlusPlus language plug-ins" ,
1985+ properties_sp, description, is_global_property);
1986+ }
0 commit comments