This commit is contained in:
alexjg 2022-11-22 12:30:54 +00:00
parent 90ea7cd137
commit 66ab06df3a
12 changed files with 1400 additions and 14 deletions

View file

@ -1,3 +1,3 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="List of all items in this crate"><meta name="keywords" content="rust, rustlang, rust-lang"><title>List of all items in this crate</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" href="../normalize.css"><link rel="stylesheet" href="../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" href="../ayu.css" disabled><link rel="stylesheet" href="../dark.css" disabled><link rel="stylesheet" href="../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../storage.js"></script><script defer src="../main.js"></script><noscript><link rel="stylesheet" href="../noscript.css"></noscript><link rel="icon" href="https:///raw.githubusercontent.com/automerge/automerge-rs/main/img/favicon.ico"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button><a class="sidebar-logo" href="../automerge/index.html"><div class="logo-container"><img src="https://raw.githubusercontent.com/automerge/automerge-rs/main/img/brandmark.svg" alt="logo"></div></a><h2 class="location"></h2></nav><nav class="sidebar"><a class="sidebar-logo" href="../automerge/index.html"><div class="logo-container">
<img src="https://raw.githubusercontent.com/automerge/automerge-rs/main/img/brandmark.svg" alt="logo"></div></a><h2 class="location">Crate automerge</h2></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../automerge/index.html">
<img src="https://raw.githubusercontent.com/automerge/automerge-rs/main/img/brandmark.svg" alt="logo"></a><nav class="sub"><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><button type="button">?</button></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../wheel.svg"></a></div></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">List of all items</span></h1><h3 id="Structs">Structs</h3><ul class="structs docblock"><li><a href="struct.ActorId.html">ActorId</a></li><li><a href="struct.AutoCommitWithObs.html">AutoCommitWithObs</a></li><li><a href="struct.AutoSerde.html">AutoSerde</a></li><li><a href="struct.Automerge.html">Automerge</a></li><li><a href="struct.Change.html">Change</a></li><li><a href="struct.ChangeHash.html">ChangeHash</a></li><li><a href="struct.ExpandedChange.html">ExpandedChange</a></li><li><a href="struct.InvalidActorId.html">InvalidActorId</a></li><li><a href="struct.InvalidChangeHashSlice.html">InvalidChangeHashSlice</a></li><li><a href="struct.Keys.html">Keys</a></li><li><a href="struct.KeysAt.html">KeysAt</a></li><li><a href="struct.ListRange.html">ListRange</a></li><li><a href="struct.ListRangeAt.html">ListRangeAt</a></li><li><a href="struct.MapRange.html">MapRange</a></li><li><a href="struct.MapRangeAt.html">MapRangeAt</a></li><li><a href="struct.Parents.html">Parents</a></li><li><a href="struct.Values.html">Values</a></li><li><a href="struct.VecOpObserver.html">VecOpObserver</a></li><li><a href="sync/struct.BloomFilter.html">sync::BloomFilter</a></li><li><a href="sync/struct.Have.html">sync::Have</a></li><li><a href="sync/struct.Message.html">sync::Message</a></li><li><a href="sync/struct.State.html">sync::State</a></li><li><a href="transaction/struct.CommitOptions.html">transaction::CommitOptions</a></li><li><a href="transaction/struct.Failure.html">transaction::Failure</a></li><li><a href="transaction/struct.Observed.html">transaction::Observed</a></li><li><a href="transaction/struct.Success.html">transaction::Success</a></li><li><a href="transaction/struct.Transaction.html">transaction::Transaction</a></li><li><a href="transaction/struct.UnObserved.html">transaction::UnObserved</a></li></ul><h3 id="Enums">Enums</h3><ul class="enums docblock"><li><a href="enum.AutomergeError.html">AutomergeError</a></li><li><a href="enum.LoadChangeError.html">LoadChangeError</a></li><li><a href="enum.ObjId.html">ObjId</a></li><li><a href="enum.ObjType.html">ObjType</a></li><li><a href="enum.OpType.html">OpType</a></li><li><a href="enum.Patch.html">Patch</a></li><li><a href="enum.Prop.html">Prop</a></li><li><a href="enum.ScalarValue.html">ScalarValue</a></li><li><a href="enum.Value.html">Value</a></li><li><a href="sync/enum.DecodeStateError.html">sync::DecodeStateError</a></li><li><a href="sync/enum.ReadMessageError.html">sync::ReadMessageError</a></li></ul><h3 id="Traits">Traits</h3><ul class="traits docblock"><li><a href="trait.OpObserver.html">OpObserver</a></li><li><a href="transaction/trait.Observation.html">transaction::Observation</a></li><li><a href="transaction/trait.Transactable.html">transaction::Transactable</a></li></ul><h3 id="Typedefs">Typedefs</h3><ul class="typedefs docblock"><li><a href="type.AutoCommit.html">AutoCommit</a></li><li><a href="transaction/type.Result.html">transaction::Result</a></li></ul><h3 id="Constants">Constants</h3><ul class="constants docblock"><li><a href="constant.ROOT.html">ROOT</a></li></ul></section></div></main><div id="rustdoc-vars" data-root-path="../" data-current-crate="automerge" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.65.0 (897e37553 2022-11-02)" ></div></body></html>
<img src="https://raw.githubusercontent.com/automerge/automerge-rs/main/img/brandmark.svg" alt="logo"></a><nav class="sub"><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><button type="button">?</button></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../wheel.svg"></a></div></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">List of all items</span></h1><h3 id="Structs">Structs</h3><ul class="structs docblock"><li><a href="struct.ActorId.html">ActorId</a></li><li><a href="struct.AutoCommitWithObs.html">AutoCommitWithObs</a></li><li><a href="struct.AutoSerde.html">AutoSerde</a></li><li><a href="struct.Automerge.html">Automerge</a></li><li><a href="struct.Change.html">Change</a></li><li><a href="struct.ChangeHash.html">ChangeHash</a></li><li><a href="struct.ExpandedChange.html">ExpandedChange</a></li><li><a href="struct.InvalidActorId.html">InvalidActorId</a></li><li><a href="struct.InvalidChangeHashSlice.html">InvalidChangeHashSlice</a></li><li><a href="struct.Keys.html">Keys</a></li><li><a href="struct.KeysAt.html">KeysAt</a></li><li><a href="struct.ListRange.html">ListRange</a></li><li><a href="struct.ListRangeAt.html">ListRangeAt</a></li><li><a href="struct.MapRange.html">MapRange</a></li><li><a href="struct.MapRangeAt.html">MapRangeAt</a></li><li><a href="struct.Parents.html">Parents</a></li><li><a href="struct.Values.html">Values</a></li><li><a href="struct.VecOpObserver.html">VecOpObserver</a></li><li><a href="sync/struct.BloomFilter.html">sync::BloomFilter</a></li><li><a href="sync/struct.Have.html">sync::Have</a></li><li><a href="sync/struct.Message.html">sync::Message</a></li><li><a href="sync/struct.State.html">sync::State</a></li><li><a href="transaction/struct.CommitOptions.html">transaction::CommitOptions</a></li><li><a href="transaction/struct.Failure.html">transaction::Failure</a></li><li><a href="transaction/struct.Observed.html">transaction::Observed</a></li><li><a href="transaction/struct.Success.html">transaction::Success</a></li><li><a href="transaction/struct.Transaction.html">transaction::Transaction</a></li><li><a href="transaction/struct.UnObserved.html">transaction::UnObserved</a></li></ul><h3 id="Enums">Enums</h3><ul class="enums docblock"><li><a href="enum.AutomergeError.html">AutomergeError</a></li><li><a href="enum.LoadChangeError.html">LoadChangeError</a></li><li><a href="enum.ObjId.html">ObjId</a></li><li><a href="enum.ObjType.html">ObjType</a></li><li><a href="enum.OpType.html">OpType</a></li><li><a href="enum.Patch.html">Patch</a></li><li><a href="enum.Prop.html">Prop</a></li><li><a href="enum.ScalarValue.html">ScalarValue</a></li><li><a href="enum.Value.html">Value</a></li><li><a href="sync/enum.DecodeStateError.html">sync::DecodeStateError</a></li><li><a href="sync/enum.ReadMessageError.html">sync::ReadMessageError</a></li></ul><h3 id="Traits">Traits</h3><ul class="traits docblock"><li><a href="trait.OpObserver.html">OpObserver</a></li><li><a href="transaction/trait.Observation.html">transaction::Observation</a></li><li><a href="transaction/trait.Transactable.html">transaction::Transactable</a></li></ul><h3 id="Typedefs">Typedefs</h3><ul class="typedefs docblock"><li><a href="type.AutoCommit.html">AutoCommit</a></li><li><a href="type.SequenceTree.html">SequenceTree</a></li><li><a href="transaction/type.Result.html">transaction::Result</a></li></ul><h3 id="Constants">Constants</h3><ul class="constants docblock"><li><a href="constant.ROOT.html">ROOT</a></li></ul></section></div></main><div id="rustdoc-vars" data-root-path="../" data-current-crate="automerge" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.65.0 (897e37553 2022-11-02)" ></div></body></html>

