code: def __init__(self, function: Callable) -> None:
      import inspect
  
      sfn = inspect.signature(function)
      self.found_args = False
      self.found_kwargs = False
      self.defaults = {}
      self.non_var_parameters = set()
      for p in sfn.parameters.values():
          if p.kind is inspect.Parameter.VAR_POSITIONAL:
              self.found_args = True
          if p.kind is inspect.Parameter.VAR_KEYWORD:
              self.found_kwargs = True
          else:
              self.non_var_parameters.add(p.name)
              self.defaults[p.name] = p.default is not p.empty
  
file_path: MONAI/monai/transforms/adaptors.py
imports: from __future__ import annotations
  from typing import Callable
  from monai.utils import export
label_desc: Use image node_id 1 to create a new FunctionSignature object  with example: obj = FunctionSignature(function)