diff --git a/src/DarkId.Papyrus.LanguageService/Program/SemanticExtensions.cs b/src/DarkId.Papyrus.LanguageService/Program/SemanticExtensions.cs index 674527d0..1e856ee5 100644 --- a/src/DarkId.Papyrus.LanguageService/Program/SemanticExtensions.cs +++ b/src/DarkId.Papyrus.LanguageService/Program/SemanticExtensions.cs @@ -73,7 +73,7 @@ public static IEnumerable GetScriptMemberSymbols(this ScriptSymbo if (!globalOnly) { - var kindFilter = SymbolKinds.Property | SymbolKinds.Function | SymbolKinds.Struct; + var kindFilter = SymbolKinds.Property | SymbolKinds.Function | SymbolKinds.Struct | SymbolKinds.Group; if (includeDeclaredPrivates) { kindFilter |= SymbolKinds.Variable | SymbolKinds.Event; diff --git a/src/DarkId.Papyrus.Test/LanguageService/Program/SemanticExtensionsTests.cs b/src/DarkId.Papyrus.Test/LanguageService/Program/SemanticExtensionsTests.cs index d6059e72..e3b088b3 100644 --- a/src/DarkId.Papyrus.Test/LanguageService/Program/SemanticExtensionsTests.cs +++ b/src/DarkId.Papyrus.Test/LanguageService/Program/SemanticExtensionsTests.cs @@ -65,6 +65,10 @@ public void GetReferencableSymbols_FunctionBody() { var symbols = GetReferencableSymbolsAtMarker("function-body"); symbols.AssertAreOfKinds(SymbolKinds.Script | SymbolKinds.Struct | SymbolKinds.Function | SymbolKinds.Variable | SymbolKinds.Property); + +#if FALLOUT4 + Assert.IsNotNull(symbols.SingleOrDefault(s => s.Name == "GroupProperty")); +#endif } [TestMethod] diff --git a/src/DarkId.Papyrus.Test/scripts/Fallout 4/BaseScript.psc b/src/DarkId.Papyrus.Test/scripts/Fallout 4/BaseScript.psc index f703562c..7237573d 100644 --- a/src/DarkId.Papyrus.Test/scripts/Fallout 4/BaseScript.psc +++ b/src/DarkId.Papyrus.Test/scripts/Fallout 4/BaseScript.psc @@ -3,6 +3,10 @@ Scriptname BaseScript extends ScriptObject int scriptObjectIntVariable int Property ScriptObjectIntProperty Auto +Group PropertyGroup + int Property GroupProperty Auto +EndGroup + Struct StructA int structIntVariable string structStringVariable