public override SyntaxToken VisitToken(SyntaxToken token) { token = base.VisitToken(token); if (token.ContainsAnnotations && token.GetAnnotations(s_renameAnnotationName).Any()) { token = token.WithoutAnnotations(s_renameAnnotationName); } return(token); }
internal static SyntaxToken UpdateAliasAnnotation(SyntaxToken token, ISymbol aliasSymbol, string replacementText) { // If the below Single() assert fails then it means the token has gone through a rename session where // it obtained an AliasSyntaxAnnotation and it is going through another rename session. Make sure the token // has only one annotation pertaining to the current session or try to extract only the current session annotation var originalAliasAnnotation = token.GetAnnotations(AliasAnnotation.Kind).Single(); var originalAliasName = AliasAnnotation.GetAliasName(originalAliasAnnotation); if (originalAliasName == aliasSymbol.Name) { token = token.WithoutAnnotations(originalAliasAnnotation); var replacementAliasAnnotation = AliasAnnotation.Create(replacementText); token = token.WithAdditionalAnnotations(replacementAliasAnnotation); } return(token); }
internal static SyntaxToken UpdateAliasAnnotation(SyntaxToken token, ISymbol aliasSymbol, string replacementText) { // If the below Single() assert fails then it means the token has gone through a rename session where // it obtained an AliasSyntaxAnnotation and it is going through another rename session. Make sure the token // has only one annotation pertaining to the current session or try to extract only the current session annotation var originalAliasAnnotation = token.GetAnnotations(AliasAnnotation.Kind).Single(); var originalAliasName = AliasAnnotation.GetAliasName(originalAliasAnnotation); if (originalAliasName == aliasSymbol.Name) { token = token.WithoutAnnotations(originalAliasAnnotation); var replacementAliasAnnotation = AliasAnnotation.Create(replacementText); token = token.WithAdditionalAnnotations(replacementAliasAnnotation); } return token; }
public IEnumerable <TAnnotation> GetAnnotations(SyntaxToken token) { return(GetAnnotations(token.GetAnnotations(_annotationKind))); }
public override SyntaxToken VisitToken(SyntaxToken token) { token = base.VisitToken(token); if (token.ContainsAnnotations && token.GetAnnotations(s_renameAnnotationName).Any()) { token = token.WithoutAnnotations(s_renameAnnotationName); } return token; }
/// <summary> /// Determines whether the given syntax token should be preserved from major changes. /// </summary> /// <param name="token"></param> /// <returns></returns> public static bool ShouldBePreserved(this SyntaxToken token) { return(token.GetAnnotations("MDK").Any(a => a.Data.Contains("preserve"))); }
private static SyntaxAnnotation GetAnnotation(string name, SyntaxToken token, Func <FileLinePositionSpan, int?> func) { var lineSpan = token.GetLocation().GetLineSpan(); return(token.GetAnnotations(name).FirstOrDefault() ?? new SyntaxAnnotation(name, func.Invoke(lineSpan).ToString())); }