docstr: Searches a GenericElementPlot for a Link.
docstr_tok: ["Searches","a","GenericElementPlot","for","a","Link","."]
code: def find_link(cls, plot, link=None):
      """
      Searches a GenericElementPlot for a Link.
      """
      registry = Link.registry.items()
      for source in plot.link_sources:
          if link is None:
              links = [
                  l
                  for src, links in registry
                  for l in links
                  if src is source
                  or (
                      src._plot_id is not None
                      and src._plot_id == source._plot_id
                  )
              ]
              if links:
                  return (plot, links)
          elif (link.target is source) or (
              link.target is not None
              and link.target._plot_id is not None
              and link.target._plot_id == source._plot_id
          ):
              return (plot, [link])
  
imports: import numpy
  from bokeh.models import CustomJS, Toolbar
  from bokeh.models.tools import RangeTool
  from ...core.util import isscalar
  from ..links import DataLink, Link, RangeToolLink, RectanglesTableLink, SelectionLink, VertexTableLink
  from ..plot import GenericElementPlot, GenericOverlayPlot
label_desc: Use image node_id 3 for calling the LinkCallback obj's underlying member method code with example usage: obj.find_link(cls, plot, link) and returns: plot,  links, plot,  list