benchmarks/scenarios/ember.js
function collect() {
    for (var _len3 = arguments.length, dependentKeys = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
      dependentKeys[_key3] = arguments[_key3];
    }

    return multiArrayMacro(dependentKeys, function () {
      var properties = _emberMetalGet_properties.default(this, dependentKeys);
      var res = _emberRuntimeSystemNative_array.A();
      for (var key in properties) {
        if (properties.hasOwnProperty(key)) {
          if (_emberMetalIs_none.default(properties[key])) {
            res.push(null);
          } else {
            res.push(properties[key]);
          }
        }
      }
      return res;
    });
  }
function collect() {
    for (var _len3 = arguments.length, dependentKeys = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
      dependentKeys[_key3] = arguments[_key3];
    }

    return multiArrayMacro(dependentKeys, function () {
      var properties = _emberMetalGet_properties.default(this, dependentKeys);
      var res = _emberRuntimeSystemNative_array.A();
      for (var key in properties) {
        if (properties.hasOwnProperty(key)) {
          if (_emberMetalIs_none.default(properties[key])) {
            res.push(null);
          } else {
            res.push(properties[key]);
          }
        }
      }
      return res;
    });
  }
function collect ( ) { for ( var _len3 = arguments . length , dependentKeys = Array ( _len3 ) , _key3 = 0 ; _key3 < _len3 ; _key3 ++ ) { dependentKeys [ _key3 ] = arguments [ _key3 ] ; } return multiArrayMacro ( dependentKeys , function ( ) { var properties = _emberMetalGet_properties . default ( this , dependentKeys ) ; var res = _emberRuntimeSystemNative_array . A ( ) ; for ( var key in properties ) { if ( properties . hasOwnProperty ( key ) ) { if ( _emberMetalIs_none . default ( properties [ key ] ) ) { res . push ( null ) ; } else { res . push ( properties [ key ] ) ; } } } return res ; } ) ; }
A computed property that returns the array of values
for the provided dependent properties.

Example

```javascript
var Hamster = Ember.Object.extend({
clothes: Ember.computed.collect('hat', 'shirt')
});

var hamster = Hamster.create();

hamster.get('clothes'); // [null, null]
hamster.set('hat', 'Camp Hat');
hamster.set('shirt', 'Camp Shirt');
hamster.get('clothes'); // ['Camp Hat', 'Camp Shirt']
```

@method collect
@for Ember.computed
@param {String} dependentKey*
@return {Ember.ComputedProperty} computed property which maps
values of all passed in properties to an array.
@public
A computed property that returns the array of values for the provided dependent properties .