Keep canonical callback ownership independent of writable raw-listener metadata. Resolve the native removal argument in current registration order, then let EventEmitter own mutation, getter timing and removal meta-events. Leave registrations unwrapped with explicit observation gaps when methods or receivers do not support that ownership model. Preserve per-callback Evidence for supported registrations and document the remaining limits. Fixes #4513
1330 lines
44 KiB
JavaScript
1330 lines
44 KiB
JavaScript
"use strict";
|
|
|
|
const applyFunction = Reflect.apply;
|
|
const applyArguments = Function.prototype.apply;
|
|
const bindFunction = Function.prototype.bind;
|
|
const callFunction = Function.prototype.call;
|
|
const arrayFrom = Array.from;
|
|
const arrayIsArray = Array.isArray;
|
|
const defineProperty = Object.defineProperty;
|
|
const ownPropertyDescriptor = Object.getOwnPropertyDescriptor;
|
|
const getPrototypeOf = Object.getPrototypeOf;
|
|