View file

@ -1,3 +1,3 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `ROOT` constant in crate `automerge`."><meta name="keywords" content="rust, rustlang, rust-lang, ROOT"><title>ROOT in automerge - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" href="../normalize.css"><link rel="stylesheet" href="../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" href="../ayu.css" disabled><link rel="stylesheet" href="../dark.css" disabled><link rel="stylesheet" href="../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../storage.js"></script><script defer src="sidebar-items.js"></script><script defer src="../main.js"></script><noscript><link rel="stylesheet" href="../noscript.css"></noscript><link rel="icon" href="https:///raw.githubusercontent.com/automerge/automerge-rs/main/img/favicon.ico"></head><body class="rustdoc constant"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button><a class="sidebar-logo" href="../automerge/index.html"><div class="logo-container"><img src="https://raw.githubusercontent.com/automerge/automerge-rs/main/img/brandmark.svg" alt="logo"></div></a><h2 class="location"></h2></nav><nav class="sidebar"><a class="sidebar-logo" href="../automerge/index.html"><div class="logo-container">
<img src="https://raw.githubusercontent.com/automerge/automerge-rs/main/img/brandmark.svg" alt="logo"></div></a><div class="sidebar-elems"><h2 class="location"><a href="index.html">In automerge</a></h2></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../automerge/index.html">
<img src="https://raw.githubusercontent.com/automerge/automerge-rs/main/img/brandmark.svg" alt="logo"></a><nav class="sub"><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><button type="button">?</button></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../wheel.svg"></a></div></div></form></nav></div><section id="main-content" class="content"><div class="main-heading"><h1 class="fqn"><span class="in-band">Constant <a href="index.html">automerge</a>::<wbr><a class="constant" href="#">ROOT</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band"><a class="srclink" href="../src/automerge/lib.rs.html#112">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span></div><div class="docblock item-decl"><pre class="rust const"><code>pub const ROOT: <a class="enum" href="enum.ObjId.html" title="enum automerge::ObjId">ObjId</a>;</code></pre></div></section></div></main><div id="rustdoc-vars" data-root-path="../" data-current-crate="automerge" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.65.0 (897e37553 2022-11-02)" ></div></body></html>
<img src="https://raw.githubusercontent.com/automerge/automerge-rs/main/img/brandmark.svg" alt="logo"></a><nav class="sub"><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><button type="button">?</button></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../wheel.svg"></a></div></div></form></nav></div><section id="main-content" class="content"><div class="main-heading"><h1 class="fqn"><span class="in-band">Constant <a href="index.html">automerge</a>::<wbr><a class="constant" href="#">ROOT</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band"><a class="srclink" href="../src/automerge/lib.rs.html#114">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span></div><div class="docblock item-decl"><pre class="rust const"><code>pub const ROOT: <a class="enum" href="enum.ObjId.html" title="enum automerge::ObjId">ObjId</a>;</code></pre></div></section></div></main><div id="rustdoc-vars" data-root-path="../" data-current-crate="automerge" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.65.0 (897e37553 2022-11-02)" ></div></body></html>

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,11 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../automerge/type.SequenceTree.html">
<title>Redirection</title>
</head>
<body>
<p>Redirecting to <a href="../../automerge/type.SequenceTree.html">../../automerge/type.SequenceTree.html</a>...</p>
<script>location.replace("../../automerge/type.SequenceTree.html" + location.search + location.hash);</script>
</body>
</html>

