protected T GetTreeNode()

in Backend/Core/ForTea.Core/Services/CodeStructure/T4CodeStructureElement.cs [25:86]


    protected T GetTreeNode()
      => _pointer.GetTreeNode();

    public override DocumentRange GetTextRange()
      => _textRange;

    public override ITreeNode TreeNode
      => GetTreeNode();

    public override PsiLanguageType Language
      => T4Language.Instance;

    public override IFileStructureAspect GetFileStructureAspect()
      => this;

    public override IGotoFileMemberAspect GetGotoMemberAspect()
      => null;

    public override IMemberNavigationAspect GetMemberNavigationAspect()
      => this;

    public abstract void Present(
      StructuredPresenter<TreeModelNode, IPresentableItem> presenter,
      IPresentableItem item,
      TreeModelNode modelNode,
      PresentationState state
    );

    public abstract IList<string> GetQuickSearchTexts();

    bool IFileStructureAspect.CanMoveElements(RelativeLocation location, IList<CodeStructureElement> dropElements)
      => false;

    void IFileStructureAspect.MoveElements(RelativeLocation location, IList<CodeStructureElement> dropElements)
      => throw new NotSupportedException();

    bool IFileStructureAspect.CanRemove()
      => false;

    void IFileStructureAspect.Remove()
      => throw new NotSupportedException();

    bool IFileStructureAspect.CanRename()
      => false;

    string IFileStructureAspect.InitialName()
      => throw new NotSupportedException();

    void IFileStructureAspect.Rename(string newName)
      => throw new NotSupportedException();

    public virtual DocumentRange NavigationRange
      => GetTreeNode()?.GetNavigationRange() ?? DocumentRange.InvalidRange;

    bool IFileStructureAspect.InitiallyExpanded
      => true;

    DocumentRange[] IMemberNavigationAspect.GetNavigationRanges()
    {
      DocumentRange navigationRange = NavigationRange;
      return navigationRange.IsValid() ? new[] { navigationRange } : EmptyArray<DocumentRange>.Instance;
    }