Sha256: 41c17c456c1227213e4d2cbef60d6e62338044718a9f5fbf1fc4ad4861748346

Contents?: true

Size: 1.05 KB

Versions: 34

Compression:

Stored size: 1.05 KB

Contents

// 26.1.13 Reflect.set(target, propertyKey, V [, receiver])
var $          = require('./$')
  , has        = require('./$.has')
  , $export    = require('./$.export')
  , createDesc = require('./$.property-desc')
  , anObject   = require('./$.an-object')
  , isObject   = require('./$.is-object');

function set(target, propertyKey, V/*, receiver*/){
  var receiver = arguments.length < 4 ? target : arguments[3]
    , ownDesc  = $.getDesc(anObject(target), propertyKey)
    , existingDescriptor, proto;
  if(!ownDesc){
    if(isObject(proto = $.getProto(target))){
      return set(proto, propertyKey, V, receiver);
    }
    ownDesc = createDesc(0);
  }
  if(has(ownDesc, 'value')){
    if(ownDesc.writable === false || !isObject(receiver))return false;
    existingDescriptor = $.getDesc(receiver, propertyKey) || createDesc(0);
    existingDescriptor.value = V;
    $.setDesc(receiver, propertyKey, existingDescriptor);
    return true;
  }
  return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true);
}

$export($export.S, 'Reflect', {set: set});

Version data entries

34 entries across 17 versions & 7 rubygems

Version Path
ilog-0.4.1 node_modules/core-js/modules/es6.reflect.set.js
ilog-0.4.1 node_modules/core-js/library/modules/es6.reflect.set.js
ilog-0.4.0 node_modules/core-js/modules/es6.reflect.set.js
ilog-0.4.0 node_modules/core-js/library/modules/es6.reflect.set.js
ilog-0.3.3 node_modules/core-js/modules/es6.reflect.set.js
ilog-0.3.3 node_modules/core-js/library/modules/es6.reflect.set.js
locomotivecms-4.0.0.alpha1 app/javascript/node_modules/fbjs/node_modules/core-js/library/modules/es6.reflect.set.js
locomotivecms-4.0.0.alpha1 app/javascript/node_modules/fbjs/node_modules/core-js/modules/es6.reflect.set.js
locomotivecms-3.4.0 app/javascript/node_modules/fbjs/node_modules/core-js/library/modules/es6.reflect.set.js
locomotivecms-3.4.0 app/javascript/node_modules/fbjs/node_modules/core-js/modules/es6.reflect.set.js
cortex-0.1.3 spec/dummy/node_modules/fbjs/node_modules/core-js/library/modules/es6.reflect.set.js
cortex-0.1.3 spec/dummy/node_modules/fbjs/node_modules/core-js/modules/es6.reflect.set.js
lanes-0.8.0 node_modules/core-js/library/modules/es6.reflect.set.js
lanes-0.8.0 node_modules/core-js/modules/es6.reflect.set.js
xcodebuild-helper-1.2.5 externals/ios-sim-master/node_modules/core-js/library/modules/es6.reflect.set.js
xcodebuild-helper-1.2.5 externals/ios-sim-master/node_modules/core-js/modules/es6.reflect.set.js
xcodebuild-helper-1.2.3 externals/ios-sim-master/node_modules/core-js/library/modules/es6.reflect.set.js
xcodebuild-helper-1.2.3 externals/ios-sim-master/node_modules/core-js/modules/es6.reflect.set.js
babel-schmooze-sprockets-0.1.3 node_modules/core-js/modules/es6.reflect.set.js
babel-schmooze-sprockets-0.1.3 node_modules/core-js/library/modules/es6.reflect.set.js