View file

@ -1 +1 @@
window.SIDEBAR_ITEMS = {"constant":[["ROOT",""]],"enum":[["AutomergeError",""],["LoadChangeError",""],["ObjId",""],["ObjType",""],["OpType",""],["Patch","A notification to the application that something has changed in a document."],["Prop",""],["ScalarValue",""],["Value",""]],"mod":[["sync",""],["transaction",""]],"struct":[["ActorId","An actor id is a sequence of bytes. By default we use a uuid which can be nicely stack allocated."],["AutoCommitWithObs","An automerge document that automatically manages transactions."],["AutoSerde","A wrapper type which implements [`serde::Serialize`] for an [`Automerge`]."],["Automerge","An automerge document."],["Change",""],["ChangeHash","The sha256 hash of a change."],["ExpandedChange","A change represents a group of operations performed by an actor."],["InvalidActorId",""],["InvalidChangeHashSlice",""],["Keys",""],["KeysAt",""],["ListRange",""],["ListRangeAt",""],["MapRange",""],["MapRangeAt",""],["Parents",""],["Values",""],["VecOpObserver","Capture operations into a [`Vec`] and store them as patches."]],"trait":[["OpObserver","An observer of operations applied to the document."]],"type":[["AutoCommit",""]]};
window.SIDEBAR_ITEMS = {"constant":[["ROOT",""]],"enum":[["AutomergeError",""],["LoadChangeError",""],["ObjId",""],["ObjType",""],["OpType",""],["Patch","A notification to the application that something has changed in a document."],["Prop",""],["ScalarValue",""],["Value",""]],"mod":[["sync",""],["transaction",""]],"struct":[["ActorId","An actor id is a sequence of bytes. By default we use a uuid which can be nicely stack allocated."],["AutoCommitWithObs","An automerge document that automatically manages transactions."],["AutoSerde","A wrapper type which implements [`serde::Serialize`] for an [`Automerge`]."],["Automerge","An automerge document."],["Change",""],["ChangeHash","The sha256 hash of a change."],["ExpandedChange","A change represents a group of operations performed by an actor."],["InvalidActorId",""],["InvalidChangeHashSlice",""],["Keys",""],["KeysAt",""],["ListRange",""],["ListRangeAt",""],["MapRange",""],["MapRangeAt",""],["Parents",""],["Values",""],["VecOpObserver","Capture operations into a [`Vec`] and store them as patches."]],"trait":[["OpObserver","An observer of operations applied to the document."]],"type":[["AutoCommit",""],["SequenceTree",""]]};

