| '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; |
| }; |