boolean wasReferenceable = isReferenceable();
// Change the mixin types property (atomically, even if some other operation snuck in and added the mixin) ...
MutableCachedNode mutable = mutable();
mutable.removeMixin(cache, removedMixinName);
// If there were protected properties or children, remove them
if (protectedPropertiesToRemove != null) {
for (Name protectedPropertyName : protectedPropertiesToRemove) {
mutable.removeProperty(cache, protectedPropertyName);