internal static void TestRuleDeclaredName(int level, JetBrains.ReSharper.PsiPlugin.Tree.IRuleDeclaredName param, String caller) { if (!CanVisitFurther(param)) { return; } VisitElement(level, param, caller); }
internal static void TestRuleDeclaration(int level, JetBrains.ReSharper.PsiPlugin.Tree.IRuleDeclaration param, String caller) { if (!CanVisitFurther(param)) { return; } VisitElement(level, param, caller); { JetBrains.ReSharper.PsiPlugin.Tree.IRuleBody child = ((JetBrains.ReSharper.PsiPlugin.Tree.IRuleDeclaration)param).Body; TestRuleBody(level + 1, (JetBrains.ReSharper.PsiPlugin.Tree.IRuleBody)child, "Body"); } { JetBrains.ReSharper.PsiPlugin.Tree.IExtrasDefinition child = ((JetBrains.ReSharper.PsiPlugin.Tree.IRuleDeclaration)param).Extras; TestExtrasDefinition(level + 1, (JetBrains.ReSharper.PsiPlugin.Tree.IExtrasDefinition)child, "Extras"); } { JetBrains.ReSharper.PsiPlugin.Tree.IRuleBracketTypedParameters child = ((JetBrains.ReSharper.PsiPlugin.Tree.IRuleDeclaration)param).Parameters; TestRuleBracketTypedParameters(level + 1, (JetBrains.ReSharper.PsiPlugin.Tree.IRuleBracketTypedParameters)child, "Parameters"); } { JetBrains.ReSharper.PsiPlugin.Tree.IRuleDeclaredName child = ((JetBrains.ReSharper.PsiPlugin.Tree.IRuleDeclaration)param).RuleName; TestRuleDeclaredName(level + 1, (JetBrains.ReSharper.PsiPlugin.Tree.IRuleDeclaredName)child, "RuleName"); } }
public static JetBrains.ReSharper.PsiPlugin.Tree.IRuleDeclaration GetByRuleName(JetBrains.ReSharper.PsiPlugin.Tree.IRuleDeclaredName param) { if (param == null) { return(null); } TreeElement current = (TreeElement)param; if (current.parent is JetBrains.ReSharper.PsiPlugin.Tree.Impl.RuleDeclaration) { if (current.parent.GetChildRole(current) != JetBrains.ReSharper.PsiPlugin.Tree.Impl.RuleDeclaration.PSI_RULE_NAME) { return(null); } current = current.parent; } else { return(null); } return((JetBrains.ReSharper.PsiPlugin.Tree.IRuleDeclaration)current); }
public virtual void VisitRuleDeclaredName([JetBrains.Annotations.NotNull] JetBrains.ReSharper.PsiPlugin.Tree.IRuleDeclaredName ruleDeclaredNameParam, TContext context) { VisitNode(ruleDeclaredNameParam, context); }
public virtual JetBrains.ReSharper.PsiPlugin.Tree.IRuleDeclaredName SetRuleName(JetBrains.ReSharper.PsiPlugin.Tree.IRuleDeclaredName param) { using (JetBrains.Application.WriteLockCookie.Create(this.IsPhysical())) { TreeElement current = null, next = GetNextFilteredChild(current), result = null; while (next.NodeType == JetBrains.ReSharper.PsiPlugin.Tree.Impl.ElementType.MODIFIER) { next = GetNextFilteredChild(current); if (next == null) { return((JetBrains.ReSharper.PsiPlugin.Tree.IRuleDeclaredName)result); } else { if (next.NodeType == JetBrains.ReSharper.PsiPlugin.Tree.Impl.ElementType.MODIFIER) { current = next; } else { return((JetBrains.ReSharper.PsiPlugin.Tree.IRuleDeclaredName)result); } } } next = GetNextFilteredChild(current); if (next == null) { if (param == null) { return(null); } result = current = (TreeElement)JetBrains.ReSharper.Psi.ExtensionsAPI.Tree.ModificationUtil.AddChildAfter(this, current, (JetBrains.ReSharper.Psi.Tree.ITreeNode)param); } else { if (next.NodeType == JetBrains.ReSharper.PsiPlugin.Tree.Impl.ElementType.RULE_DECLARED_NAME) { if (param != null) { result = current = (TreeElement)JetBrains.ReSharper.Psi.ExtensionsAPI.Tree.ModificationUtil.ReplaceChild(next, (JetBrains.ReSharper.Psi.Tree.ITreeNode)param); } else { current = GetNextFilteredChild(next); JetBrains.ReSharper.Psi.ExtensionsAPI.Tree.ModificationUtil.DeleteChild(next); } } else { if (param == null) { return(null); } result = (TreeElement)JetBrains.ReSharper.Psi.ExtensionsAPI.Tree.ModificationUtil.AddChildBefore(next, (JetBrains.ReSharper.Psi.Tree.ITreeNode)param); current = next; } } return((JetBrains.ReSharper.PsiPlugin.Tree.IRuleDeclaredName)result); } }