aboutsummaryrefslogtreecommitdiff
path: root/node_modules/core-js/modules/esnext.reflect.metadata.js
blob: 7e1caa6812c5c0b1e8573d89eebcb639ee7abde2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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.metadata` method
// https://github.com/rbuckton/reflect-metadata
$({ target: 'Reflect', stat: true }, {
  metadata: function metadata(metadataKey, metadataValue) {
    return function decorator(target, key) {
      ordinaryDefineOwnMetadata(metadataKey, metadataValue, anObject(target), toMetadataKey(key));
    };
  }
});