class_docstr: Abstract base class for task instances dependencies.
  
  All dependencies must be satisfied in order for task instances to run.
  For example, a task that can only run if a certain number of its upstream tasks succeed.
  This is an abstract class and must be subclassed to be used.
class_docstr_tok: ["Abstract","base","class","for","task","instances","dependencies",".","All","dependencies","must","be","satisfied","in","order","for","task","instances","to","run",".","For","example",",","a","task","that","can","only","run","if","a","certain","number","of","its","upstream","tasks","succeed",".","This","is","an","abstract","class","and","must","be","subclassed","to","be","used","."]
docstr: The human-readable name for the dependency.
  
  Use the class name as the default if ``NAME`` is not provided.
docstr_tok: ["The","human-readable","name","for","the","dependency",".","Use","the","class","name","as","the","default","if","``","NAME","``","is","not","provided","."]
code: def name(self) -> str:
      """The human-readable name for the dependency.
  
      Use the class name as the default if ``NAME`` is not provided.
      """
      return getattr(self, "NAME", self.__class__.__name__)
  
file_path: airflow/airflow/ti_deps/deps/base_ti_dep.py
imports: from __future__ import annotations
  from typing import TYPE_CHECKING, Any, Iterator, NamedTuple
  from airflow.ti_deps.dep_context import DepContext
  from airflow.utils.session import provide_session
label_desc: Use image node_id 4 for calling the BaseTIDep obj's underlying member method code with example usage: obj.name() and returns: getattr