|
5 | 5 | <meta name="color-scheme" content="light dark"><link rel="index" title="Index" href="../../genindex.html"><link rel="search" title="Search" href="../../search.html"> |
6 | 6 |
|
7 | 7 | <!-- Generated with Sphinx 8.2.3 and Furo 2025.12.19 --> |
8 | | - <title>compressed_lists.base - compressed-lists 0.4.1 documentation</title> |
| 8 | + <title>compressed_lists.base - compressed-lists 0.4.2 documentation</title> |
9 | 9 | <link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=03e43079" /> |
10 | 10 | <link rel="stylesheet" type="text/css" href="../../_static/styles/furo.css?v=7bdb33bb" /> |
11 | 11 | <link rel="stylesheet" type="text/css" href="../../_static/mystnb.8ecb98da25f57f5357bf6f572d296f466b2cfe2517ffebfabe82451661e28f02.css" /> |
|
161 | 161 | </label> |
162 | 162 | </div> |
163 | 163 | <div class="header-center"> |
164 | | - <a href="../../index.html"><div class="brand">compressed-lists 0.4.1 documentation</div></a> |
| 164 | + <a href="../../index.html"><div class="brand">compressed-lists 0.4.2 documentation</div></a> |
165 | 165 | </div> |
166 | 166 | <div class="header-right"> |
167 | 167 | <div class="theme-toggle-container theme-toggle-header"> |
|
182 | 182 |
|
183 | 183 | <div class="sidebar-sticky"><a class="sidebar-brand" href="../../index.html"> |
184 | 184 |
|
185 | | - <span class="sidebar-brand-text">compressed-lists 0.4.1 documentation</span> |
| 185 | + <span class="sidebar-brand-text">compressed-lists 0.4.2 documentation</span> |
186 | 186 |
|
187 | 187 | </a><form class="sidebar-search-container" method="get" action="../../search.html" role="search"> |
188 | 188 | <input class="sidebar-search" placeholder="Search" name="q" aria-label="Search"> |
@@ -910,8 +910,48 @@ <h1>Source code for compressed_lists.base</h1><div class="highlight"><pre> |
910 | 910 | <span class="n">_range_lengths</span> <span class="o">=</span> <span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">*</span> <span class="n">n</span> |
911 | 911 |
|
912 | 912 | <span class="k">return</span> <span class="n">CompressedList</span><span class="p">(</span><span class="n">unlist_data</span><span class="o">=</span><span class="p">[],</span> <span class="n">partitioning</span><span class="o">=</span><span class="n">Partitioning</span><span class="p">(</span><span class="n">ends</span><span class="o">=</span><span class="n">_range_lengths</span><span class="p">))</span></div> |
| 913 | + |
| 914 | + |
| 915 | + <span class="c1">#######################</span> |
| 916 | + <span class="c1">######>> extend <<#####</span> |
| 917 | + <span class="c1">#######################</span> |
| 918 | + |
| 919 | +<div class="viewcode-block" id="CompressedList.extend"> |
| 920 | +<a class="viewcode-back" href="../../api/compressed_lists.html#compressed_lists.base.CompressedList.extend">[docs]</a> |
| 921 | + <span class="k">def</span><span class="w"> </span><span class="nf">extend</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">other</span><span class="p">:</span> <span class="n">CompressedList</span><span class="p">,</span> <span class="n">in_place</span><span class="p">:</span> <span class="nb">bool</span> <span class="o">=</span> <span class="kc">False</span><span class="p">)</span> <span class="o">-></span> <span class="n">CompressedList</span><span class="p">:</span> |
| 922 | +<span class="w"> </span><span class="sd">"""</span> |
| 923 | +<span class="sd"> Args:</span> |
| 924 | +<span class="sd"> other:</span> |
| 925 | +<span class="sd"> Some CompressedList object.</span> |
| 926 | + |
| 927 | +<span class="sd"> in_place:</span> |
| 928 | +<span class="sd"> Whether to perform the modification in place.</span> |
| 929 | + |
| 930 | +<span class="sd"> Returns:</span> |
| 931 | +<span class="sd"> A ``CompressedList`` where items in ``other`` are added to the end. If</span> |
| 932 | +<span class="sd"> ``in_place = False``, this is a new object, otherwise a reference</span> |
| 933 | +<span class="sd"> to the current object is returned.</span> |
| 934 | +<span class="sd"> """</span> |
| 935 | + <span class="n">output</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_define_output</span><span class="p">(</span><span class="n">in_place</span><span class="p">)</span> |
| 936 | + |
| 937 | + <span class="n">output</span><span class="o">.</span><span class="n">_unlist_data</span> <span class="o">=</span> <span class="n">ut</span><span class="o">.</span><span class="n">combine_sequences</span><span class="p">(</span><span class="n">output</span><span class="o">.</span><span class="n">_unlist_data</span><span class="p">,</span> <span class="n">other</span><span class="o">.</span><span class="n">_unlist_data</span><span class="p">)</span> |
| 938 | + <span class="n">output</span><span class="o">.</span><span class="n">_partitioning</span> <span class="o">=</span> <span class="n">ut</span><span class="o">.</span><span class="n">combine_sequences</span><span class="p">(</span><span class="n">output</span><span class="o">.</span><span class="n">_partitioning</span><span class="p">,</span> <span class="n">other</span><span class="o">.</span><span class="n">_partitioning</span><span class="p">)</span> |
| 939 | + |
| 940 | + <span class="k">return</span> <span class="n">output</span></div> |
913 | 941 | </div> |
914 | 942 |
|
| 943 | + |
| 944 | + |
| 945 | +<span class="nd">@ut</span><span class="o">.</span><span class="n">combine_sequences</span><span class="o">.</span><span class="n">register</span><span class="p">(</span><span class="n">CompressedList</span><span class="p">)</span> |
| 946 | +<span class="k">def</span><span class="w"> </span><span class="nf">_register_combine_patitioning</span><span class="p">(</span><span class="o">*</span><span class="n">x</span><span class="p">:</span> <span class="n">CompressedList</span><span class="p">)</span> <span class="o">-></span> <span class="n">CompressedList</span><span class="p">:</span> |
| 947 | + <span class="k">if</span> <span class="ow">not</span> <span class="n">x</span><span class="p">:</span> |
| 948 | + <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"Cannot combine an empty object"</span><span class="p">)</span> |
| 949 | + |
| 950 | + <span class="n">output</span> <span class="o">=</span> <span class="n">x</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">copy</span><span class="p">()</span> |
| 951 | + <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">x</span><span class="p">)):</span> |
| 952 | + <span class="n">output</span><span class="o">.</span><span class="n">extend</span><span class="p">(</span><span class="n">x</span><span class="p">[</span><span class="n">i</span><span class="p">],</span> <span class="n">in_place</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span> |
| 953 | + |
| 954 | + <span class="k">return</span> <span class="n">output</span> |
915 | 955 | </pre></div> |
916 | 956 | </article> |
917 | 957 | </div> |
@@ -944,7 +984,7 @@ <h1>Source code for compressed_lists.base</h1><div class="highlight"><pre> |
944 | 984 |
|
945 | 985 | </aside> |
946 | 986 | </div> |
947 | | -</div><script src="../../_static/documentation_options.js?v=c87aa342"></script> |
| 987 | +</div><script src="../../_static/documentation_options.js?v=ff822928"></script> |
948 | 988 | <script src="../../_static/doctools.js?v=9bcbadda"></script> |
949 | 989 | <script src="../../_static/sphinx_highlight.js?v=dc90522c"></script> |
950 | 990 | <script src="../../_static/scripts/furo.js?v=46bd48cc"></script> |
|
0 commit comments