Show More
Commit Description:
merge
Commit Description:
merge
References:
File last commit:
Show/Diff file:
Action:
node_modules/core-js/modules/es7.reflect.get-metadata-keys.js
| 19 lines
| 783 B
| application/javascript
| JavascriptLexer
|
r789 | var Set = require('./es6.set'); | |||
var from = require('./_array-from-iterable'); | ||||
var metadata = require('./_metadata'); | ||||
var anObject = require('./_an-object'); | ||||
var getPrototypeOf = require('./_object-gpo'); | ||||
var ordinaryOwnMetadataKeys = metadata.keys; | ||||
var toMetaKey = metadata.key; | ||||
var ordinaryMetadataKeys = function (O, P) { | ||||
var oKeys = ordinaryOwnMetadataKeys(O, P); | ||||
var parent = getPrototypeOf(O); | ||||
if (parent === null) return oKeys; | ||||
var pKeys = ordinaryMetadataKeys(parent, P); | ||||
return pKeys.length ? oKeys.length ? from(new Set(oKeys.concat(pKeys))) : pKeys : oKeys; | ||||
}; | ||||
metadata.exp({ getMetadataKeys: function getMetadataKeys(target /* , targetKey */) { | ||||
return ordinaryMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1])); | ||||
} }); | ||||