benchmarks/scenarios/ember.js
function _immediateObserver() {
    _emberMetalDebug.deprecate('Usage of `Ember.immediateObserver` is deprecated, use `Ember.observer` instead.', false, { id: 'ember-metal.immediate-observer', until: '3.0.0' });

    for (var i = 0, l = arguments.length; i < l; i++) {
      var arg = arguments[i];
      _emberMetalDebug.assert('Immediate observers must observe internal properties only, not properties on other objects.', typeof arg !== 'string' || arg.indexOf('.') === -1);
    }

    return observer.apply(this, arguments);
  }
function _immediateObserver() {
    _emberMetalDebug.deprecate('Usage of `Ember.immediateObserver` is deprecated, use `Ember.observer` instead.', false, { id: 'ember-metal.immediate-observer', until: '3.0.0' });

    for (var i = 0, l = arguments.length; i < l; i++) {
      var arg = arguments[i];
      _emberMetalDebug.assert('Immediate observers must observe internal properties only, not properties on other objects.', typeof arg !== 'string' || arg.indexOf('.') === -1);
    }

    return observer.apply(this, arguments);
  }
function _immediateObserver ( ) { _emberMetalDebug . deprecate ( 'Usage of `Ember.immediateObserver` is deprecated, use `Ember.observer` instead.' , false , { id : 'ember-metal.immediate-observer' , until : '3.0.0' } ) ; for ( var i = 0 , l = arguments . length ; i < l ; i ++ ) { var arg = arguments [ i ] ; _emberMetalDebug . assert ( 'Immediate observers must observe internal properties only, not properties on other objects.' , typeof arg !== 'string' || arg . indexOf ( '.' ) === - 1 ) ; } return observer . apply ( this , arguments ) ; }
Specify a method that observes property changes.

```javascript
Ember.Object.extend({
valueObserver: Ember.immediateObserver('value', function() {
Executes whenever the "value" property changes
})
});
```

In the future, `Ember.observer` may become asynchronous. In this event,
`Ember.immediateObserver` will maintain the synchronous behavior.

Also available as `Function.prototype.observesImmediately` if prototype extensions are
enabled.

@method _immediateObserver
@for Ember
@param {String} propertyNames*
@param {Function} func
@deprecated Use `Ember.observer` instead.
@return func
@private
Specify a method that observes property changes .