Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SourceGeneratorのマーカー属性問題について

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.
Avatar for tkym tkym
February 28, 2026

 SourceGeneratorのマーカー属性問題について

Avatar for tkym

tkym

February 28, 2026
Tweet

More Decks by tkym

Other Decks in Programming

Transcript

  1. C# Source Generator コンパイル時のメタプログラミングツール ・ 新しいC#ソースファイルを生成し,自動的に追加 ・ 開発中に実行 ・ 実行時のパフォーマンスが向上

    ・ リフレクションを排除 ・ AOTコンパイルとツリーシェイキングを可能に 前回の内容 https://zenn.dev/poipoionigiri/articles/57f1c33a7f5baa
  2. CS0436 : 型の競合 (InternalsVisibleTo編) × Source Generatorに属性クラスを直接含め、DLL 自体を通常の参照としても使う ・ Source

    Generatorの依存がユーザーに流れてしまう. ・ バージョンの競合が起こる可能性 ・ analyzerとして使ってほしい
  3. まとめ Source Generator の Marker Attribute Problem ・ RegisterPostInitializationOutputで Source

    Generatorで生成することを考える. → Attribute は internal class ・ 複数プロジェクトで使いたい場合は,依存関係に注意 → .NET 10 では,[Embedded]を使う → それ以前では,一工夫した方が使いやすいかも