code: def goto_definitions(self, context, name):
      def_ = name.get_definition(import_name_always=True)
      if def_ is not None:
          type_ = def_.type
          if type_ == "classdef":
              return [ClassContext(self, context, name.parent)]
          elif type_ == "funcdef":
              return [
                  FunctionContext.from_context(context, name.parent)
              ]
  
          if type_ == "expr_stmt":
              is_simple_name = name.parent.type not in (
                  "power",
                  "trailer",
              )
              if is_simple_name:
                  return eval_expr_stmt(context, def_, name)
          if type_ == "for_stmt":
              container_types = context.eval_node(def_.children[3])
              cn = ContextualizedNode(context, def_.children[3])
              for_types = iterate_contexts(container_types, cn)
              c_node = ContextualizedName(context, name)
              return check_tuple_assignments(self, c_node, for_types)
          if type_ in ("import_from", "import_name"):
              return imports.infer_import(context, name)
  
      return helpers.evaluate_call_of_leaf(context, name)
  
imports: from parso.python import tree
  import parso
  from parso import python_bytes_to_unicode
  from jedi import debug
  from jedi import parser_utils
  from jedi.evaluate.utils import unite
  from jedi.evaluate import imports
  from jedi.evaluate import recursion
  from jedi.evaluate.cache import evaluator_function_cache
  from jedi.evaluate import compiled
  from jedi.evaluate import helpers
  from jedi.evaluate.filters import TreeNameDefinition, ParamName
  from jedi.evaluate.base_context import ContextualizedName, ContextualizedNode, ContextSet, NO_CONTEXTS, iterate_contexts
  from jedi.evaluate.context import ClassContext, FunctionContext, AnonymousInstance, BoundMethod
  from jedi.evaluate.context.iterable import CompForContext
  from jedi.evaluate.syntax_tree import eval_trailer, eval_expr_stmt, eval_node, check_tuple_assignments
label_desc: Use image node_id 8 for calling the Evaluator obj's underlying member method code with example usage: obj.goto_definitions(context, name) and returns: helpers, list, check_tuple_assignments, imports, list, eval_expr_stmt