16 lines
670 B
JavaScript
16 lines
670 B
JavaScript
var $ = require('../internals/export');
|
|
var ReflectMetadataModule = require('../internals/reflect-metadata');
|
|
var anObject = require('../internals/an-object');
|
|
|
|
var toMetadataKey = ReflectMetadataModule.toKey;
|
|
var ordinaryDefineOwnMetadata = ReflectMetadataModule.set;
|
|
|
|
// `Reflect.defineMetadata` method
|
|
// https://github.com/rbuckton/reflect-metadata
|
|
$({ target: 'Reflect', stat: true }, {
|
|
defineMetadata: function defineMetadata(metadataKey, metadataValue, target /* , targetKey */) {
|
|
var targetKey = arguments.length < 4 ? undefined : toMetadataKey(arguments[3]);
|
|
ordinaryDefineOwnMetadata(metadataKey, metadataValue, anObject(target), targetKey);
|
|
}
|
|
});
|