InitializationContext.RegisterForSyntaxNotifications 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
SyntaxReceiverCreator註冊這個產生器的 ,可用來建立 的 ISyntaxReceiver 實例。
public void RegisterForSyntaxNotifications (Microsoft.CodeAnalysis.SyntaxReceiverCreator receiverCreator);
member this.RegisterForSyntaxNotifications : Microsoft.CodeAnalysis.SyntaxReceiverCreator -> unit
Public Sub RegisterForSyntaxNotifications (receiverCreator As SyntaxReceiverCreator)
參數
- receiverCreator
- SyntaxReceiverCreator
SyntaxReceiverCreator,可叫用以建立 的實例ISyntaxReceiver
備註
此方法可讓產生器「語法感知」。 在每次產生 之前, receiverCreator
都會叫用 以建立 的 ISyntaxReceiver 實例。 此接收者會針對編譯中的每個語法節點叫用它 OnVisitSyntaxNode(SyntaxNode) ,讓接收者能夠在產生之前建置編譯的相關資訊。
在產生器期間 Execute(SourceGeneratorContext) ,可以藉由存取 屬性來取得 ISyntaxReceiver 所建立的 SyntaxReceiver 實例。 接收者收集的任何資訊都可以用來產生最終輸出。
的新實例 ISyntaxReceiver 是每一代建立的,這表示不需要管理接收者或其內容的存留期。
適用於
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應