@@ -5320,6 +5320,29 @@ <h2 id="tppt" class="doc doc-heading">
53205320 <div class="doc doc-contents first">
53215321
53225322 <h4 id="tppt--typed-python-powerpoint-tool">🐍 🛡️ Typed Python PowerPoint Tool 🛡️ 🐍<a class="headerlink" href="#tppt--typed-python-powerpoint-tool" title="Permanent link">¶</a></h4>
5323+ <blockquote>
5324+ <blockquote>
5325+ <blockquote>
5326+ <p>import tppt
5327+ (
5328+ ... tppt.Presentation.builder()
5329+ ... .slide(
5330+ ... lambda slide: slide.BlankLayout()
5331+ ... .builder()
5332+ ... .text(
5333+ ... "Hello, World!",
5334+ ... left=(1, "in"),
5335+ ... top=(1, "in"),
5336+ ... width=(5, "in"),
5337+ ... height=(2, "in"),
5338+ ... )
5339+ ... )
5340+ ... .build()
5341+ ... .save("simple.pptx")
5342+ ... )</p>
5343+ </blockquote>
5344+ </blockquote>
5345+ </blockquote>
53235346
53245347
53255348
@@ -5522,45 +5545,45 @@ <h4 id="tppt.apply" class="doc doc-heading">
55225545
55235546 <details class="quote">
55245547 <summary>Source code in <code>src/tppt/__init__.py</code></summary>
5525- <div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"><a href="#__codelineno-0-21">21 </a></span>
5526- <span class="normal"><a href="#__codelineno-0-22">22 </a></span>
5527- <span class="normal"><a href="#__codelineno-0-23">23 </a></span>
5528- <span class="normal"><a href="#__codelineno-0-24">24 </a></span>
5529- <span class="normal"><a href="#__codelineno-0-25">25 </a></span>
5530- <span class="normal"><a href="#__codelineno-0-26">26 </a></span>
5531- <span class="normal"><a href="#__codelineno-0-27">27 </a></span>
5532- <span class="normal"><a href="#__codelineno-0-28">28 </a></span>
5533- <span class="normal"><a href="#__codelineno-0-29">29 </a></span>
5534- <span class="normal"><a href="#__codelineno-0-30">30 </a></span>
5535- <span class="normal"><a href="#__codelineno-0-31">31 </a></span>
5536- <span class="normal"><a href="#__codelineno-0-32">32 </a></span>
5537- <span class="normal"><a href="#__codelineno-0-33">33 </a></span>
5538- <span class="normal"><a href="#__codelineno-0-34">34 </a></span>
5539- <span class="normal"><a href="#__codelineno-0-35">35 </a></span>
5540- <span class="normal"><a href="#__codelineno-0-36">36 </a></span>
5541- <span class="normal"><a href="#__codelineno-0-37">37 </a></span>
5542- <span class="normal"><a href="#__codelineno-0-38">38 </a></span>
5543- <span class="normal"><a href="#__codelineno-0-39">39 </a></span>
5544- <span class="normal"><a href="#__codelineno-0-40">40 </a></span></pre></div></td><td class="code"><div><pre><span></span><code><a id="__codelineno-0-21 " name="__codelineno-0-21 "></a><span class="k">def</span><span class="w"> </span><span class="nf">apply</span><span class="p">(</span>
5545- <a id="__codelineno-0-22 " name="__codelineno-0-22 "></a> <span class="n">func</span><span class="p">:</span> <span class="n">Callable</span><span class="p">[</span><span class="n">Concatenate</span><span class="p">[</span><span class="n">T</span><span class="p">,</span> <span class="n">P</span><span class="p">],</span> <span class="n">T</span><span class="p">],</span> <span class="o">*</span><span class="n">args</span><span class="p">:</span> <span class="n">P</span><span class="o">.</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">:</span> <span class="n">P</span><span class="o">.</span><span class="n">kwargs</span>
5546- <a id="__codelineno-0-23 " name="__codelineno-0-23 "></a><span class="p">)</span> <span class="o">-></span> <span class="n">Callable</span><span class="p">[[</span><span class="n">T</span><span class="p">],</span> <span class="n">T</span><span class="p">]:</span>
5547- <a id="__codelineno-0-24 " name="__codelineno-0-24 "></a><span class="w"> </span><span class="sd">"""</span>
5548- <a id="__codelineno-0-25 " name="__codelineno-0-25 "></a><span class="sd"> Partially applies the given function `func` with arguments `args` and keyword arguments `kwargs`,</span>
5549- <a id="__codelineno-0-26 " name="__codelineno-0-26 "></a><span class="sd"> returning a new function that takes only the first argument.</span>
5550- <a id="__codelineno-0-27 " name="__codelineno-0-27 "></a>
5551- <a id="__codelineno-0-28 " name="__codelineno-0-28 "></a><span class="sd"> Args:</span>
5552- <a id="__codelineno-0-29 " name="__codelineno-0-29 "></a><span class="sd"> func: A function that takes a first argument of type `T` and variable arguments `P`, returning `T`</span>
5553- <a id="__codelineno-0-30 " name="__codelineno-0-30 "></a><span class="sd"> *args: Variable positional arguments to partially apply to `func`</span>
5554- <a id="__codelineno-0-31 " name="__codelineno-0-31 "></a><span class="sd"> **kwargs: Variable keyword arguments to partially apply to `func`</span>
5555- <a id="__codelineno-0-32 " name="__codelineno-0-32 "></a>
5556- <a id="__codelineno-0-33 " name="__codelineno-0-33 "></a><span class="sd"> Returns:</span>
5557- <a id="__codelineno-0-34 " name="__codelineno-0-34 "></a><span class="sd"> A function that takes a single argument `x` and calls `func(x, *args, **kwargs)`</span>
5558- <a id="__codelineno-0-35 " name="__codelineno-0-35 "></a><span class="sd"> """</span>
5559- <a id="__codelineno-0-36 " name="__codelineno-0-36 "></a>
5560- <a id="__codelineno-0-37 " name="__codelineno-0-37 "></a> <span class="k">def</span><span class="w"> </span><span class="nf">wrapper</span><span class="p">(</span><span class="n">x</span><span class="p">:</span> <span class="n">T</span><span class="p">)</span> <span class="o">-></span> <span class="n">T</span><span class="p">:</span>
5561- <a id="__codelineno-0-38 " name="__codelineno-0-38 "></a> <span class="k">return</span> <span class="n">func</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
5562- <a id="__codelineno-0-39 " name="__codelineno-0-39 "></a>
5563- <a id="__codelineno-0-40 " name="__codelineno-0-40 "></a> <span class="k">return</span> <span class="n">wrapper</span>
5548+ <div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"><a href="#__codelineno-0-42">42 </a></span>
5549+ <span class="normal"><a href="#__codelineno-0-43">43 </a></span>
5550+ <span class="normal"><a href="#__codelineno-0-44">44 </a></span>
5551+ <span class="normal"><a href="#__codelineno-0-45">45 </a></span>
5552+ <span class="normal"><a href="#__codelineno-0-46">46 </a></span>
5553+ <span class="normal"><a href="#__codelineno-0-47">47 </a></span>
5554+ <span class="normal"><a href="#__codelineno-0-48">48 </a></span>
5555+ <span class="normal"><a href="#__codelineno-0-49">49 </a></span>
5556+ <span class="normal"><a href="#__codelineno-0-50">50 </a></span>
5557+ <span class="normal"><a href="#__codelineno-0-51">51 </a></span>
5558+ <span class="normal"><a href="#__codelineno-0-52">52 </a></span>
5559+ <span class="normal"><a href="#__codelineno-0-53">53 </a></span>
5560+ <span class="normal"><a href="#__codelineno-0-54">54 </a></span>
5561+ <span class="normal"><a href="#__codelineno-0-55">55 </a></span>
5562+ <span class="normal"><a href="#__codelineno-0-56">56 </a></span>
5563+ <span class="normal"><a href="#__codelineno-0-57">57 </a></span>
5564+ <span class="normal"><a href="#__codelineno-0-58">58 </a></span>
5565+ <span class="normal"><a href="#__codelineno-0-59">59 </a></span>
5566+ <span class="normal"><a href="#__codelineno-0-60">60 </a></span>
5567+ <span class="normal"><a href="#__codelineno-0-61">61 </a></span></pre></div></td><td class="code"><div><pre><span></span><code><a id="__codelineno-0-42 " name="__codelineno-0-42 "></a><span class="k">def</span><span class="w"> </span><span class="nf">apply</span><span class="p">(</span>
5568+ <a id="__codelineno-0-43 " name="__codelineno-0-43 "></a> <span class="n">func</span><span class="p">:</span> <span class="n">Callable</span><span class="p">[</span><span class="n">Concatenate</span><span class="p">[</span><span class="n">T</span><span class="p">,</span> <span class="n">P</span><span class="p">],</span> <span class="n">T</span><span class="p">],</span> <span class="o">*</span><span class="n">args</span><span class="p">:</span> <span class="n">P</span><span class="o">.</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">:</span> <span class="n">P</span><span class="o">.</span><span class="n">kwargs</span>
5569+ <a id="__codelineno-0-44 " name="__codelineno-0-44 "></a><span class="p">)</span> <span class="o">-></span> <span class="n">Callable</span><span class="p">[[</span><span class="n">T</span><span class="p">],</span> <span class="n">T</span><span class="p">]:</span>
5570+ <a id="__codelineno-0-45 " name="__codelineno-0-45 "></a><span class="w"> </span><span class="sd">"""</span>
5571+ <a id="__codelineno-0-46 " name="__codelineno-0-46 "></a><span class="sd"> Partially applies the given function `func` with arguments `args` and keyword arguments `kwargs`,</span>
5572+ <a id="__codelineno-0-47 " name="__codelineno-0-47 "></a><span class="sd"> returning a new function that takes only the first argument.</span>
5573+ <a id="__codelineno-0-48 " name="__codelineno-0-48 "></a>
5574+ <a id="__codelineno-0-49 " name="__codelineno-0-49 "></a><span class="sd"> Args:</span>
5575+ <a id="__codelineno-0-50 " name="__codelineno-0-50 "></a><span class="sd"> func: A function that takes a first argument of type `T` and variable arguments `P`, returning `T`</span>
5576+ <a id="__codelineno-0-51 " name="__codelineno-0-51 "></a><span class="sd"> *args: Variable positional arguments to partially apply to `func`</span>
5577+ <a id="__codelineno-0-52 " name="__codelineno-0-52 "></a><span class="sd"> **kwargs: Variable keyword arguments to partially apply to `func`</span>
5578+ <a id="__codelineno-0-53 " name="__codelineno-0-53 "></a>
5579+ <a id="__codelineno-0-54 " name="__codelineno-0-54 "></a><span class="sd"> Returns:</span>
5580+ <a id="__codelineno-0-55 " name="__codelineno-0-55 "></a><span class="sd"> A function that takes a single argument `x` and calls `func(x, *args, **kwargs)`</span>
5581+ <a id="__codelineno-0-56 " name="__codelineno-0-56 "></a><span class="sd"> """</span>
5582+ <a id="__codelineno-0-57 " name="__codelineno-0-57 "></a>
5583+ <a id="__codelineno-0-58 " name="__codelineno-0-58 "></a> <span class="k">def</span><span class="w"> </span><span class="nf">wrapper</span><span class="p">(</span><span class="n">x</span><span class="p">:</span> <span class="n">T</span><span class="p">)</span> <span class="o">-></span> <span class="n">T</span><span class="p">:</span>
5584+ <a id="__codelineno-0-59 " name="__codelineno-0-59 "></a> <span class="k">return</span> <span class="n">func</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
5585+ <a id="__codelineno-0-60 " name="__codelineno-0-60 "></a>
5586+ <a id="__codelineno-0-61 " name="__codelineno-0-61 "></a> <span class="k">return</span> <span class="n">wrapper</span>
55645587</code></pre></div></td></tr></table></div>
55655588 </details>
55665589 </div>
0 commit comments