|
@@ -366,6 +366,12 @@ define(['./compatibility'], function () {
|
|
|
return result;
|
|
|
}
|
|
|
|
|
|
+ function deleteKeysFrom (keys, obj) {
|
|
|
+ keys.forEach(function (each) {
|
|
|
+ delete obj[each];
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
function fillTraitTransformation (traitTransformation, obj) {
|
|
|
// assert(Object.getOwnProperties(obj).length === 0)
|
|
|
var traitMethods = traitTransformation.trait.methods;
|
|
@@ -382,9 +388,7 @@ define(['./compatibility'], function () {
|
|
|
}
|
|
|
var traitExclusions = traitTransformation.exclusions;
|
|
|
if (traitExclusions) {
|
|
|
- traitExclusions.forEach(function (selector) {
|
|
|
- delete obj[selector];
|
|
|
- });
|
|
|
+ deleteKeysFrom(traitExclusions, obj);
|
|
|
}
|
|
|
return obj;
|
|
|
}
|
|
@@ -447,18 +451,14 @@ define(['./compatibility'], function () {
|
|
|
});
|
|
|
var traitExclusions = traitTransformation.exclusions;
|
|
|
if (traitExclusions) {
|
|
|
- traitExclusions.forEach(function (selector) {
|
|
|
- delete obj[selector];
|
|
|
- });
|
|
|
+ deleteKeysFrom(traitExclusions, obj);
|
|
|
}
|
|
|
return changes;
|
|
|
}
|
|
|
|
|
|
function applyTraitMethodDeletion (selector, traitTransformation, obj) {
|
|
|
var changes = aliasesOfSelector(selector, traitTransformation.aliases);
|
|
|
- changes.forEach(function (aliasSelector) {
|
|
|
- delete obj[aliasSelector];
|
|
|
- });
|
|
|
+ deleteKeysFrom(changes, obj);
|
|
|
return changes;
|
|
|
}
|
|
|
|