View file

@ -0,0 +1,3 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `SequenceTree` type in crate `automerge`."><meta name="keywords" content="rust, rustlang, rust-lang, SequenceTree"><title>SequenceTree in automerge - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" href="../normalize.css"><link rel="stylesheet" href="../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" href="../ayu.css" disabled><link rel="stylesheet" href="../dark.css" disabled><link rel="stylesheet" href="../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../storage.js"></script><script defer src="sidebar-items.js"></script><script defer src="../main.js"></script><noscript><link rel="stylesheet" href="../noscript.css"></noscript><link rel="icon" href="https:///raw.githubusercontent.com/automerge/automerge-rs/main/img/favicon.ico"></head><body class="rustdoc type"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button><a class="sidebar-logo" href="../automerge/index.html"><div class="logo-container"><img src="https://raw.githubusercontent.com/automerge/automerge-rs/main/img/brandmark.svg" alt="logo"></div></a><h2 class="location"></h2></nav><nav class="sidebar"><a class="sidebar-logo" href="../automerge/index.html"><div class="logo-container">
<img src="https://raw.githubusercontent.com/automerge/automerge-rs/main/img/brandmark.svg" alt="logo"></div></a><h2 class="location"><a href="#">SequenceTree</a></h2><div class="sidebar-elems"><h2 class="location"><a href="index.html">In automerge</a></h2></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../automerge/index.html">
<img src="https://raw.githubusercontent.com/automerge/automerge-rs/main/img/brandmark.svg" alt="logo"></a><nav class="sub"><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><button type="button">?</button></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../wheel.svg"></a></div></div></form></nav></div><section id="main-content" class="content"><div class="main-heading"><h1 class="fqn"><span class="in-band">Type Definition <a href="index.html">automerge</a>::<wbr><a class="type" href="#">SequenceTree</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band"><a class="srclink" href="../src/automerge/sequence_tree.rs.html#8">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span></div><div class="docblock item-decl"><pre class="rust typedef"><code>pub type SequenceTree&lt;T&gt; = SequenceTreeInternal&lt;T&gt;;</code></pre></div></section></div></main><div id="rustdoc-vars" data-root-path="../" data-current-crate="automerge" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.65.0 (897e37553 2022-11-02)" ></div></body></html>

