'use strict'; var IsAccessorDescriptor = require('./IsAccessorDescriptor'); var IsDataDescriptor = require('./IsDataDescriptor'); var Type = require('./Type'); var assertRecord = require('../helpers/assertRecord'); // https://262.ecma-international.org/5.1/#sec-8.10.3 module.exports = function IsGenericDescriptor(Desc) { if (typeof Desc === 'undefined') { return false; } assertRecord(Type, 'Property Descriptor', 'Desc', Desc); if (!IsAccessorDescriptor(Desc) && !IsDataDescriptor(Desc)) { return true; } return false; };