SYMBOL INDEX (498 symbols across 34 files) FILE: @types/automerge/index.d.ts type Doc (line 6) | type Doc = FreezeObject type ChangeFn (line 8) | type ChangeFn = (doc: T) => void type InitOptions (line 17) | type InitOptions = type ChangeOptions (line 27) | type ChangeOptions = type PatchCallback (line 35) | type PatchCallback = (patch: Patch, before: T, after: T, local: boole... type ObserverCallback (line 36) | type ObserverCallback = (diff: MapDiff | ListDiff | ValueDiff, before... class Observable (line 38) | class Observable { class TableRow (line 70) | class TableRow { class Table (line 74) | class Table { class List (line 84) | class List extends Array { class Text (line 89) | class Text extends List { class Counter (line 101) | class Counter extends Number { class Int (line 110) | class Int { constructor(value: number) } class Uint (line 111) | class Uint { constructor(value: number) } class Float64 (line 112) | class Float64 { constructor(value: number) } type ReadonlyTable (line 116) | type ReadonlyTable = ReadonlyArray & Table type ReadonlyList (line 117) | type ReadonlyList = ReadonlyArray & List type ReadonlyText (line 118) | type ReadonlyText = ReadonlyList & Text type Hash (line 166) | type Hash = string // 64-digit hex string type OpId (line 167) | type OpId = string // of the form `${counter}@${actorId}` type UUID (line 169) | type UUID = string type UUIDGenerator (line 170) | type UUIDGenerator = () => UUID type UUIDFactory (line 171) | interface UUIDFactory extends UUIDGenerator { type Clock (line 177) | interface Clock { type State (line 181) | interface State { type BackendState (line 186) | interface BackendState { type BinaryChange (line 190) | type BinaryChange = Uint8Array & { __binaryChange: true } type BinaryDocument (line 191) | type BinaryDocument = Uint8Array & { __binaryDocument: true } type BinarySyncState (line 192) | type BinarySyncState = Uint8Array & { __binarySyncState: true } type BinarySyncMessage (line 193) | type BinarySyncMessage = Uint8Array & { __binarySyncMessage: true } type SyncState (line 195) | interface SyncState { type SyncMessage (line 199) | interface SyncMessage { type SyncHave (line 206) | interface SyncHave { type Change (line 211) | interface Change { type Op (line 222) | interface Op { type Patch (line 236) | interface Patch { type MapDiff (line 248) | interface MapDiff { type ListDiff (line 260) | interface ListDiff { type SingleInsertEdit (line 269) | interface SingleInsertEdit { type MultiInsertEdit (line 283) | interface MultiInsertEdit { type UpdateEdit (line 295) | interface UpdateEdit { type RemoveEdit (line 304) | interface RemoveEdit { type ValueDiff (line 312) | interface ValueDiff { type OpAction (line 318) | type OpAction = type CollectionType (line 328) | type CollectionType = type DataType (line 334) | type DataType = type Freeze (line 348) | type Freeze = type FreezeTable (line 358) | interface FreezeTable extends ReadonlyTable> {} type FreezeList (line 359) | interface FreezeList extends ReadonlyList> {} type FreezeArray (line 360) | interface FreezeArray extends ReadonlyArray> {} type FreezeMap (line 361) | interface FreezeMap extends ReadonlyMap, Freeze> {} type FreezeObject (line 362) | type FreezeObject = { readonly [P in keyof T]: Freeze } FILE: backend/backend.js function init (line 8) | function init() { function clone (line 12) | function clone(backend) { function free (line 16) | function free(backend) { function applyChanges (line 27) | function applyChanges(backend, changes) { function hashByActor (line 34) | function hashByActor(state, actorId, index) { function applyLocalChange (line 54) | function applyLocalChange(backend, change) { function save (line 96) | function save(backend) { function load (line 104) | function load(data) { function loadChanges (line 116) | function loadChanges(backend, changes) { function getPatch (line 127) | function getPatch(backend) { function getHeads (line 135) | function getHeads(backend) { function getAllChanges (line 142) | function getAllChanges(backend) { function getChanges (line 151) | function getChanges(backend, haveDeps) { function getChangesAdded (line 166) | function getChangesAdded(backend1, backend2) { function getChangeByHash (line 176) | function getChangeByHash(backend, hash) { function getMissingDeps (line 190) | function getMissingDeps(backend, heads = []) { FILE: backend/columnar.js constant MAGIC_BYTES (line 24) | const MAGIC_BYTES = new Uint8Array([0x85, 0x6f, 0x4a, 0x83]) constant CHUNK_TYPE_DOCUMENT (line 26) | const CHUNK_TYPE_DOCUMENT = 0 constant CHUNK_TYPE_CHANGE (line 27) | const CHUNK_TYPE_CHANGE = 1 constant CHUNK_TYPE_DEFLATE (line 28) | const CHUNK_TYPE_DEFLATE = 2 // like CHUNK_TYPE_CHANGE but with DEFLATE ... constant DEFLATE_MIN_SIZE (line 32) | const DEFLATE_MIN_SIZE = 256 constant COLUMN_TYPE (line 35) | const COLUMN_TYPE = { constant COLUMN_TYPE_DEFLATE (line 41) | const COLUMN_TYPE_DEFLATE = 8 constant VALUE_TYPE (line 46) | const VALUE_TYPE = { constant ACTIONS (line 52) | const ACTIONS = ['makeMap', 'set', 'makeList', 'del', 'makeText', 'inc',... constant OBJECT_TYPE (line 54) | const OBJECT_TYPE = {makeMap: 'map', makeList: 'list', makeText: 'text',... constant COMMON_COLUMNS (line 56) | const COMMON_COLUMNS = [ constant CHANGE_COLUMNS (line 72) | const CHANGE_COLUMNS = COMMON_COLUMNS.concat([ constant DOC_OPS_COLUMNS (line 78) | const DOC_OPS_COLUMNS = COMMON_COLUMNS.concat([ constant DOCUMENT_COLUMNS (line 84) | const DOCUMENT_COLUMNS = [ function actorIdToActorNum (line 101) | function actorIdToActorNum(opId, actorIds) { function compareParsedOpIds (line 114) | function compareParsedOpIds(id1, id2) { function parseAllOpIds (line 133) | function parseAllOpIds(changes, single) { function encodeObjectId (line 176) | function encodeObjectId(op, columns) { function encodeOperationKey (line 192) | function encodeOperationKey(op, columns) { function encodeOperationAction (line 213) | function encodeOperationAction(op, columns) { function getNumberTypeAndValue (line 228) | function getNumberTypeAndValue(op) { function encodeValue (line 259) | function encodeValue(op, columns) { function decodeValue (line 300) | function decodeValue(sizeTag, bytes) { function decodeValueColumns (line 339) | function decodeValueColumns(columns, colIndex, actorIds, result) { function encodeOps (line 370) | function encodeOps(ops, forDocument) { function validDatatype (line 438) | function validDatatype(value, datatype) { function expandMultiOps (line 446) | function expandMultiOps(ops, startOp, actor) { function decodeOps (line 483) | function decodeOps(ops, forDocument) { function checkSortedOpIds (line 515) | function checkSortedOpIds(opIds) { function encoderByColumnId (line 525) | function encoderByColumnId(columnId) { function decoderByColumnId (line 539) | function decoderByColumnId(columnId, buffer) { function makeDecoders (line 553) | function makeDecoders(columns, columnSpec) { function decodeColumns (line 577) | function decodeColumns(columns, actorIds, columnSpec) { function decodeColumnInfo (line 609) | function decodeColumnInfo(decoder) { function encodeColumnInfo (line 626) | function encodeColumnInfo(encoder, columns) { function decodeChangeHeader (line 635) | function decodeChangeHeader(decoder) { function encodeContainer (line 659) | function encodeContainer(chunkType, encodeContentsCallback) { function decodeContainerHeader (line 688) | function decodeContainerHeader(decoder, computeHash) { function encodeChange (line 710) | function encodeChange(changeObj) { function decodeChangeColumns (line 741) | function decodeChangeColumns(buffer) { function decodeChange (line 770) | function decodeChange(buffer) { function decodeChangeMeta (line 783) | function decodeChangeMeta(buffer, computeHash) { function deflateChange (line 798) | function deflateChange(buffer) { function inflateChange (line 813) | function inflateChange(buffer) { function splitContainers (line 829) | function splitContainers(buffer) { function decodeChanges (line 843) | function decodeChanges(binaryChanges) { function sortOpIds (line 859) | function sortOpIds(a, b) { function groupChangeOps (line 876) | function groupChangeOps(changes, ops) { function decodeDocumentChanges (line 945) | function decodeDocumentChanges(changes, expectedHeads) { function encodeDocumentHeader (line 983) | function encodeDocumentHeader(doc) { function decodeDocumentHeader (line 1006) | function decodeDocumentHeader(buffer) { function decodeDocument (line 1040) | function decodeDocument(buffer) { function deflateColumn (line 1052) | function deflateColumn(column) { function inflateColumn (line 1062) | function inflateColumn(column) { FILE: backend/encoding.js function stringToUtf8 (line 11) | function stringToUtf8(string) { function utf8ToString (line 15) | function utf8ToString(buffer) { function hexStringToBytes (line 22) | function hexStringToBytes(value) { constant NIBBLE_TO_HEX (line 36) | const NIBBLE_TO_HEX = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9',... constant BYTE_TO_HEX (line 37) | const BYTE_TO_HEX = new Array(256) function bytesToHexString (line 45) | function bytesToHexString(bytes) { class Encoder (line 57) | class Encoder { method constructor (line 58) | constructor() { method buffer (line 66) | get buffer() { method grow (line 74) | grow(minSize = 0) { method appendByte (line 86) | appendByte(value) { method appendUint32 (line 97) | appendUint32(value) { method appendInt32 (line 117) | appendInt32(value) { method appendUint53 (line 137) | appendUint53(value) { method appendInt53 (line 152) | appendInt53(value) { method appendUint64 (line 168) | appendUint64(high32, low32) { method appendInt64 (line 201) | appendInt64(high32, low32) { method appendRawBytes (line 232) | appendRawBytes(data) { method appendRawString (line 245) | appendRawString(value) { method appendPrefixedBytes (line 254) | appendPrefixedBytes(data) { method appendPrefixedString (line 264) | appendPrefixedString(value) { method appendHexString (line 275) | appendHexString(value) { method finish (line 284) | finish() { class Decoder (line 293) | class Decoder { method constructor (line 294) | constructor(buffer) { method done (line 306) | get done() { method reset (line 314) | reset() { method skip (line 322) | skip(bytes) { method readByte (line 332) | readByte() { method readUint32 (line 341) | readUint32() { method readInt32 (line 360) | readInt32() { method readUint53 (line 389) | readUint53() { method readInt53 (line 402) | readInt53() { method readUint64 (line 416) | readUint64() { method readInt64 (line 450) | readInt64() { method readRawBytes (line 494) | readRawBytes(length) { method readRawString (line 507) | readRawString(length) { method readPrefixedBytes (line 515) | readPrefixedBytes() { method readPrefixedString (line 523) | readPrefixedString() { method readHexString (line 531) | readHexString() { class RLEEncoder (line 558) | class RLEEncoder extends Encoder { method constructor (line 559) | constructor(type) { method appendValue (line 572) | appendValue(value, repetitions = 1) { method _appendValue (line 579) | _appendValue(value, repetitions = 1) { method copyFrom (line 667) | copyFrom(decoder, options = {}) { method flush (line 742) | flush() { method appendRawValue (line 762) | appendRawValue(value) { method finish (line 778) | finish() { class RLEDecoder (line 789) | class RLEDecoder extends Decoder { method constructor (line 790) | constructor(type, buffer) { method done (line 802) | get done() { method reset (line 810) | reset() { method readValue (line 820) | readValue() { method skipValues (line 837) | skipValues(numSkip) { method readRecord (line 865) | readRecord() { method readRawValue (line 893) | readRawValue() { method skipRawValues (line 909) | skipRawValues(num) { class DeltaEncoder (line 932) | class DeltaEncoder extends RLEEncoder { method constructor (line 933) | constructor() { method appendValue (line 942) | appendValue(value, repetitions = 1) { method copyFrom (line 958) | copyFrom(decoder, options = {}) { class DeltaDecoder (line 1004) | class DeltaDecoder extends RLEDecoder { method constructor (line 1005) | constructor(buffer) { method reset (line 1014) | reset() { method readValue (line 1025) | readValue() { method skipValues (line 1035) | skipValues(numSkip) { class BooleanEncoder (line 1061) | class BooleanEncoder extends Encoder { method constructor (line 1062) | constructor() { method appendValue (line 1072) | appendValue(value, repetitions = 1) { method copyFrom (line 1091) | copyFrom(decoder, options = {}) { method finish (line 1129) | finish() { class BooleanDecoder (line 1141) | class BooleanDecoder extends Decoder { method constructor (line 1142) | constructor(buffer) { method done (line 1153) | get done() { method reset (line 1161) | reset() { method readValue (line 1171) | readValue() { method skipValues (line 1188) | skipValues(numSkip) { FILE: backend/new.js constant MAX_BLOCK_SIZE (line 6) | const MAX_BLOCK_SIZE = 600 // operations constant BLOOM_BITS_PER_ENTRY (line 7) | const BLOOM_BITS_PER_ENTRY = 10, BLOOM_NUM_PROBES = 7 // 1% false positi... constant BLOOM_NUM_PROBES (line 7) | const BLOOM_BITS_PER_ENTRY = 10, BLOOM_NUM_PROBES = 7 // 1% false positi... constant BLOOM_FILTER_SIZE (line 8) | const BLOOM_FILTER_SIZE = Math.floor(BLOOM_BITS_PER_ENTRY * MAX_BLOCK_SI... constant PRED_COLUMN_IDS (line 14) | const PRED_COLUMN_IDS = CHANGE_COLUMNS function deepCopyUpdate (line 24) | function deepCopyUpdate(objectTree, path, value) { function seekWithinBlock (line 50) | function seekWithinBlock(ops, docCols, actorIds, resumeInsertion) { function visibleListElements (line 199) | function visibleListElements(docState, blockIndex, objActorNum, objCtr) { function seekToOp (line 227) | function seekToOp(docState, ops) { function bloomFilterAdd (line 329) | function bloomFilterAdd(bloom, elemIdActor, elemIdCtr) { function bloomFilterContains (line 351) | function bloomFilterContains(bloom, elemIdActor, elemIdCtr) { function updateBlockMetadata (line 370) | function updateBlockMetadata(block) { function addBlockOperation (line 426) | function addBlockOperation(block, op, actorIds, isChangeOp) { function splitBlock (line 465) | function splitBlock(block) { function concatBlocks (line 496) | function concatBlocks(blocks) { function copyColumns (line 513) | function copyColumns(outCols, inCols, count) { function readOperation (line 570) | function readOperation(columns, actorTable) { function appendOperation (line 617) | function appendOperation(outCols, inCols, operation) { function readNextDocOp (line 658) | function readNextDocOp(docState, blockIndex) { function readNextChangeOp (line 678) | function readNextChangeOp(docState, changeState) { function emptyObjectPatch (line 726) | function emptyObjectPatch(objectId, type) { function opIdDelta (line 738) | function opIdDelta(id1, id2, delta = 1) { function appendEdit (line 747) | function appendEdit(existingEdits, nextEdit) { function appendUpdate (line 798) | function appendUpdate(edits, index, elemId, opId, value, firstUpdate) { function convertInsertToUpdate (line 838) | function convertInsertToUpdate(edits, index, elemId) { function updatePatchProperty (line 884) | function updatePatchProperty(patches, newBlock, objectId, op, docState, ... function mergeDocChangeOps (line 1052) | function mergeDocChangeOps(patches, newBlock, outCols, changeState, docS... function applyOps (line 1304) | function applyOps(patches, changeState, docState) { function updateBlockColumns (line 1387) | function updateBlockColumns(docState, changeCols) { function getActorTable (line 1434) | function getActorTable(actorIds, change) { function setupPatches (line 1461) | function setupPatches(patches, objectIds, docState) { function applyChanges (line 1550) | function applyChanges(patches, decodedChanges, docState, objectIds, thro... function documentPatch (line 1604) | function documentPatch(docState) { function readDocumentChanges (line 1645) | function readDocumentChanges(doc) { function appendChange (line 1680) | function appendChange(columns, change, actorIds, changeIndexByHash) { class BackendDoc (line 1694) | class BackendDoc { method constructor (line 1695) | constructor(buffer) { method clone (line 1773) | clone() { method applyChanges (line 1797) | applyChanges(changeBuffers, isLocal = false) { method computeHashGraph (line 1887) | computeHashGraph() { method getChanges (line 1921) | getChanges(haveDeps) { method getChangesAdded (line 1979) | getChangesAdded(other) { method getChangeByHash (line 1999) | getChangeByHash(hash) { method getMissingDeps (line 2014) | getMissingDeps(heads = []) { method save (line 2033) | save() { method getPatch (line 2060) | getPatch() { FILE: backend/sync.js constant HASH_SIZE (line 24) | const HASH_SIZE = 32 // 256 bits = 32 bytes constant MESSAGE_TYPE_SYNC (line 25) | const MESSAGE_TYPE_SYNC = 0x42 // first byte of a sync message, for iden... constant PEER_STATE_TYPE (line 26) | const PEER_STATE_TYPE = 0x43 // first byte of an encoded peer state, for... constant BITS_PER_ENTRY (line 31) | const BITS_PER_ENTRY = 10, NUM_PROBES = 7 constant NUM_PROBES (line 31) | const BITS_PER_ENTRY = 10, NUM_PROBES = 7 class BloomFilter (line 38) | class BloomFilter { method constructor (line 39) | constructor (arg) { method bytes (line 68) | get bytes() { method getProbes (line 88) | getProbes(hash) { method addHash (line 107) | addHash(hash) { method containsHash (line 116) | containsHash(hash) { function encodeHashes (line 130) | function encodeHashes(encoder, hashes) { function decodeHashes (line 145) | function decodeHashes(decoder) { function encodeSyncMessage (line 157) | function encodeSyncMessage(message) { function decodeSyncMessage (line 177) | function decodeSyncMessage(bytes) { function encodeSyncState (line 206) | function encodeSyncState(syncState) { function decodeSyncState (line 217) | function decodeSyncState(bytes) { function makeBloomFilter (line 234) | function makeBloomFilter(backend, lastSync) { function getChangesToSend (line 246) | function getChangesToSend(backend, have, need) { function initSyncState (line 308) | function initSyncState() { function compareArrays (line 319) | function compareArrays(a, b) { function generateSyncMessage (line 327) | function generateSyncMessage(backend, syncState) { function advanceHeads (line 408) | function advanceHeads(myOldHeads, myNewHeads, ourOldSharedHeads) { function receiveSyncMessage (line 420) | function receiveSyncMessage(backend, oldSyncState, binaryMessage) { FILE: backend/util.js function backendState (line 1) | function backendState(backend) { FILE: frontend/apply_patch.js function getValue (line 10) | function getValue(patch, object, updated) { function lamportCompare (line 33) | function lamportCompare(ts1, ts2) { function applyProperties (line 57) | function applyProperties(props, object, conflicts, updated) { function cloneMapObject (line 85) | function cloneMapObject(originalObject, objectId) { function updateMapObject (line 98) | function updateMapObject(patch, obj, updated) { function updateTableObject (line 114) | function updateTableObject(patch, obj, updated) { function cloneListObject (line 141) | function cloneListObject(originalList, objectId) { function updateListObject (line 156) | function updateListObject(patch, obj, updated) { function updateTextObject (line 220) | function updateTextObject(patch, obj, updated) { function interpretPatch (line 266) | function interpretPatch(patch, obj, updated) { function cloneRootObject (line 289) | function cloneRootObject(root) { FILE: frontend/constants.js constant OPTIONS (line 2) | const OPTIONS = Symbol('_options') // object containing options pass... constant CACHE (line 3) | const CACHE = Symbol('_cache') // map from objectId to immutable... constant STATE (line 4) | const STATE = Symbol('_state') // object containing metadata abo... constant OBJECT_ID (line 7) | const OBJECT_ID = Symbol('_objectId') // the object ID of the current o... constant CONFLICTS (line 8) | const CONFLICTS = Symbol('_conflicts') // map or list (depending on obje... constant CHANGE (line 9) | const CHANGE = Symbol('_change') // the context object on proxy ob... constant ELEM_IDS (line 10) | const ELEM_IDS = Symbol('_elemIds') // list containing the element ID... FILE: frontend/context.js class Context (line 16) | class Context { method constructor (line 17) | constructor (doc, actorId, applyPatch) { method addOp (line 29) | addOp(operation) { method nextOpId (line 44) | nextOpId() { method getValueDescription (line 51) | getValueDescription(value) { method getValuesDescriptions (line 100) | getValuesDescriptions(path, object, key) { method getPropertyValue (line 128) | getPropertyValue(object, key, opId) { method getSubpatch (line 142) | getSubpatch(patch, path) { method getObject (line 178) | getObject(objectId) { method getObjectType (line 188) | getObjectType(objectId) { method getObjectField (line 201) | getObjectField(path, objectId, key) { method createNestedObjects (line 230) | createNestedObjects(obj, key, value, insert, pred, elemId) { method setValue (line 289) | setValue(objectId, key, value, insert, pred, elemId) { method applyAtPath (line 315) | applyAtPath(path, callback) { method setMapKey (line 325) | setMapKey(path, key, value) { method deleteMapKey (line 351) | deleteMapKey(path, key) { method insertListItems (line 370) | insertListItems(subpatch, index, values, newObject) { method setListIndex (line 411) | setListIndex(path, index, value) { method splice (line 441) | splice(path, start, deletions, insertions) { method addTableRow (line 508) | addTableRow(path, row) { method deleteTableRow (line 531) | deleteTableRow(path, rowId, pred) { method increment (line 546) | increment(path, key, delta) { function getPred (line 576) | function getPred(object, key) { function getElemId (line 588) | function getElemId(list, index, insert = false) { FILE: frontend/counter.js class Counter (line 6) | class Counter { method constructor (line 7) | constructor(value) { method valueOf (line 20) | valueOf() { method toString (line 29) | toString() { method toJSON (line 37) | toJSON() { class WriteableCounter (line 46) | class WriteableCounter extends Counter { method increment (line 51) | increment(delta) { method decrement (line 62) | decrement(delta) { function getWriteableCounter (line 74) | function getWriteableCounter(value, context, path, objectId, key) { FILE: frontend/index.js function checkActorId (line 17) | function checkActorId(actorId) { function updateRootObject (line 34) | function updateRootObject(doc, updated, state) { function makeChange (line 78) | function makeChange(doc, context, options) { function countOps (line 120) | function countOps(ops) { function getLastLocalChange (line 135) | function getLastLocalChange(doc) { function applyPatchToDoc (line 146) | function applyPatchToDoc(doc, patch, state, fromBackend) { function init (line 166) | function init(options) { function from (line 207) | function from(initialState, options) { function change (line 224) | function change(doc, options, callback) { function emptyChange (line 264) | function emptyChange(doc, options) { function applyPatch (line 288) | function applyPatch(doc, patch, backendState = undefined) { function getObjectId (line 332) | function getObjectId(object) { function getObjectById (line 341) | function getObjectById(doc, objectId) { function getActorId (line 355) | function getActorId(doc) { function setActorId (line 363) | function setActorId(doc, actorId) { function getConflicts (line 374) | function getConflicts(object, key) { function getBackendState (line 385) | function getBackendState(doc, callerName = null, argPos = 'first') { function getElementIds (line 403) | function getElementIds(list) { FILE: frontend/numbers.js class Int (line 3) | class Int { method constructor (line 4) | constructor(value) { class Uint (line 13) | class Uint { method constructor (line 14) | constructor(value) { class Float64 (line 23) | class Float64 { method constructor (line 24) | constructor(value) { FILE: frontend/observable.js class Observable (line 9) | class Observable { method constructor (line 10) | constructor() { method patchCallback (line 21) | patchCallback(patch, before, after, local, changes) { method _objectUpdate (line 29) | _objectUpdate(diff, before, after, local, changes) { method observe (line 106) | observe(object, callback) { FILE: frontend/proxies.js function parseListIndex (line 6) | function parseListIndex(key) { function listMethods (line 17) | function listMethods(context, listId, path) { method get (line 115) | get (target, key) { method set (line 123) | set (target, key, value) { method deleteProperty (line 132) | deleteProperty (target, key) { method has (line 141) | has (target, key) { method getOwnPropertyDescriptor (line 146) | getOwnPropertyDescriptor (target, key) { method ownKeys (line 157) | ownKeys (target) { method get (line 164) | get (target, key) { method set (line 176) | set (target, key, value) { method deleteProperty (line 194) | deleteProperty (target, key) { method has (line 200) | has (target, key) { method getOwnPropertyDescriptor (line 208) | getOwnPropertyDescriptor (target, key) { method ownKeys (line 224) | ownKeys (target) { function mapProxy (line 233) | function mapProxy(context, objectId, path, readonly) { function listProxy (line 237) | function listProxy(context, objectId, path) { function instantiateProxy (line 247) | function instantiateProxy(path, objectId, readonly) { function rootObjectProxy (line 258) | function rootObjectProxy(context) { FILE: frontend/table.js function compareRows (line 4) | function compareRows(properties, row1, row2) { class Table (line 25) | class Table { method constructor (line 30) | constructor() { method byId (line 39) | byId(id) { method ids (line 47) | get ids() { method count (line 57) | get count() { method rows (line 65) | get rows() { method filter (line 73) | filter(callback, thisArg) { method find (line 81) | find(callback, thisArg) { method map (line 89) | map(callback, thisArg) { method sort (line 103) | sort(arg) { method _clone (line 140) | _clone() { method _set (line 152) | _set(id, value, opId) { method remove (line 166) | remove(id) { method _freeze (line 177) | _freeze() { method getWriteable (line 188) | getWriteable(context, path) { method toJSON (line 206) | toJSON() { method [Symbol.iterator] (line 121) | [Symbol.iterator] () { class WriteableTable (line 217) | class WriteableTable extends Table { method byId (line 222) | byId(id) { method add (line 234) | add(row) { method remove (line 242) | remove(id) { function instantiateTable (line 255) | function instantiateTable(objectId, entries, opIds) { FILE: frontend/text.js class Text (line 4) | class Text { method constructor (line 5) | constructor (text) { method length (line 19) | get length () { method get (line 23) | get (index) { method getElemId (line 34) | getElemId (index) { method toString (line 60) | toString() { method toSpans (line 78) | toSpans() { method toJSON (line 102) | toJSON() { method getWriteable (line 111) | getWriteable(context, path) { method set (line 125) | set (index, value) { method insertAt (line 139) | insertAt(index, ...values) { method deleteAt (line 154) | deleteAt(index, numDelete = 1) { method [Symbol.iterator] (line 42) | [Symbol.iterator] () { function instantiateText (line 176) | function instantiateText(objectId, elems) { FILE: src/automerge.js function init (line 14) | function init(options) { function from (line 28) | function from(initialState, options) { function change (line 33) | function change(doc, options, callback) { function emptyChange (line 38) | function emptyChange(doc, options) { function clone (line 43) | function clone(doc, options = {}) { function free (line 48) | function free(doc) { function load (line 52) | function load(data, options = {}) { function save (line 57) | function save(doc) { function merge (line 61) | function merge(localDoc, remoteDoc) { function getChanges (line 69) | function getChanges(oldDoc, newDoc) { function getAllChanges (line 75) | function getAllChanges(doc) { function applyPatch (line 79) | function applyPatch(doc, patch, backendState, changes, options) { function applyChanges (line 88) | function applyChanges(doc, changes, options = {}) { function equals (line 94) | function equals(val1, val2) { function getHistory (line 105) | function getHistory(doc) { function generateSyncMessage (line 120) | function generateSyncMessage(doc, syncState) { function receiveSyncMessage (line 125) | function receiveSyncMessage(doc, oldSyncState, message) { function initSyncState (line 139) | function initSyncState() { function setDefaultBackend (line 147) | function setDefaultBackend(newBackend) { method Backend (line 156) | get Backend() { return backend } FILE: src/common.js function isObject (line 1) | function isObject(obj) { function copyObject (line 9) | function copyObject(obj) { function parseOpId (line 22) | function parseOpId(opId) { function equalBytes (line 33) | function equalBytes(array1, array2) { function createArrayOfNulls (line 47) | function createArrayOfNulls(length) { FILE: src/uuid.js function defaultFactory (line 3) | function defaultFactory() { function makeUuid (line 9) | function makeUuid() { FILE: test/backend_test.js function hash (line 8) | function hash(change) { FILE: test/encoding_test.js function encode (line 9) | function encode(value) { function encode (line 49) | function encode(value) { function encode (line 124) | function encode(value) { function encode (line 165) | function encode(value) { function encode (line 260) | function encode(high32, low32) { function encode (line 316) | function encode(high32, low32) { function encodeRLE (line 508) | function encodeRLE(type, values) { function decodeRLE (line 514) | function decodeRLE(type, buffer) { function doCopy (line 629) | function doCopy(input1, input2, options = {}) { function encodeDelta (line 752) | function encodeDelta(values) { function decodeDelta (line 758) | function decodeDelta(buffer) { function doCopy (line 803) | function doCopy(input1, input2, options = {}) { function encodeBools (line 895) | function encodeBools(values) { function decodeBools (line 901) | function decodeBools(buffer) { function doCopy (line 960) | function doCopy(input1, input2, options = {}) { FILE: test/frontend_test.js constant UUID_PATTERN (line 7) | const UUID_PATTERN = /^[0-9a-f]{32}$/ function getRequests (line 242) | function getRequests(doc) { FILE: test/fuzz_test.js class Micromerge (line 12) | class Micromerge { method constructor (line 13) | constructor() { method root (line 19) | get root() { method applyChange (line 27) | applyChange(change) { method applyOp (line 50) | applyOp(op) { method applyListInsert (line 79) | applyListInsert(op) { method applyListUpdate (line 97) | applyListUpdate(op) { method findListElement (line 116) | findListElement(objectId, elemId) { method compareOpIds (line 131) | compareOpIds(id1, id2) { FILE: test/helpers.js function assertEqualsOneOf (line 6) | function assertEqualsOneOf(actual, ...expected) { function checkEncoded (line 22) | function checkEncoded(encoder, bytes, detail) { FILE: test/new_backend_test.js function checkColumns (line 7) | function checkColumns(block, expectedCols) { function hash (line 24) | function hash(change) { FILE: test/proxies_test.js constant UUID_PATTERN (line 4) | const UUID_PATTERN = /^[0-9a-f]{32}$/ FILE: test/sync_test.js function getHeads (line 7) | function getHeads(doc) { function getMissingDeps (line 11) | function getMissingDeps(doc) { function sync (line 15) | function sync(a, b, aSyncState = initSyncState(), bSyncState = initSyncS... FILE: test/table_test.js constant DDIA (line 8) | const DDIA = { constant RSDP (line 13) | const RSDP = { FILE: test/test.js constant UUID_PATTERN (line 5) | const UUID_PATTERN = /^[0-9a-f]{32}$/ constant OPID_PATTERN (line 6) | const OPID_PATTERN = /^[0-9]+@[0-9a-f]{32}$/ method patchCallback (line 1266) | patchCallback(patch, before, after, local) { method patchCallback (line 1462) | patchCallback(patch, before, after, local) { FILE: test/text_test.js function attributeStateToAttributes (line 5) | function attributeStateToAttributes(accumulatedAttributes) { function isEquivalent (line 15) | function isEquivalent(a, b) { function isControlMarker (line 33) | function isControlMarker(pseudoCharacter) { function opFrom (line 37) | function opFrom(text, attributes) { function accumulateAttributes (line 45) | function accumulateAttributes(span, accumulatedAttributes) { function automergeTextToDeltaDoc (line 67) | function automergeTextToDeltaDoc(text) { function inverseAttributes (line 112) | function inverseAttributes(attributes) { function applyDeleteOp (line 120) | function applyDeleteOp(text, offset, op) { function applyRetainOp (line 134) | function applyRetainOp(text, offset, op) { function applyInsertOp (line 159) | function applyInsertOp(text, offset, op) { function applyDeltaDocToAutomergeText (line 183) | function applyDeltaDocToAutomergeText(delta, doc) { FILE: test/typescript_test.ts constant UUID_PATTERN (line 5) | const UUID_PATTERN = /^[0-9a-f]{32}$/ type BirdList (line 7) | interface BirdList { type NumberBox (line 11) | interface NumberBox { type TextDoc (line 339) | interface TextDoc { type Book (line 407) | interface Book { type BookDb (line 413) | interface BookDb { type BookDeluxe (line 454) | interface BookDeluxe extends Book { type BookDeluxeDb (line 458) | interface BookDeluxeDb { type CounterMap (line 500) | interface CounterMap { type CounterList (line 504) | interface CounterList { type BirdCounterMap (line 508) | interface BirdCounterMap { type TextDoc (line 582) | interface TextDoc { FILE: test/uuid_test.js function customUuid (line 20) | function customUuid() { FILE: test/wasm.js function interopTests (line 37) | function interopTests(sourceBackend, destBackend) {