class_docstr: Resolve documentation links using searchindex.js generated by Sphinx
  
  Parameters
  ----------
  doc_url : str
      The base URL of the project website.
  searchindex : str
      Filename of searchindex, relative to doc_url.
  extra_modules_test : list of str
      List of extra module names to test.
  relative : bool
      Return relative links (only useful for links to documentation of this
      package).
docstr: Resolve the link to the documentation, returns None if not found
  
  Parameters
  ----------
  cobj : dict
      Dict with information about the "code object" for which we are
      resolving a link.
      cobj['name'] : function or class name (str)
      cobj['module_short'] : shortened module name (str)
      cobj['module'] : module name (str)
  this_url: str
      URL of the current page. Needed to construct relative URLs
      (only used if relative=True in constructor).
  
  Returns
  -------
  link : str | None
      The link (URL) to the documentation.
docstr_tok: ["Resolve","the","link","to","the","documentation",",","returns","None","if","not","found","Parameters","--","--","--","--","--","cobj",":","dict","Dict","with","information","about","the","``","code","object","''","for","which","we","are","resolving","a","link",".","cobj","[","'name","'","]",":","function","or","class","name","(","str",")","cobj","[","'module_short","'","]",":","shortened","module","name","(","str",")","cobj","[","'module","'","]",":","module","name","(","str",")","this_url",":","str","URL","of","the","current","page",".","Needed","to","construct","relative","URLs","(","only","used","if","relative=True","in","constructor",")",".","Returns","--","--","--","-","link",":","str","|","None","The","link","(","URL",")","to","the","documentation","."]
code: def resolve(self, cobj, this_url):
      """Resolve the link to the documentation, returns None if not found
  
      Parameters
      ----------
      cobj : dict
          Dict with information about the "code object" for which we are
          resolving a link.
          cobj['name'] : function or class name (str)
          cobj['module_short'] : shortened module name (str)
          cobj['module'] : module name (str)
      this_url: str
          URL of the current page. Needed to construct relative URLs
          (only used if relative=True in constructor).
  
      Returns
      -------
      link : str | None
          The link (URL) to the documentation.
      """
      full_name = cobj["module_short"] + "." + cobj["name"]
      link = self._link_cache.get(full_name, None)
      if link is None:
          # we don't have it cached
          link = self._get_link(cobj)
          # cache it for the future
          self._link_cache[full_name] = link
  
      if link is False or link is None:
          # failed to resolve
          return None
  
      if self.relative:
          link = os.path.relpath(link, start=this_url)
          if self._is_windows:
              # replace '\' with '/' so it on the web
              link = link.replace("\\", "/")
  
          # for some reason, the relative link goes one directory too high up
          link = link[3:]
  
      return link
  
imports: from __future__ import print_function
  import codecs
  import gzip
  import os
  import posixpath
  import re
  import shelve
  import sys
  from io import StringIO
  from .None import sphinx_compatibility
label_desc: Use image node_id 3 for calling the SphinxDocLinkResolver obj's underlying member method code with example usage: obj.resolve(cobj, this_url) and returns: link, None