docstr: A JIT function is launched with: fn[grid](*args, **kwargs).
  Hence JITFunction.__getitem__ returns a callable proxy that
  memorizes the grid.
code: def __getitem__(self, grid) -> T:
      """
      A JIT function is launched with: fn[grid](*args, **kwargs).
      Hence JITFunction.__getitem__ returns a callable proxy that
      memorizes the grid.
      """
      return lambda *args, **kwargs: self.run(
          grid=grid, warmup=False, *args, **kwargs
      )
  
imports: from __future__ import annotations, division
  import ast
  import hashlib
  import inspect
  import os
  import textwrap
  from collections import defaultdict, namedtuple
  from functools import cached_property
  from typing import Callable, Generic, Iterable, List, Optional, TypeVar, Union, cast, overload
  from ..runtime.driver import driver
label_desc: Use image node_id 1 for calling the KernelInterface obj's underlying member method code with example usage: obj.__getitem__(grid) and returns: function