code: def _disable_exogenous_enforcement(
      forecaster,
      enforce_exogenous: bool,
      exp_has_exogenous: TSExogenousPresent,
  ) -> bool:
      """Checks to see if exogenous support should be enforced. If it should
      but the forecaster does not support it, the container will be disabled.
      NOTE: Only enforced if the experiment has exogenous variables. If it does not,
      then no models are disabled.
  
      Parameters
      ----------
      forecaster : `sktime` compatible forecaster
          forecaster to check for prediction interval capability.
          Can be a dummy object of the forecasting class
      enforce_exogenous : bool
          Should exogenous support be enforced?
      exp_has_exogenous : TSExogenousTypes
          Whether the experiment has exogenous variables or not?
  
      Returns
      -------
      bool
          True if user wants to enforce exogenous support and forecaster
          does not supports it. False otherwise.
      """
  
      # Disable models only if the experiment has exogenous variables
      if (
          exp_has_exogenous == TSExogenousPresent.YES
          and enforce_exogenous
          and forecaster.get_tag("ignores-exogeneous-X")
      ):
          return True
      return False
  
file_path: pycaret/pycaret/utils/time_series/forecasting/models.py
imports: import pandas
  from sktime.forecasting.base import BaseForecaster
  from pycaret.utils.time_series import TSExogenousPresent
label_desc: Use image node_id 2 for calling a global function with example usage: _disable_exogenous_enforcement(forecaster, enforce_exogenous, exp_has_exogenous) and returns: False, True