WeakMap & WeakSet

What design pattern does this code demonstrate with WeakSet?
const disposables = new WeakSet();

class Disposable {
  constructor() {
    disposables.add(this);
  }
  
  static isDisposable(obj) {
    return disposables.has(obj);
  }
  
  dispose() {
    // Cleanup resources
    disposables.delete(this);
  }
}
Next Question (20/20)