File diff suppressed because one or more lines are too long

View file

@ -1,5 +1,5 @@
var sourcesIndex = JSON.parse('{\
"automerge":["",[["columnar",[["column_range",[["generic",[],["group.rs","simple.rs"]]],["boolean.rs","delta.rs","deps.rs","generic.rs","key.rs","obj_id.rs","opid.rs","opid_list.rs","raw.rs","rle.rs","value.rs"]],["encoding",[],["boolean.rs","col_error.rs","column_decoder.rs","decodable_impls.rs","delta.rs","encodable_impls.rs","leb128.rs","raw.rs","rle.rs"]]],["column_range.rs","encoding.rs","splice_error.rs"]],["legacy",[["serde_impls",[],["actor_id.rs","change_hash.rs","element_id.rs","mod.rs","object_id.rs","op.rs","op_type.rs","opid.rs","scalar_value.rs"]],["utility_impls",[],["element_id.rs","key.rs","mod.rs","object_id.rs","opid.rs"]]],["mod.rs"]],["op_set",[],["load.rs"]],["op_tree",[],["iter.rs"]],["query",[],["elem_id_pos.rs","insert.rs","keys.rs","keys_at.rs","len.rs","len_at.rs","list_range.rs","list_range_at.rs","list_vals.rs","list_vals_at.rs","map_range.rs","map_range_at.rs","nth.rs","nth_at.rs","opid.rs","prop.rs","prop_at.rs","seek_op.rs","seek_op_with_patch.rs"]],["storage",[["change",[],["change_actors.rs","change_op_columns.rs","compressed.rs","op_with_change_actors.rs"]],["columns",[],["column.rs","column_builder.rs","column_specification.rs","raw_column.rs"]],["convert",[],["op_as_changeop.rs","op_as_docop.rs"]],["document",[],["compression.rs","doc_change_columns.rs","doc_op_columns.rs"]],["load",[],["change_collector.rs","reconstruct_document.rs"]],["parse",[],["leb128.rs"]],["save",[],["document.rs"]]],["change.rs","chunk.rs","columns.rs","convert.rs","document.rs","load.rs","parse.rs","save.rs"]],["sync",[],["bloom.rs","state.rs"]],["transaction",[],["commit.rs","inner.rs","manual_transaction.rs","observation.rs","result.rs","transactable.rs"]],["types",[],["opids.rs"]]],["autocommit.rs","automerge.rs","autoserde.rs","change.rs","clock.rs","clocks.rs","columnar.rs","convert.rs","error.rs","exid.rs","indexed_cache.rs","keys.rs","keys_at.rs","lib.rs","list_range.rs","list_range_at.rs","map_range.rs","map_range_at.rs","op_observer.rs","op_set.rs","op_tree.rs","parents.rs","query.rs","storage.rs","sync.rs","transaction.rs","types.rs","value.rs","values.rs","visualisation.rs"]],\
"automerge":["",[["columnar",[["column_range",[["generic",[],["group.rs","simple.rs"]]],["boolean.rs","delta.rs","deps.rs","generic.rs","key.rs","obj_id.rs","opid.rs","opid_list.rs","raw.rs","rle.rs","value.rs"]],["encoding",[],["boolean.rs","col_error.rs","column_decoder.rs","decodable_impls.rs","delta.rs","encodable_impls.rs","leb128.rs","raw.rs","rle.rs"]]],["column_range.rs","encoding.rs","splice_error.rs"]],["legacy",[["serde_impls",[],["actor_id.rs","change_hash.rs","element_id.rs","mod.rs","object_id.rs","op.rs","op_type.rs","opid.rs","scalar_value.rs"]],["utility_impls",[],["element_id.rs","key.rs","mod.rs","object_id.rs","opid.rs"]]],["mod.rs"]],["op_set",[],["load.rs"]],["op_tree",[],["iter.rs"]],["query",[],["elem_id_pos.rs","insert.rs","keys.rs","keys_at.rs","len.rs","len_at.rs","list_range.rs","list_range_at.rs","list_vals.rs","list_vals_at.rs","map_range.rs","map_range_at.rs","nth.rs","nth_at.rs","opid.rs","prop.rs","prop_at.rs","seek_op.rs","seek_op_with_patch.rs"]],["storage",[["change",[],["change_actors.rs","change_op_columns.rs","compressed.rs","op_with_change_actors.rs"]],["columns",[],["column.rs","column_builder.rs","column_specification.rs","raw_column.rs"]],["convert",[],["op_as_changeop.rs","op_as_docop.rs"]],["document",[],["compression.rs","doc_change_columns.rs","doc_op_columns.rs"]],["load",[],["change_collector.rs","reconstruct_document.rs"]],["parse",[],["leb128.rs"]],["save",[],["document.rs"]]],["change.rs","chunk.rs","columns.rs","convert.rs","document.rs","load.rs","parse.rs","save.rs"]],["sync",[],["bloom.rs","state.rs"]],["transaction",[],["commit.rs","inner.rs","manual_transaction.rs","observation.rs","result.rs","transactable.rs"]],["types",[],["opids.rs"]]],["autocommit.rs","automerge.rs","autoserde.rs","change.rs","clock.rs","clocks.rs","columnar.rs","convert.rs","error.rs","exid.rs","indexed_cache.rs","keys.rs","keys_at.rs","lib.rs","list_range.rs","list_range_at.rs","map_range.rs","map_range_at.rs","op_observer.rs","op_set.rs","op_tree.rs","parents.rs","query.rs","sequence_tree.rs","storage.rs","sync.rs","transaction.rs","types.rs","value.rs","values.rs","visualisation.rs"]],\
"automerge_test":["",[],["lib.rs"]],\
"automerge_wasm":["",[],["interop.rs","lib.rs","observer.rs","sync.rs","value.rs"]]\
}');

