class_docstr: A ``Linker`` that JIT compiles a ``FunctionGraph`` into a single runnable thunk.
  
  The entirety of ``Linker.fgraph`` is converted into a single JIT compiled
  thunk that is run by an PyTensor ``VM``.
class_docstr_tok: ["A","``","Linker","``","that","JIT","compiles","a","``","FunctionGraph","``","into","a","single","runnable","thunk",".","The","entirety","of","``","Linker.fgraph","``","is","converted","into","a","single","JIT","compiled","thunk","that","is","run","by","an","PyTensor","``","VM","``","."]
docstr: Pre-process inputs for the generated thunk.
  
  Parameters
  ==========
  storage_map
      A ``dict`` mapping ``Variable``s to their storage lists.
  
  Returns
  =======
  A list of thunk inputs
docstr_tok: ["Pre-process","inputs","for","the","generated","thunk",".","Parameters","==========","storage_map","A","``","dict","``","mapping","``","Variable","``","s","to","their","storage","lists",".","Returns","=======","A","list","of","thunk","inputs"]
code: def create_thunk_inputs(
      self, storage_map: dict[Variable, list[Any]]
  ) -> list[Any]:
      """Pre-process inputs for the generated thunk.
  
      Parameters
      ==========
      storage_map
          A ``dict`` mapping ``Variable``s to their storage lists.
  
      Returns
      =======
      A list of thunk inputs
      """
  
imports: from abc import ABC, abstractmethod
  from collections.abc import Sequence
  from copy import copy, deepcopy
  from typing import TYPE_CHECKING, Any, Callable, Optional, Union
  from pytensor.configdefaults import config
  from pytensor.graph.basic import Apply, Variable
  from pytensor.graph.fg import FunctionGraph
  from pytensor.graph.type import Type
  from pytensor.link.utils import gc_helper, map_storage, raise_with_op, streamline
  from pytensor.utils import difference
label_desc: Use image node_id 2 for calling the JITLinker obj's underlying member method code with example usage: obj.create_thunk_inputs(storage_map) without return types