<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>ClammingPy doc</title>
<link rel="logo icon" href="./statics/clamming32x32.ico" />
<link rel="stylesheet" href="./Whakerexa-1.0/wexa_statics/css/wexa.css" type="text/css" />
<link rel="stylesheet" href="./Whakerexa-1.0/wexa_statics/css/layout.css" type="text/css" />
<link rel="stylesheet" href="./Whakerexa-1.0/wexa_statics/css/book.css" type="text/css" />
<link rel="stylesheet" href="./Whakerexa-1.0/wexa_statics/css/menu.css" type="text/css" />
<link rel="stylesheet" href="./Whakerexa-1.0/wexa_statics/css/code.css" type="text/css" />
<link rel="stylesheet" href="./statics/clamming.css" type="text/css" />
<script src="./Whakerexa-1.0/wexa_statics/js/wexa.js" type="module"></script>
<script src="./Whakerexa-1.0/wexa_statics/js/whakerpy/request.js" type="text/javascript"></script>
<script src="./Whakerexa-1.0/wexa_statics/js/book.js" type="application/javascript"></script>
<script type="module">
window.Wexa.OnLoadManager.addLoadFunction(() => {
let book = new Book("main-content");
book.fill_table(false);
});
</script>
</head>
<body class="light">
<header>
<a role="button" class="skip" href="#main-content" aria-label="Go to main content">
Go to main content
</a>
<nav>
<ul>
<li>
<button role="menuitem" class="print-off" onclick="AccessibilityManager.switch_contrast_scheme()" aria-label="Change contrast">
<img class="nav-item-img" src="./Whakerexa-1.0/wexa_statics/icons/contrast_switcher.jpg" alt="Contrast" id="img-contrast"/>
</button>
</li>
<li>
<button class="print-off" role="menuitem" onclick="AccessibilityManager.switch_color_scheme()" aria-label="Change theme color" >
<img class="nav-item-img" src="./Whakerexa-1.0/wexa_statics/icons/theme_switcher.png" alt="Theme" id="img-theme"/>
</button>
</li>
</ul>
</nav>
<h1>ClammingPy 2.0</h1>
<p><img class="small-logo" src="./statics/clamming.png" alt="Software logo"/></p>
<p><a class="external-link" href="https://sourceforge.net/projects/clamming/">https://sourceforge.net/projects/clamming/</a></p>
</header>
<nav id="nav-book" class="side-nav">
<h1>ClammingPy 2.0</h1>
<img class="small-logo center" src="./statics/clamming.png" alt=""/>
<p><a class="external-link" href="https://sourceforge.net/projects/clamming/">https://sourceforge.net/projects/clamming/</a></p>
<ul>
<li><a role="button" tabindex="0" aria-disabled="true"> ↵ Prev. Module</a></li>
<li><a role="button" tabindex="0" href="ClamsClass.html"> ↑ Prev. Class</a></li>
<li><a role="button" tabindex="0" href="index.html"> ⌂ Index</a></li>
<li><a role="button" tabindex="0" href="ClamsModules.html"> ↓ Next Class</a></li>
<li><a role="button" tabindex="0" href="tests.html"> ↳ Next Module</a></li>
</ul>
<h2>Table of Contents</h2>
<ul id="toc"></ul>
<hr>
<p><small>Automatically created</small></p><p><small>by <a class="external-link" href="https://clamming.sf.net">ClammingPy</a></small></p>
</nav>
<main id="main-content">
<section id="#clamming"> <h1>Module clamming</h1>
<section id="#ClamsPack">
<h2>Class ClamsPack</h2>
<section>
<h3 id="#description_ClamsPack">Description</h3>
<article class="docstring">
<p><em>Create documentation of a module into Markdown or HTML.</em></p>
<h5>Example</h5>
<div class="highlight"><pre><span></span><code> <span class="o">>>></span> <span class="n">clams</span> <span class="o">=</span> <span class="n">ClamsPack</span><span class="p">(</span><span class="n">clamming</span><span class="p">)</span>
<span class="o">>>></span> <span class="n">md</span> <span class="o">=</span> <span class="n">clams</span><span class="o">.</span><span class="n">markdown</span><span class="p">()</span>
</code></pre></div>
</article>
</section>
<section>
<h3 id="#constructor_ClamsPack">Constructor</h3>
<article class="docstring">
<p><em>Create documentation from the given package name.</em></p>
<h5>Parameters</h5>
<ul>
<li><strong>pack</strong>: (module) A Python module</li>
</ul>
<h5>Raises</h5>
<ul>
<li><em>TypeError</em>: given 'pack' is not a module</li>
</ul>
</article>
<details>
<summary>
View Source
</summary>
<div class="highlight"><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">pack</span><span class="p">:</span> <span class="n">Any</span><span class="p">):</span>
<span class="w"> </span><span class="sd">"""Create documentation from the given package name.</span>
<span class="sd"> :param pack: (module) A Python module</span>
<span class="sd"> :raises: TypeError: given 'pack' is not a module</span>
<span class="sd"> """</span>
<span class="k">if</span> <span class="n">inspect</span><span class="o">.</span><span class="n">ismodule</span><span class="p">(</span><span class="n">pack</span><span class="p">)</span> <span class="ow">is</span> <span class="kc">False</span><span class="p">:</span>
<span class="k">raise</span> <span class="ne">TypeError</span><span class="p">(</span><span class="s1">'Expected a Python module. Got </span><span class="si">{:s}</span><span class="s1"> instead.'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">pack</span><span class="p">)))</span>
<span class="bp">self</span><span class="o">.</span><span class="n">__pack</span> <span class="o">=</span> <span class="n">pack</span>
<span class="bp">self</span><span class="o">.</span><span class="n">__clams</span> <span class="o">=</span> <span class="nb">list</span><span class="p">()</span>
<span class="k">try</span><span class="p">:</span>
<span class="k">for</span> <span class="n">class_name</span> <span class="ow">in</span> <span class="n">pack</span><span class="o">.</span><span class="n">__all__</span><span class="p">:</span>
<span class="n">class_inst</span> <span class="o">=</span> <span class="n">ClamUtils</span><span class="o">.</span><span class="n">get_class</span><span class="p">(</span><span class="n">class_name</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">__pack</span><span class="o">.</span><span class="vm">__name__</span><span class="p">)</span>
<span class="k">if</span> <span class="n">class_inst</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span><span class="p">:</span>
<span class="n">clammer</span> <span class="o">=</span> <span class="n">ClammingClassParser</span><span class="p">(</span><span class="n">class_inst</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">__clams</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">ClamsClass</span><span class="p">(</span><span class="n">clammer</span><span class="p">))</span>
<span class="k">except</span> <span class="ne">AttributeError</span><span class="p">:</span>
<span class="n">logging</span><span class="o">.</span><span class="n">warning</span><span class="p">(</span><span class="s1">'Attribute __all__ is missing in package </span><span class="si">{:s}</span><span class="s1"> => No auto documentation.'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">__pack</span><span class="o">.</span><span class="vm">__name__</span><span class="p">))</span>
</code></pre></div>
</details>
</section>
<section>
<h3 id="#public_fct_ClamsPack">Public functions</h3>
<h4>get_name</h4>
<article class="docstring">
<p><em>Return the name of the package.</em></p>
</article>
<details>
<summary>
View Source
</summary>
<div class="highlight"><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">get_name</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">str</span><span class="p">:</span>
<span class="w"> </span><span class="sd">"""Return the name of the package."""</span>
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">__pack</span><span class="o">.</span><span class="vm">__name__</span>
</code></pre></div>
</details>
<h4>get_readme</h4>
<article class="docstring">
<p><em>Return the content of the README file of the package, if any.</em></p>
</article>
<details>
<summary>
View Source
</summary>
<div class="highlight"><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">get_readme</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">str</span><span class="p">:</span>
<span class="w"> </span><span class="sd">"""Return the content of the README file of the package, if any."""</span>
<span class="n">path_to_readme</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">dirname</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">__pack</span><span class="o">.</span><span class="vm">__file__</span><span class="p">)</span>
<span class="n">readme_content</span> <span class="o">=</span> <span class="s1">''</span>
<span class="k">for</span> <span class="n">f</span> <span class="ow">in</span> <span class="n">os</span><span class="o">.</span><span class="n">listdir</span><span class="p">(</span><span class="n">path_to_readme</span><span class="p">):</span>
<span class="k">if</span> <span class="s1">'readme'</span> <span class="ow">in</span> <span class="n">f</span><span class="o">.</span><span class="n">lower</span><span class="p">():</span>
<span class="n">readme_file</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">path_to_readme</span><span class="p">,</span> <span class="n">f</span><span class="p">)</span>
<span class="k">try</span><span class="p">:</span>
<span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="n">readme_file</span><span class="p">,</span> <span class="s1">'r'</span><span class="p">,</span> <span class="n">encoding</span><span class="o">=</span><span class="s1">'utf-8'</span><span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span>
<span class="n">readme_content</span> <span class="o">=</span> <span class="n">f</span><span class="o">.</span><span class="n">read</span><span class="p">()</span>
<span class="k">except</span> <span class="ne">Exception</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
<span class="n">logging</span><span class="o">.</span><span class="n">warning</span><span class="p">(</span><span class="s1">'A README file was found but could not be read: </span><span class="si">{:s}</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">e</span><span class="p">)))</span>
<span class="k">break</span>
<span class="k">return</span> <span class="n">readme_content</span>
</code></pre></div>
</details>
<h4>markdown</h4>
<article class="docstring">
<p><em>Return the documentation of the package as a standalone Markdown content.</em></p>
<h5>Parameters</h5>
<ul>
<li><strong>exporter</strong></li>
</ul>
</article>
<details>
<summary>
View Source
</summary>
<div class="highlight"><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">markdown</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">exporter</span><span class="p">:</span> <span class="n">ExportOptions</span> <span class="o">|</span> <span class="kc">None</span><span class="o">=</span><span class="kc">None</span><span class="p">)</span> <span class="o">-></span> <span class="nb">str</span><span class="p">:</span>
<span class="w"> </span><span class="sd">"""Return the documentation of the package as a standalone Markdown content.</span>
<span class="sd"> """</span>
<span class="n">md</span> <span class="o">=</span> <span class="nb">list</span><span class="p">()</span>
<span class="n">md</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">'# </span><span class="si">{:s}</span><span class="s1"> module</span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">name</span><span class="p">))</span>
<span class="k">if</span> <span class="n">exporter</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span><span class="p">:</span>
<span class="k">if</span> <span class="n">exporter</span><span class="o">.</span><span class="n">readme</span> <span class="ow">is</span> <span class="kc">True</span> <span class="ow">and</span> <span class="nb">len</span><span class="p">(</span><span class="n">HTML</span><span class="p">)</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span>
<span class="n">readme_content</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_readme</span><span class="p">()</span>
<span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">readme_content</span><span class="p">)</span> <span class="o">></span> <span class="mi">0</span><span class="p">:</span>
<span class="n">md</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">readme_content</span><span class="p">)</span>
<span class="n">md</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">'## List of classes</span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
<span class="k">for</span> <span class="n">clams</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">__clams</span><span class="p">:</span>
<span class="n">md</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">clams</span><span class="o">.</span><span class="n">markdown</span><span class="p">())</span>
<span class="n">md</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">'</span><span class="se">\n\n</span><span class="s1">~ Created using [Clamming](https://clamming.sf.net) version </span><span class="si">{:s}</span><span class="s1"> ~</span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">clamming</span><span class="o">.</span><span class="n">__version__</span><span class="p">))</span>
<span class="k">return</span> <span class="s1">'</span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">md</span><span class="p">)</span>
</code></pre></div>
</details>
<h4>html</h4>
<article class="docstring">
<p><em>Return the documentation of the package as an HTML content.</em></p>
<h5>Parameters</h5>
<ul>
<li><strong>exporter</strong></li>
</ul>
</article>
<details>
<summary>
View Source
</summary>
<div class="highlight"><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">html</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">exporter</span><span class="p">:</span> <span class="n">ExportOptions</span> <span class="o">|</span> <span class="kc">None</span><span class="o">=</span><span class="kc">None</span><span class="p">)</span> <span class="o">-></span> <span class="nb">str</span><span class="p">:</span>
<span class="w"> </span><span class="sd">"""Return the documentation of the package as an HTML content."""</span>
<span class="n">html</span> <span class="o">=</span> <span class="nb">list</span><span class="p">()</span>
<span class="n">html</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">'<h1></span><span class="si">{:s}</span><span class="s1"> module</h1></span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">name</span><span class="p">))</span>
<span class="k">if</span> <span class="n">exporter</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span><span class="p">:</span>
<span class="k">if</span> <span class="n">exporter</span><span class="o">.</span><span class="n">readme</span> <span class="ow">is</span> <span class="kc">True</span> <span class="ow">and</span> <span class="nb">len</span><span class="p">(</span><span class="n">HTML</span><span class="p">)</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span>
<span class="n">readme_content</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_readme</span><span class="p">()</span>
<span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">readme_content</span><span class="p">)</span> <span class="o">></span> <span class="mi">0</span><span class="p">:</span>
<span class="n">html</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' <section id="readme"></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
<span class="n">html</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">ClamUtils</span><span class="p">()</span><span class="o">.</span><span class="n">markdown_to_html</span><span class="p">(</span><span class="n">readme_content</span><span class="p">))</span>
<span class="n">html</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' </section></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
<span class="n">html</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">'<h2>List of classes</h2></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
<span class="k">for</span> <span class="n">clams</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">__clams</span><span class="p">:</span>
<span class="n">html</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">clams</span><span class="o">.</span><span class="n">html</span><span class="p">())</span>
<span class="n">html</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">'</span><span class="se">\n\n</span><span class="s1"><p>~ Created using <a href="https://clamming.sf.net">ClammingPy</a> version </span><span class="si">{:s}</span><span class="s1"> ~</p></span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">clamming</span><span class="o">.</span><span class="n">__version__</span><span class="p">))</span>
<span class="k">return</span> <span class="s1">'</span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">html</span><span class="p">)</span>
</code></pre></div>
</details>
<h4>html_index</h4>
<article class="docstring">
<p><em>Create the HTML content of an index for the package.</em></p>
<h5>Parameters</h5>
<ul>
<li><strong>path_name</strong>: (<em>str</em>) Path where the exported HTML files are, or None for a standalone content.</li>
<li><strong>exporter</strong>: (HTMLDocExport) Options for HTML output files</li>
</ul>
<h5>Returns</h5>
<ul>
<li>(<em>str</em>) HTML code</li>
</ul>
</article>
<details>
<summary>
View Source
</summary>
<div class="highlight"><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">html_index</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">path_name</span><span class="p">:</span> <span class="nb">str</span> <span class="o">|</span> <span class="kc">None</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">exporter</span><span class="p">:</span> <span class="n">ExportOptions</span> <span class="o">|</span> <span class="kc">None</span><span class="o">=</span><span class="kc">None</span><span class="p">)</span> <span class="o">-></span> <span class="nb">str</span><span class="p">:</span>
<span class="w"> </span><span class="sd">"""Create the HTML content of an index for the package.</span>
<span class="sd"> :param path_name: (str) Path where the exported HTML files are, or None for a standalone content.</span>
<span class="sd"> :param exporter: (HTMLDocExport) Options for HTML output files</span>
<span class="sd"> :return: (str) HTML code</span>
<span class="sd"> """</span>
<span class="n">out</span> <span class="o">=</span> <span class="nb">list</span><span class="p">()</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' <section id="#</span><span class="si">{:s}</span><span class="s1">">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">name</span><span class="p">))</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' <h1></span><span class="si">{:s}</span><span class="s1"> module</h1>'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">name</span><span class="p">))</span>
<span class="k">if</span> <span class="n">exporter</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span><span class="p">:</span>
<span class="k">if</span> <span class="n">exporter</span><span class="o">.</span><span class="n">readme</span> <span class="ow">is</span> <span class="kc">True</span> <span class="ow">and</span> <span class="nb">len</span><span class="p">(</span><span class="n">HTML</span><span class="p">)</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span>
<span class="n">readme_content</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_readme</span><span class="p">()</span>
<span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">readme_content</span><span class="p">)</span> <span class="o">></span> <span class="mi">0</span><span class="p">:</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' <section id="readme"></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">ClamUtils</span><span class="p">()</span><span class="o">.</span><span class="n">markdown_to_html</span><span class="p">(</span><span class="n">readme_content</span><span class="p">))</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' </section></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">'<h2>List of classes</h2></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' <section class="cards-panel">'</span><span class="p">)</span>
<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="nb">len</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">__clams</span><span class="p">)):</span>
<span class="n">clams</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">__clams</span><span class="p">[</span><span class="n">i</span><span class="p">]</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' <article class="card">'</span><span class="p">)</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' <header><span></span><span class="si">{:d}</span><span class="s1"></span></header>'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">i</span> <span class="o">+</span> <span class="mi">1</span><span class="p">))</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' <main>'</span><span class="p">)</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' <h3></span><span class="si">{:s}</span><span class="s1"></h3>'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">clams</span><span class="o">.</span><span class="n">name</span><span class="p">))</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' </main>'</span><span class="p">)</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' <footer>'</span><span class="p">)</span>
<span class="k">if</span> <span class="n">path_name</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span><span class="p">:</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' <a role="button" href="</span><span class="si">{:s}</span><span class="s1">">Read me →</a>'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">path_name</span><span class="p">,</span> <span class="n">clams</span><span class="o">.</span><span class="n">name</span> <span class="o">+</span> <span class="s1">'.html'</span><span class="p">)))</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' <a role="button" href="#</span><span class="si">{:s}</span><span class="s1">">Read me →</a>'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">clams</span><span class="o">.</span><span class="n">name</span><span class="p">))</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' </footer>'</span><span class="p">)</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' </article>'</span><span class="p">)</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' </section>'</span><span class="p">)</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">' </section>'</span><span class="p">)</span>
<span class="k">return</span> <span class="s1">'</span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">out</span><span class="p">)</span>
</code></pre></div>
</details>
<h4>html_export_clams</h4>
<article class="docstring">
<p><em>Create the HTML pages of all classes of the package.</em></p>
<h5>Parameters</h5>
<ul>
<li><strong>path_name</strong>: (<em>str</em>) Path where to add the exported HTML files</li>
<li><strong>exporter</strong>: (HTMLDocExport) Options for HTML output files</li>
</ul>
<h5>Returns</h5>
<ul>
<li>(<em>list</em>) Exported file names</li>
</ul>
</article>
<details>
<summary>
View Source
</summary>
<div class="highlight"><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">html_export_clams</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">path_name</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">exporter</span><span class="p">:</span> <span class="n">ExportOptions</span><span class="p">)</span> <span class="o">-></span> <span class="nb">list</span><span class="p">[</span><span class="nb">str</span><span class="p">]:</span>
<span class="w"> </span><span class="sd">"""Create the HTML pages of all classes of the package.</span>
<span class="sd"> :param path_name: (str) Path where to add the exported HTML files</span>
<span class="sd"> :param exporter: (HTMLDocExport) Options for HTML output files</span>
<span class="sd"> :return: (list) Exported file names</span>
<span class="sd"> """</span>
<span class="n">out</span> <span class="o">=</span> <span class="nb">list</span><span class="p">()</span>
<span class="k">if</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">exists</span><span class="p">(</span><span class="n">path_name</span><span class="p">)</span> <span class="ow">is</span> <span class="kc">False</span><span class="p">:</span>
<span class="n">os</span><span class="o">.</span><span class="n">mkdir</span><span class="p">(</span><span class="n">path_name</span><span class="p">)</span>
<span class="n">logging</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'Export module index'</span><span class="p">)</span>
<span class="n">out_html</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">path_name</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">name</span> <span class="o">+</span> <span class="s1">'.html'</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">__module_index</span><span class="p">(</span><span class="n">out_html</span><span class="p">,</span> <span class="n">exporter</span><span class="p">)</span>
<span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">out_html</span><span class="p">)</span>
<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="nb">len</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">__clams</span><span class="p">)):</span>
<span class="n">clams</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">__clams</span><span class="p">[</span><span class="n">i</span><span class="p">]</span>
<span class="n">out_html</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">path_name</span><span class="p">,</span> <span class="n">clams</span><span class="o">.</span><span class="n">name</span> <span class="o">+</span> <span class="s1">'.html'</span><span class="p">)</span>
<span class="n">logging</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'Export </span><span class="si">{:s}</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">out_html</span><span class="p">))</span>
<span class="n">exporter</span><span class="o">.</span><span class="n">prev_class</span> <span class="o">=</span> <span class="kc">None</span> <span class="k">if</span> <span class="n">i</span> <span class="o">==</span> <span class="mi">0</span> <span class="k">else</span> <span class="bp">self</span><span class="o">.</span><span class="n">__clams</span><span class="p">[</span><span class="n">i</span> <span class="o">-</span> <span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">name</span> <span class="o">+</span> <span class="s1">'.html'</span>
<span class="n">exporter</span><span class="o">.</span><span class="n">next_class</span> <span class="o">=</span> <span class="kc">None</span> <span class="k">if</span> <span class="n">i</span> <span class="o">+</span> <span class="mi">1</span> <span class="o">==</span> <span class="nb">len</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">__clams</span><span class="p">)</span> <span class="k">else</span> <span class="bp">self</span><span class="o">.</span><span class="n">__clams</span><span class="p">[</span><span class="n">i</span> <span class="o">+</span> <span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">name</span> <span class="o">+</span> <span class="s1">'.html'</span>
<span class="n">html_content</span> <span class="o">=</span> <span class="n">clams</span><span class="o">.</span><span class="n">html</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">__module_class</span><span class="p">(</span><span class="n">out_html</span><span class="p">,</span> <span class="n">exporter</span><span class="p">,</span> <span class="n">html_content</span><span class="p">)</span>
<span class="k">return</span> <span class="n">out</span>
</code></pre></div>
</details>
</section>
<section>
<h3 id="#protected_fct_ClamsPack">Protected functions</h3>
<h4>__module_index</h4>
<article class="docstring">
<p><em>Export an index for the module.</em></p>
<h5>Parameters</h5>
<ul>
<li><strong>out_html</strong></li>
<li><strong>exporter</strong></li>
</ul>
</article>
<details>
<summary>
View Source
</summary>
<div class="highlight"><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">__module_index</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">out_html</span><span class="p">,</span> <span class="n">exporter</span><span class="p">):</span>
<span class="w"> </span><span class="sd">"""Export an index for the module.</span>
<span class="sd"> """</span>
<span class="k">with</span> <span class="n">codecs</span><span class="o">.</span><span class="n">open</span><span class="p">(</span><span class="n">out_html</span><span class="p">,</span> <span class="s1">'w'</span><span class="p">,</span> <span class="s1">'utf-8'</span><span class="p">)</span> <span class="k">as</span> <span class="n">fp</span><span class="p">:</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">'<!DOCTYPE html></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">'<html></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">exporter</span><span class="o">.</span><span class="n">get_head</span><span class="p">())</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">'<body class="</span><span class="si">{:s}</span><span class="s1">"></span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">exporter</span><span class="o">.</span><span class="n">get_theme</span><span class="p">()))</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">' </span><span class="si">{:s}</span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">exporter</span><span class="o">.</span><span class="n">get_header</span><span class="p">()))</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">' </span><span class="si">{:s}</span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">exporter</span><span class="o">.</span><span class="n">get_nav</span><span class="p">()))</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">' <main id="main-content"></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">html_index</span><span class="p">(</span><span class="n">path_name</span><span class="o">=</span><span class="s1">''</span><span class="p">,</span> <span class="n">exporter</span><span class="o">=</span><span class="n">exporter</span><span class="p">))</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">' </main></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">' </span><span class="si">{:s}</span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">exporter</span><span class="o">.</span><span class="n">get_footer</span><span class="p">()))</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">'</body></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">'</html></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
</code></pre></div>
</details>
<h4>__module_class</h4>
<article class="docstring">
<p><em>Export a content for the module.</em></p>
<h5>Parameters</h5>
<ul>
<li><strong>out_html</strong></li>
<li><strong>exporter</strong></li>
<li><strong>content</strong></li>
</ul>
</article>
<details>
<summary>
View Source
</summary>
<div class="highlight"><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">__module_class</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">out_html</span><span class="p">,</span> <span class="n">exporter</span><span class="p">,</span> <span class="n">content</span><span class="p">):</span>
<span class="w"> </span><span class="sd">"""Export a content for the module.</span>
<span class="sd"> """</span>
<span class="k">with</span> <span class="n">codecs</span><span class="o">.</span><span class="n">open</span><span class="p">(</span><span class="n">out_html</span><span class="p">,</span> <span class="s1">'w'</span><span class="p">,</span> <span class="s1">'utf-8'</span><span class="p">)</span> <span class="k">as</span> <span class="n">fp</span><span class="p">:</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">'<!DOCTYPE html></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">'<html></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">exporter</span><span class="o">.</span><span class="n">get_head</span><span class="p">())</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">'<body class="</span><span class="si">{:s}</span><span class="s1">"></span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">exporter</span><span class="o">.</span><span class="n">get_theme</span><span class="p">()))</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">' </span><span class="si">{:s}</span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">exporter</span><span class="o">.</span><span class="n">get_header</span><span class="p">()))</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">' </span><span class="si">{:s}</span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">exporter</span><span class="o">.</span><span class="n">get_nav</span><span class="p">()))</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">' <main id="main-content"></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">' <section id="#</span><span class="si">{:s}</span><span class="s1">">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">name</span><span class="p">))</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">' <h1>Module </span><span class="si">{:s}</span><span class="s1"></h1></span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">name</span><span class="p">))</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">content</span><span class="p">)</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">' </section>'</span><span class="p">)</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">' </main></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">' </span><span class="si">{:s}</span><span class="se">\n</span><span class="s1">'</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">exporter</span><span class="o">.</span><span class="n">get_footer</span><span class="p">()))</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">'</body></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
<span class="n">fp</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">'</html></span><span class="se">\n</span><span class="s1">'</span><span class="p">)</span>
</code></pre></div>
</details>
</section>
<section>
<h3 id="#overloads_ClamsPack">Overloads</h3>
<h4>__len__</h4>
<article class="docstring">
<p><em>Return the number of documented pages of the package.</em></p>
</article>
<details>
<summary>
View Source
</summary>
<div class="highlight"><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="fm">__len__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="w"> </span><span class="sd">"""Return the number of documented pages of the package."""</span>
<span class="k">return</span> <span class="nb">len</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">__clams</span><span class="p">)</span>
</code></pre></div>
</details>
</section>
</section> </section> </main>
<footer>
<p class="copyright">Copyright (C) 2023-2025 Brigitte Bigi, CNRS, Laboratoire Parole et Langage, Aix-en-Provence, France</p>
</footer>
</body>
</html>