class_docstr: Keep the metadata about the source parameter that was originally passed
class_docstr_tok: ["Keep","the","metadata","about","the","source","parameter","that","was","originally","passed"]
code: def __str__(self) -> str:
      if self.kind == SourceKind.CALLABLE:
          inputs = "with" if self.has_inputs else "without"
          return f"Callable source {inputs} inputs: `{self.source}`"
      elif self.kind == SourceKind.ITERABLE:
          return f"Iterable (or iterator) source: `{self.source}` with cycle: `{self.cycle}`."
      else:
          return f"Generator function source: `{self.source}` with cycle: `{self.cycle}`."
  
imports: from enum import Enum
  from nvidia.dali import types
  from nvidia.dali import tensors
  import inspect
  import functools
label_desc: Use image node_id 2 for calling the SourceDescription obj's underlying member method code with example usage: obj.__str__() and returns: str, inputs, str, self, str, str, self, str, self, str, str, self, str, self, str