View file

@ -112,6 +112,8 @@
<span id="110">110</span>
<span id="111">111</span>
<span id="112">112</span>
<span id="113">113</span>
<span id="114">114</span>
</pre><pre class="rust"><code><span class="attribute">#![doc(
html_logo_url = <span class="string">&quot;https://raw.githubusercontent.com/automerge/automerge-rs/main/img/brandmark.svg&quot;</span>,
html_favicon_url = <span class="string">&quot;https:///raw.githubusercontent.com/automerge/automerge-rs/main/img/favicon.ico&quot;
@ -191,6 +193,7 @@
<span class="kw">mod </span>op_tree;
<span class="kw">mod </span>parents;
<span class="kw">mod </span>query;
<span class="kw">mod </span>sequence_tree;
<span class="kw">mod </span>storage;
<span class="kw">pub mod </span>sync;
<span class="kw">pub mod </span>transaction;
@ -219,6 +222,7 @@
<span class="kw">pub use </span>op_observer::Patch;
<span class="kw">pub use </span>op_observer::VecOpObserver;
<span class="kw">pub use </span>parents::Parents;
<span class="kw">pub use </span>sequence_tree::SequenceTree;
<span class="kw">pub use </span>types::{ActorId, ChangeHash, ObjType, OpType, Prop};
<span class="kw">pub use </span>value::{ScalarValue, Value};
<span class="kw">pub use </span>values::Values;

File diff suppressed because it is too large Load diff

View file

