class_docstr: The PrettyPrinter used to print all HoloView objects via the
  pprint method.
class_docstr_tok: ["The","PrettyPrinter","used","to","print","all","HoloView","objects","via","the","pprint","method","."]
docstr: Given a node, return relevant information.
docstr_tok: ["Given","a","node",",","return","relevant","information","."]
code: def node_info(
      cls_or_slf, node, attrpath, attrpaths, siblings, level, value_dims
  ):
      """
      Given a node, return relevant information.
      """
      opts = None
      if hasattr(node, "children"):
          (lvl, lines) = (
              level,
              [(level, cls_or_slf.component_type(node))],
          )
          opts = cls_or_slf.option_info(node)
      elif hasattr(node, "main"):
          (lvl, lines) = cls_or_slf.adjointlayout_info(
              node, siblings, level, value_dims
          )
      elif getattr(node, "_deep_indexable", False):
          (lvl, lines) = cls_or_slf.ndmapping_info(
              node, siblings, level, value_dims
          )
      elif hasattr(node, "unit_format"):
          (lvl, lines) = level, [(level, repr(node))]
      else:
          (lvl, lines) = cls_or_slf.element_info(
              node, siblings, level, value_dims
          )
          opts = cls_or_slf.option_info(node)
  
      # The attribute indexing path acts as a prefix (if applicable)
      if attrpath is not None:
          padding = cls_or_slf.padding(attrpaths)
          (fst_lvl, fst_line) = lines[0]
          line = "." + attrpath.ljust(padding) + " " + fst_line
          lines[0] = (fst_lvl, line)
      else:
          fst_lvl = level
  
      if cls_or_slf.show_options and opts and opts.kwargs:
          lines += [
              (fst_lvl, l) for l in cls_or_slf.format_options(opts)
          ]
      return (lvl, lines)
  
imports: import re
  import textwrap
  import param
  from param.ipython import ParamPager
  from param.parameterized import bothmethod
  from .util import group_sanitizer, label_sanitizer
label_desc: Use image node_id 7 for calling the PrettyPrinter obj's underlying member method code with example usage: obj.node_info(cls_or_slf, node, attrpath, attrpaths, siblings, level, value_dims) and returns: lvl,  lines