getWriteable(context, path) {
    if (!this[OBJECT_ID]) {
      throw new RangeError('getWriteable() requires the objectId to be set')
    }

    const instance = Object.create(WriteableTable.prototype)
    instance[OBJECT_ID] = this[OBJECT_ID]
    instance.context = context
    instance.entries = this.entries
    instance.opIds = this.opIds
    instance.path = path
    return instance
  }
Returns a writeable instance of this table. This instance is returned when
the table is accessed within a change callback. `context` is the proxy
context that keeps track of the mutations.