code: function getPreAssignBindingsEnabled() {
      if (!respectPreAssignBindingsEnabled) {
        // respectPreAssignBindingsEnabled === false
        // We're ignoring the AngularJS `$compileProvider.preAssignBindingsEnabled()` value in this case.
        return true;
      }
  
      // respectPreAssignBindingsEnabled === true
  
      // This check is needed because $compileProvider.preAssignBindingsEnabled does not exist prior
      // to AngularJS 1.5.10, is deprecated in AngularJS 1.6.x, and removed in AngularJS 1.7.x.
      if (typeof $compileProvider.preAssignBindingsEnabled === 'function') {
        return $compileProvider.preAssignBindingsEnabled();
      }
  
      // Flag respected but not present => apply logic based on AngularJS version used.
      if (angular.version.major === 1 && angular.version.minor < 6) {
        // AngularJS <1.5.10
        return true;
      }
  
      // AngularJS >=1.7.0
      return false;
    }
docs: @private
  @description
  This function returns `true` if AngularJS Material-specific (dialog/panel/toast/bottomsheet)
  controllers have bindings pre-assigned in controller constructors and `false` otherwise.
  
  Note that this doesn't affect directives/components created via regular AngularJS methods
  which constitute most Material and user-created components; their behavior can be checked via
  `$compileProvider.preAssignBindingsEnabled()` in AngularJS `>=1.5.10 <1.7.0`.
  
  @returns {*} current preAssignBindingsEnabled state