[英]How do I remove token in syntax tree in roslyn. e.g. remove virtual keyword token from property?
如何在roslyn中刪除語法樹中的標記。 例如從屬性中刪除虛擬關鍵字令牌? Roslyn有RemoveNode
方法,但我找不到RemoveToken
方法或刪除令牌的方法。
找到了答案。 要刪除,請使用類型為none的新令牌替換令牌。 尷尬但有效。
var noneToken = SyntaxFactory.Token(SyntaxKind.None);
node = node.ReplaceToken(token_to_remove, noneToken);
我在運行上面的代碼時遇到了ArgumentException
。 這似乎有效(雖然它可能有點像黑客):
var node = node.ReplaceToken(dotToken_to_remove, SyntaxFactory.MissingToken(SyntaxKind.DotToken));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.