dotnet/roslyn

Source Generators: Allow more than one subfolder for hintnames

Open

#70 859 ouverte le 16 nov. 2023

Voir sur GitHub
 (3 commentaires) (4 réactions) (0 assignés)C# (4 257 forks)batch import
Area-CompilersFeature Requesthelp wanted

Métriques du dépôt

Stars
 (20 414 stars)
Métriques de merge PR
 (Merge moyen 6j 17h) (256 PRs mergées en 30 j)

Description

Brief description:

I want to sort my generated types into folders so that the structure looks like this in the IDE

Dependencies -> .. -> Source Generators -> Foo -> Bar -> Baz.g.cs

Where Foo and Bar are folders (Foo a folder in Source Generators and Bar a subfolder of Foo)

I can add folders to the hintname - the documentation says so too. But what it doesn't reveal is that if you use more than one folder it only uses the last folder. So in the given example above the structure would look like this

Dependencies -> .. -> Source Generators -> Bar -> Baz.g.cs

Foo was omitted

/// <summary>
/// Adds a <see cref="SourceText"/> to the compilation
/// </summary>
/// <param name="hintName">An identifier that can be used to reference this source text, must be unique within this generator</param>
/// <param name="sourceText">The <see cref="SourceText"/> to add to the compilation</param>
/// <remarks>
/// Directory separators "/" and "\" are allowed in <paramref name="hintName"/>, they are normalized to "/" regardless of host platform.
/// </remarks>
public void AddSource(string hintName, SourceText sourceText) => Sources.Add(hintName, sourceText);

Guide contributeur