@ -1284,7 +1284,7 @@
Reflect::set(<span class="kw-2">&amp;</span>result, <span class="kw-2">&amp;</span>(<span class="kw-2">*</span>index <span class="kw">as </span>f64).into(), <span class="kw-2">&amp;</span>sub_val)<span class="question-mark">?</span>;
<span class="prelude-val">Ok</span>(result.into())
}
Patch::DeleteSeq { index, .. } =&gt; <span class="self">self</span>.sub_splice(result, <span class="kw-2">*</span>index, <span class="number">1</span>, <span class="kw-2">&amp;</span>[], meta),
Patch::DeleteSeq { index, .. } =&gt; <span class="self">self</span>.sub_splice(result, <span class="kw-2">*</span>index, <span class="number">1</span>, <span class="macro">vec!</span>[], meta),
Patch::Insert { index, values, .. } =&gt; <span class="self">self</span>.sub_splice(result, <span class="kw-2">*</span>index, <span class="number">0</span>, values, meta),
Patch::Increment { prop, value, .. } =&gt; {
<span class="kw">if let </span>Prop::Seq(index) = prop {
@ -1377,16 +1377,16 @@
<span class="self">self</span>.wrap_object(result, datatype, <span class="kw-2">&amp;</span>id, meta)
}
<span class="kw">fn </span>sub_splice(
<span class="kw">fn </span>sub_splice&lt;<span class="lifetime">&#39;a</span>, I: IntoIterator&lt;Item = <span class="kw-2">&amp;</span><span class="lifetime">&#39;a </span>(Value&lt;<span class="lifetime">&#39;a</span>&gt;, ObjId)&gt;&gt;(
<span class="kw-2">&amp;</span><span class="self">self</span>,
o: Array,
index: usize,
num_del: usize,
values: <span class="kw-2">&amp;</span>[(Value&lt;<span class="lifetime">&#39;_</span>&gt;, ObjId)],
values: I,
meta: <span class="kw-2">&amp;</span>JsValue,
) -&gt; <span class="prelude-ty">Result</span>&lt;Object, JsValue&gt; {
<span class="kw">let </span>args: Array = values
.iter()
.into_iter()
.map(|v| <span class="self">self</span>.maybe_wrap_object(alloc(<span class="kw-2">&amp;</span>v.<span class="number">0</span>), <span class="kw-2">&amp;</span>v.<span class="number">1</span>, meta))
.collect::&lt;<span class="prelude-ty">Result</span>&lt;<span class="kw">_</span>, <span class="kw">_</span>&gt;&gt;()<span class="question-mark">?</span>;
args.unshift(<span class="kw-2">&amp;</span>(num_del <span class="kw">as </span>u32).into());

View file

@ -332,10 +332,12 @@
<span id="330">330</span>
<span id="331">331</span>
<span id="332">332</span>
<span id="333">333</span>
<span id="334">334</span>
</pre><pre class="rust"><code><span class="attribute">#![allow(dead_code)]
</span><span class="kw">use </span><span class="kw">crate</span>::interop::{alloc, js_set};
<span class="kw">use </span>automerge::{ObjId, OpObserver, Parents, Prop, Value};
<span class="kw">use </span>automerge::{ObjId, OpObserver, Parents, Prop, SequenceTree, Value};
<span class="kw">use </span>js_sys::{Array, Object};
<span class="kw">use </span>wasm_bindgen::prelude::<span class="kw-2">*</span>;
@ -379,7 +381,7 @@
obj: ObjId,
path: Vec&lt;(ObjId, Prop)&gt;,
index: usize,
values: Vec&lt;(Value&lt;<span class="lifetime">&#39;static</span>&gt;, ObjId)&gt;,
values: SequenceTree&lt;(Value&lt;<span class="lifetime">&#39;static</span>&gt;, ObjId)&gt;,
},
Increment {
obj: ObjId,
@ -425,11 +427,13 @@
}
}
<span class="kw">let </span>path = parents.path();
<span class="kw">let </span><span class="kw-2">mut </span>values = SequenceTree::new();
values.push(value);
<span class="kw">let </span>patch = Patch::Insert {
path,
obj,
index,
values: <span class="macro">vec!</span>[value],
values,
};
<span class="self">self</span>.patches.push(patch);
}