to check if the descirptor is an initiallizer descriptor
@param {descriptor} desc it should be a descriptor better
function isInitializerDescriptor(desc) {
  return !!desc && isFunction(desc.initializer) && isBoolean(desc.configurable) && isBoolean(desc.enumerable) && isBoolean(desc.writable);
}