protected override void OnExecute(object parameter)
        {
            if (_state.Status != ParserState.Ready ||
                !(parameter is ICodeExplorerNode node) ||
                node.Declaration == null)
            {
                return;
            }

            if (!(node.Parent.Declaration is ProjectDeclaration projectDeclaration))
            {
                Logger.Error($"The specified ICodeExplorerNode expected to be a direct child of a node whose declaration is a ProjectDeclaration.");
                return;
            }

            if (parameter is CodeExplorerReferenceViewModel reference)
            {
                if (!(reference.Reference is ReferenceModel model))
                {
                    return;
                }
                _finder.FindAllReferences(projectDeclaration, model.ToReferenceInfo());
                return;
            }

            _finder.FindAllReferences(node.Declaration);
        }
        protected override void OnExecute(object parameter)
        {
            if (_parserStatusProvider.Status != ParserState.Ready)
            {
                return;
            }

            var declaration = FindTarget(parameter);

            if (declaration == null)
            {
                return;
            }

            _service.FindAllReferences(declaration);
        }