以下の内容はhttps://www.hanachiru-blog.com/entry/2025/03/03/120000より取得しました。


【C#】Rider2025.1 EAP5でSyntax TreeのVisualizerが来た!

はじめに

Rider 2025.1 EAP5のリリース情報が更新されました。
blog.jetbrains.com

今までRiderがSyntax TreeVisualizerに非対応だったので、いつもISGやRoslynAnalyzerを触るときはSharpLabを多用していました。Riderが対応してくれるだけでかなり期待大です。
sharplab.io


実際に触ってみたので備忘録も兼ねて書き残しておこうと思います。

使い方

Syntax Tree Visualizerを起動するには右側にアイコンがあるのでそれをクリックします。もしくはShift + Shiftで検索するのでも良いでしょう。

SyntaxTree Visualizerを起動する方法

例としてSourceGeneratorとかでありがちな属性を付与したコードを用意しました。これをSyntax Tree Visualizerに通すと以下のようになります。

using System.Text.Json;

namespace RapidEnum.Sample;

[RapidEnumWithType(typeof(DateTimeKind))]
public static partial class DateTimeKindEnumExtensions
{
}

[RapidEnumWithType(typeof(JsonTokenType))]
public static partial class JsonTokenTypeEnumExtensions
{
}

public class SampleEnum
{
    [RapidEnum]
    public enum Weather
    {
        Sun,
        Cloud,
        Rain,
        Snow
    }
}

[AttributeUsage(AttributeTargets.Enum)]
public sealed class RapidEnumAttribute : Attribute
{

}

public sealed class RapidEnumWithTypeAttribute : Attribute
{
    public Type Type { get; }

    public RapidEnumWithTypeAttribute(Type type)
    {
        Type = type;
    }
}
Rider Syntax Tree Visualizerを利用した様子

ClassDeclarationの箇所に一緒にクラス名を表示してくれていたり、 付加情報もりもり表示してくれていたりとかなり検索性高くて良い印象です。

特にSharpLabと比較してコンパイルを無理やり通すために色々試行錯誤したり、コードのコピペをしたりがないところもGoodですね。ちなみにSharpLabだと以下のような表示になります。

SharpLabで実験した様子



以上の内容はhttps://www.hanachiru-blog.com/entry/2025/03/03/120000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14