123456789101112131415 |
- var metadata = require('./_metadata');
- var anObject = require('./_an-object');
- var toMetaKey = metadata.key;
- var getOrCreateMetadataMap = metadata.map;
- var store = metadata.store;
- metadata.exp({ deleteMetadata: function deleteMetadata(metadataKey, target /* , targetKey */) {
- var targetKey = arguments.length < 3 ? undefined : toMetaKey(arguments[2]);
- var metadataMap = getOrCreateMetadataMap(anObject(target), targetKey, false);
- if (metadataMap === undefined || !metadataMap['delete'](metadataKey)) return false;
- if (metadataMap.size) return true;
- var targetMetadata = store.get(target);
- targetMetadata['delete'](targetKey);
- return !!targetMetadata.size || store['delete'](target);
- } });
|