docs/api/owlmixin.html
<!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="Docutils 0.19: https://docutils.sourceforge.io/" />
<title>OwlMixin — owlmixin documentation</title>
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="../_static/pyramid.css" />
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
<script src="../_static/jquery.js"></script>
<script src="../_static/underscore.js"></script>
<script src="../_static/_sphinx_javascript_frameworks_compat.js"></script>
<script src="../_static/doctools.js"></script>
<script src="../_static/sphinx_highlight.js"></script>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="next" title="Collections" href="owlcollections.html" />
<link rel="prev" title="Owlmixin API Reference" href="../index.html" />
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Neuton&subset=latin" type="text/css" media="screen" charset="utf-8" />
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Nobile:regular,italic,bold,bolditalic&subset=latin" type="text/css" media="screen" charset="utf-8" />
<!--[if lte IE 6]>
<link rel="stylesheet" href="../_static/ie6.css" type="text/css" media="screen" charset="utf-8" />
<![endif]-->
</head><body>
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="../genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="right" >
<a href="owlcollections.html" title="Collections"
accesskey="N">next</a> |</li>
<li class="right" >
<a href="../index.html" title="Owlmixin API Reference"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="../index.html">owlmixin documentation</a> »</li>
<li class="nav-item nav-item-this"><a href="">OwlMixin</a></li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<section id="owlmixin">
<h1>OwlMixin<a class="headerlink" href="#owlmixin" title="Permalink to this heading">¶</a></h1>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>Usage on each methods are valid on the premise that the following classes is defined in advance.</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="c1"># coding: utf-8</span>
<span class="kn">from</span> <span class="nn">owlmixin</span> <span class="kn">import</span> <span class="n">OwlMixin</span><span class="p">,</span> <span class="n">TOption</span>
<span class="kn">from</span> <span class="nn">owlmixin.owlcollections</span> <span class="kn">import</span> <span class="n">TDict</span><span class="p">,</span> <span class="n">TList</span>
<span class="kn">from</span> <span class="nn">owlmixin.owlenum</span> <span class="kn">import</span> <span class="n">OwlEnum</span><span class="p">,</span> <span class="n">OwlObjectEnum</span>
<span class="k">class</span> <span class="nc">Animal</span><span class="p">(</span><span class="n">OwlObjectEnum</span><span class="p">):</span> <span class="c1"># pragma: no cover</span>
<span class="n">DOG</span> <span class="o">=</span> <span class="p">(</span><span class="s2">"dog"</span><span class="p">,</span> <span class="p">{</span><span class="s2">"cry"</span><span class="p">:</span> <span class="s2">"bow-wow"</span><span class="p">})</span>
<span class="n">CAT</span> <span class="o">=</span> <span class="p">(</span><span class="s2">"cat"</span><span class="p">,</span> <span class="p">{</span><span class="s2">"cry"</span><span class="p">:</span> <span class="s2">"mewing"</span><span class="p">})</span>
<span class="k">def</span> <span class="nf">cry</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">object</span><span class="p">[</span><span class="s2">"cry"</span><span class="p">]</span>
<span class="k">class</span> <span class="nc">Color</span><span class="p">(</span><span class="n">OwlEnum</span><span class="p">):</span> <span class="c1"># pragma: no cover</span>
<span class="n">RED</span> <span class="o">=</span> <span class="s2">"red"</span>
<span class="n">GREEN</span> <span class="o">=</span> <span class="s2">"green"</span>
<span class="n">BLUE</span> <span class="o">=</span> <span class="s2">"blue"</span>
<span class="k">class</span> <span class="nc">Food</span><span class="p">(</span><span class="n">OwlMixin</span><span class="p">):</span> <span class="c1"># pragma: no cover</span>
<span class="n">name</span><span class="p">:</span> <span class="nb">str</span>
<span class="n">names_by_lang</span><span class="p">:</span> <span class="n">TOption</span><span class="p">[</span><span class="n">TDict</span><span class="p">[</span><span class="nb">str</span><span class="p">]]</span>
<span class="k">class</span> <span class="nc">Human</span><span class="p">(</span><span class="n">OwlMixin</span><span class="p">):</span> <span class="c1"># pragma: no cover</span>
<span class="nb">id</span><span class="p">:</span> <span class="nb">int</span>
<span class="n">name</span><span class="p">:</span> <span class="nb">str</span>
<span class="n">favorites</span><span class="p">:</span> <span class="n">TList</span><span class="p">[</span><span class="n">Food</span><span class="p">]</span>
<span class="k">class</span> <span class="nc">Machine</span><span class="p">(</span><span class="n">OwlMixin</span><span class="p">):</span> <span class="c1"># pragma: no cover</span>
<span class="nb">id</span><span class="p">:</span> <span class="nb">int</span>
<span class="n">name</span><span class="p">:</span> <span class="nb">str</span>
<span class="k">class</span> <span class="nc">Japanese</span><span class="p">(</span><span class="n">OwlMixin</span><span class="p">):</span> <span class="c1"># pragma: no cover</span>
<span class="n">name</span><span class="p">:</span> <span class="nb">str</span>
<span class="n">language</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="s2">"japanese"</span>
</pre></div>
</div>
</div>
<dl class="py class">
<dt class="sig sig-object py" id="owlmixin.OwlMixin">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">owlmixin.</span></span><span class="sig-name descname"><span class="pre">OwlMixin</span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin" title="Permalink to this definition">¶</a></dt>
<dd><dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_dict">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_dict</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">d</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">dict</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">T</span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_dict"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_dict" title="Permalink to this definition">¶</a></dt>
<dd><p>From dict to instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>d</strong> – Dict</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Instance</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span><span class="p">,</span> <span class="n">Food</span><span class="p">,</span> <span class="n">Japanese</span>
<span class="gp">>>> </span><span class="n">human</span><span class="p">:</span> <span class="n">Human</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_dict</span><span class="p">({</span>
<span class="gp">... </span> <span class="s2">"id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Tom"</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"favorites"</span><span class="p">:</span> <span class="p">[</span>
<span class="gp">... </span> <span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">,</span> <span class="s2">"names_by_lang"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"en"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">,</span> <span class="s2">"de"</span><span class="p">:</span> <span class="s2">"Apfel"</span><span class="p">}},</span>
<span class="gp">... </span> <span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Orange"</span><span class="p">}</span>
<span class="gp">... </span> <span class="p">]</span>
<span class="gp">... </span><span class="p">})</span>
<span class="gp">>>> </span><span class="n">human</span><span class="o">.</span><span class="n">id</span>
<span class="go">1</span>
<span class="gp">>>> </span><span class="n">human</span><span class="o">.</span><span class="n">name</span>
<span class="go">'Tom'</span>
<span class="gp">>>> </span><span class="n">human</span><span class="o">.</span><span class="n">favorites</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">name</span>
<span class="go">'Apple'</span>
<span class="gp">>>> </span><span class="n">human</span><span class="o">.</span><span class="n">favorites</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">names_by_lang</span><span class="o">.</span><span class="n">get</span><span class="p">()[</span><span class="s2">"de"</span><span class="p">]</span>
<span class="go">'Apfel'</span>
</pre></div>
</div>
<p>You can use default value</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">taro</span><span class="p">:</span> <span class="n">Japanese</span> <span class="o">=</span> <span class="n">Japanese</span><span class="o">.</span><span class="n">from_dict</span><span class="p">({</span>
<span class="gp">... </span> <span class="s2">"name"</span><span class="p">:</span> <span class="s1">'taro'</span>
<span class="gp">... </span><span class="p">})</span>
<span class="gp">>>> </span><span class="n">taro</span><span class="o">.</span><span class="n">name</span>
<span class="go">'taro'</span>
<span class="gp">>>> </span><span class="n">taro</span><span class="o">.</span><span class="n">language</span>
<span class="go">'japanese'</span>
</pre></div>
</div>
<p>If you don’t set <cite>force_snake=False</cite> explicitly, keys are transformed to snake case as following.</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">human</span><span class="p">:</span> <span class="n">Human</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_dict</span><span class="p">({</span>
<span class="gp">... </span> <span class="s2">"--id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"<name>"</span><span class="p">:</span> <span class="s2">"Tom"</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"favorites"</span><span class="p">:</span> <span class="p">[</span>
<span class="gp">... </span> <span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">,</span> <span class="s2">"namesByLang"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"en"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">}}</span>
<span class="gp">... </span> <span class="p">]</span>
<span class="gp">... </span><span class="p">})</span>
<span class="gp">>>> </span><span class="n">human</span><span class="o">.</span><span class="n">id</span>
<span class="go">1</span>
<span class="gp">>>> </span><span class="n">human</span><span class="o">.</span><span class="n">name</span>
<span class="go">'Tom'</span>
<span class="gp">>>> </span><span class="n">human</span><span class="o">.</span><span class="n">favorites</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">names_by_lang</span><span class="o">.</span><span class="n">get</span><span class="p">()[</span><span class="s2">"en"</span><span class="p">]</span>
<span class="go">'Apple'</span>
</pre></div>
</div>
<p>You can allow extra parameters (like <code class="docutils literal notranslate"><span class="pre">hogehoge</span></code>) if you set <cite>restrict=False</cite>.</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">apple</span><span class="p">:</span> <span class="n">Food</span> <span class="o">=</span> <span class="n">Food</span><span class="o">.</span><span class="n">from_dict</span><span class="p">({</span>
<span class="gp">... </span> <span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"hogehoge"</span><span class="p">:</span> <span class="s2">"ooooooooooooooooooooo"</span><span class="p">,</span>
<span class="gp">... </span><span class="p">},</span> <span class="n">restrict</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
<span class="gp">>>> </span><span class="n">apple</span><span class="o">.</span><span class="n">to_dict</span><span class="p">()</span>
<span class="go">{'name': 'Apple'}</span>
</pre></div>
</div>
<p>You can prohibit extra parameters (like <code class="docutils literal notranslate"><span class="pre">hogehoge</span></code>) if you set <cite>restrict=True</cite> (which is default).</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">human</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_dict</span><span class="p">({</span>
<span class="gp">... </span> <span class="s2">"id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Tom"</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"hogehoge1"</span><span class="p">:</span> <span class="s2">"ooooooooooooooooooooo"</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"hogehoge2"</span><span class="p">:</span> <span class="p">[</span><span class="s2">"aaaaaaaaaaaaaaaaaa"</span><span class="p">,</span> <span class="s2">"iiiiiiiiiiiiiiiii"</span><span class="p">],</span>
<span class="gp">... </span> <span class="s2">"favorites"</span><span class="p">:</span> <span class="p">[</span>
<span class="gp">... </span> <span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">,</span> <span class="s2">"namesByLang"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"en"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">,</span> <span class="s2">"de"</span><span class="p">:</span> <span class="s2">"Apfel"</span><span class="p">}},</span>
<span class="gp">... </span> <span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Orange"</span><span class="p">}</span>
<span class="gp">... </span> <span class="p">]</span>
<span class="gp">... </span><span class="p">})</span>
<span class="gt">Traceback (most recent call last):</span>
<span class="w"> </span><span class="o">...</span>
<span class="gr">owlmixin.errors.UnknownPropertiesError</span><span class="w">:</span>
<span class="x">. ∧,,_∧ ,___________________</span>
<span class="x"> ⊂ ( ・ω・ )つ- < Unknown properties error</span>
<span class="x"> /// /::/ `-------------------</span>
<span class="x"> |::|/⊂ヽノ|::|」</span>
<span class="x">/ ̄ ̄旦 ̄ ̄ ̄/|</span>
<span class="x">______/ | |</span>
<span class="x">|------ー----ー|/</span>
<span class="x">`owlmixin.samples.Human` has unknown properties ['hogehoge1', 'hogehoge2']!!</span>
<span class="x"> * If you want to allow unknown properties, set `restrict=False`</span>
<span class="x"> * If you want to disallow unknown properties, add `hogehoge1` and `hogehoge2` to owlmixin.samples.Human</span>
</pre></div>
</div>
<p>If you specify wrong type…</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">human</span><span class="p">:</span> <span class="n">Human</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_dict</span><span class="p">({</span>
<span class="gp">... </span> <span class="s2">"id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"name"</span><span class="p">:</span> <span class="s2">"ichiro"</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"favorites"</span><span class="p">:</span> <span class="p">[</span><span class="s2">"apple"</span><span class="p">,</span> <span class="s2">"orange"</span><span class="p">]</span>
<span class="gp">... </span><span class="p">})</span>
<span class="gt">Traceback (most recent call last):</span>
<span class="w"> </span><span class="o">...</span>
<span class="gr">owlmixin.errors.InvalidTypeError</span><span class="w">:</span>
<span class="x">. ∧,,_∧ ,___________________</span>
<span class="x"> ⊂ ( ・ω・ )つ- < Invalid Type error</span>
<span class="x"> /// /::/ `-------------------</span>
<span class="x"> |::|/⊂ヽノ|::|」</span>
<span class="x">/ ̄ ̄旦 ̄ ̄ ̄/|</span>
<span class="x">______/ | |</span>
<span class="x">|------ー----ー|/</span>
<span class="x">`owlmixin.samples.Human#favorites.0 = apple` doesn't match expected types.</span>
<span class="x">Expected type is one of ["<class 'owlmixin.samples.Food'>", "<class 'dict'>"], but actual type is `<class 'str'>`</span>
<span class="x"> * If you want to force cast, set `force_cast=True`</span>
<span class="x"> * If you don't want to force cast, specify value which has correct type</span>
</pre></div>
</div>
<p>If you don’t specify required params… (ex. name</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">human</span><span class="p">:</span> <span class="n">Human</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_dict</span><span class="p">({</span>
<span class="gp">... </span> <span class="s2">"id"</span><span class="p">:</span> <span class="mi">1</span>
<span class="gp">... </span><span class="p">})</span>
<span class="gt">Traceback (most recent call last):</span>
<span class="w"> </span><span class="o">...</span>
<span class="gr">owlmixin.errors.RequiredError</span><span class="w">:</span>
<span class="x">. ∧,,_∧ ,___________________</span>
<span class="x"> ⊂ ( ・ω・ )つ- < Required error</span>
<span class="x"> /// /::/ `-------------------</span>
<span class="x"> |::|/⊂ヽノ|::|」</span>
<span class="x">/ ̄ ̄旦 ̄ ̄ ̄/|</span>
<span class="x">______/ | |</span>
<span class="x">|------ー----ー|/</span>
<span class="x">`owlmixin.samples.Human#name: <class 'str'>` is empty!!</span>
<span class="x"> * If `name` is certainly required, specify anything.</span>
<span class="x"> * If `name` is optional, change type from `<class 'str'>` to `TOption[<class 'str'>]`</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_optional_dict">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_optional_dict</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">d</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Optional</span><span class="p"><span class="pre">[</span></span><span class="pre">dict</span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="owloption.html#owlmixin.owloption.TOption" title="owlmixin.owloption.TOption"><span class="pre">TOption</span></a><span class="p"><span class="pre">[</span></span><span class="pre">T</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_optional_dict"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_optional_dict" title="Permalink to this definition">¶</a></dt>
<dd><p>From dict to optional instance.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>d</strong> – Dict</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Instance</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span>
<span class="gp">>>> </span><span class="n">Human</span><span class="o">.</span><span class="n">from_optional_dict</span><span class="p">(</span><span class="kc">None</span><span class="p">)</span><span class="o">.</span><span class="n">is_none</span><span class="p">()</span>
<span class="go">True</span>
<span class="gp">>>> </span><span class="n">Human</span><span class="o">.</span><span class="n">from_optional_dict</span><span class="p">({})</span><span class="o">.</span><span class="n">get</span><span class="p">()</span>
<span class="gt">Traceback (most recent call last):</span>
<span class="w"> </span><span class="o">...</span>
<span class="gr">owlmixin.errors.RequiredError</span><span class="w">:</span>
<span class="x">. ∧,,_∧ ,___________________</span>
<span class="x"> ⊂ ( ・ω・ )つ- < Required error</span>
<span class="x"> /// /::/ `-------------------</span>
<span class="x"> |::|/⊂ヽノ|::|」</span>
<span class="x">/ ̄ ̄旦 ̄ ̄ ̄/|</span>
<span class="x">______/ | |</span>
<span class="x">|------ー----ー|/</span>
<span class="x">`owlmixin.samples.Human#id: <class 'int'>` is empty!!</span>
<span class="x"> * If `id` is certainly required, specify anything.</span>
<span class="x"> * If `id` is optional, change type from `<class 'int'>` to `TOption[<class 'int'>]`</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_dicts">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_dicts</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ds</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">List</span><span class="p"><span class="pre">[</span></span><span class="pre">dict</span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="owlcollections.html#owlmixin.owlcollections.TList" title="owlmixin.owlcollections.TList"><span class="pre">TList</span></a><span class="p"><span class="pre">[</span></span><span class="pre">T</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_dicts"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_dicts" title="Permalink to this definition">¶</a></dt>
<dd><p>From list of dict to list of instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>ds</strong> – List of dict</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>List of instance</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="p">:</span> <span class="n">TList</span><span class="p">[</span><span class="n">Human</span><span class="p">]</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_dicts</span><span class="p">([</span>
<span class="gp">... </span> <span class="p">{</span><span class="s2">"id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span> <span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Tom"</span><span class="p">,</span> <span class="s2">"favorites"</span><span class="p">:</span> <span class="p">[{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">}]},</span>
<span class="gp">... </span> <span class="p">{</span><span class="s2">"id"</span><span class="p">:</span> <span class="mi">2</span><span class="p">,</span> <span class="s2">"name"</span><span class="p">:</span> <span class="s2">"John"</span><span class="p">,</span> <span class="s2">"favorites"</span><span class="p">:</span> <span class="p">[{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Orange"</span><span class="p">}]}</span>
<span class="gp">... </span><span class="p">])</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">name</span>
<span class="go">'Tom'</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">name</span>
<span class="go">'John'</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_iterable_dicts">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_iterable_dicts</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ds</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Iterable</span><span class="p"><span class="pre">[</span></span><span class="pre">dict</span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="owlcollections.html#owlmixin.owlcollections.TIterator" title="owlmixin.owlcollections.TIterator"><span class="pre">TIterator</span></a><span class="p"><span class="pre">[</span></span><span class="pre">T</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_iterable_dicts"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_iterable_dicts" title="Permalink to this definition">¶</a></dt>
<dd><p>From iterable dict to iterable instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>ds</strong> – Iterable dict</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Iterator</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="p">:</span> <span class="n">TIterator</span><span class="p">[</span><span class="n">Human</span><span class="p">]</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_iterable_dicts</span><span class="p">([</span>
<span class="gp">... </span> <span class="p">{</span><span class="s2">"id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span> <span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Tom"</span><span class="p">,</span> <span class="s2">"favorites"</span><span class="p">:</span> <span class="p">[{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">}]},</span>
<span class="gp">... </span> <span class="p">{</span><span class="s2">"id"</span><span class="p">:</span> <span class="mi">2</span><span class="p">,</span> <span class="s2">"name"</span><span class="p">:</span> <span class="s2">"John"</span><span class="p">,</span> <span class="s2">"favorites"</span><span class="p">:</span> <span class="p">[{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Orange"</span><span class="p">}]}</span>
<span class="gp">... </span><span class="p">])</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="o">.</span><span class="n">next_at</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span><span class="o">.</span><span class="n">get</span><span class="p">()</span><span class="o">.</span><span class="n">name</span>
<span class="go">'Tom'</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="o">.</span><span class="n">next_at</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span><span class="o">.</span><span class="n">get</span><span class="p">()</span><span class="o">.</span><span class="n">name</span>
<span class="go">'John'</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_optional_dicts">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_optional_dicts</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ds</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Optional</span><span class="p"><span class="pre">[</span></span><span class="pre">List</span><span class="p"><span class="pre">[</span></span><span class="pre">dict</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="owloption.html#owlmixin.owloption.TOption" title="owlmixin.owloption.TOption"><span class="pre">TOption</span></a><span class="p"><span class="pre">[</span></span><a class="reference internal" href="owlcollections.html#owlmixin.owlcollections.TList" title="owlmixin.owlcollections.TList"><span class="pre">TList</span></a><span class="p"><span class="pre">[</span></span><span class="pre">T</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_optional_dicts"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_optional_dicts" title="Permalink to this definition">¶</a></dt>
<dd><p>From list of dict to optional list of instance.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>ds</strong> – List of dict</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>List of instance</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span>
<span class="gp">>>> </span><span class="n">Human</span><span class="o">.</span><span class="n">from_optional_dicts</span><span class="p">(</span><span class="kc">None</span><span class="p">)</span><span class="o">.</span><span class="n">is_none</span><span class="p">()</span>
<span class="go">True</span>
<span class="gp">>>> </span><span class="n">Human</span><span class="o">.</span><span class="n">from_optional_dicts</span><span class="p">([])</span><span class="o">.</span><span class="n">get</span><span class="p">()</span>
<span class="go">[]</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_optional_iterable_dicts">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_optional_iterable_dicts</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ds</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Optional</span><span class="p"><span class="pre">[</span></span><span class="pre">Iterable</span><span class="p"><span class="pre">[</span></span><span class="pre">dict</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="owloption.html#owlmixin.owloption.TOption" title="owlmixin.owloption.TOption"><span class="pre">TOption</span></a><span class="p"><span class="pre">[</span></span><a class="reference internal" href="owlcollections.html#owlmixin.owlcollections.TIterator" title="owlmixin.owlcollections.TIterator"><span class="pre">TIterator</span></a><span class="p"><span class="pre">[</span></span><span class="pre">T</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_optional_iterable_dicts"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_optional_iterable_dicts" title="Permalink to this definition">¶</a></dt>
<dd><p>From iterable dict to optional iterable instance.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>ds</strong> – Iterable dict</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Iterable instance</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span>
<span class="gp">>>> </span><span class="n">Human</span><span class="o">.</span><span class="n">from_optional_dicts</span><span class="p">(</span><span class="kc">None</span><span class="p">)</span><span class="o">.</span><span class="n">is_none</span><span class="p">()</span>
<span class="go">True</span>
<span class="gp">>>> </span><span class="n">Human</span><span class="o">.</span><span class="n">from_optional_dicts</span><span class="p">([])</span><span class="o">.</span><span class="n">get</span><span class="p">()</span>
<span class="go">[]</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_dicts_by_key">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_dicts_by_key</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ds</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">dict</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="owlcollections.html#owlmixin.owlcollections.TDict" title="owlmixin.owlcollections.TDict"><span class="pre">TDict</span></a><span class="p"><span class="pre">[</span></span><span class="pre">T</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_dicts_by_key"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_dicts_by_key" title="Permalink to this definition">¶</a></dt>
<dd><p>From dict of dict to dict of instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>ds</strong> – Dict of dict</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Dict of instance</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span>
<span class="gp">>>> </span><span class="n">humans_by_name</span><span class="p">:</span> <span class="n">TDict</span><span class="p">[</span><span class="n">Human</span><span class="p">]</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_dicts_by_key</span><span class="p">({</span>
<span class="gp">... </span> <span class="s1">'Tom'</span><span class="p">:</span> <span class="p">{</span><span class="s2">"id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span> <span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Tom"</span><span class="p">,</span> <span class="s2">"favorites"</span><span class="p">:</span> <span class="p">[{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">}]},</span>
<span class="gp">... </span> <span class="s1">'John'</span><span class="p">:</span> <span class="p">{</span><span class="s2">"id"</span><span class="p">:</span> <span class="mi">2</span><span class="p">,</span> <span class="s2">"name"</span><span class="p">:</span> <span class="s2">"John"</span><span class="p">,</span> <span class="s2">"favorites"</span><span class="p">:</span> <span class="p">[{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Orange"</span><span class="p">}]}</span>
<span class="gp">... </span><span class="p">})</span>
<span class="gp">>>> </span><span class="n">humans_by_name</span><span class="p">[</span><span class="s1">'Tom'</span><span class="p">]</span><span class="o">.</span><span class="n">name</span>
<span class="go">'Tom'</span>
<span class="gp">>>> </span><span class="n">humans_by_name</span><span class="p">[</span><span class="s1">'John'</span><span class="p">]</span><span class="o">.</span><span class="n">name</span>
<span class="go">'John'</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_optional_dicts_by_key">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_optional_dicts_by_key</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ds</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Optional</span><span class="p"><span class="pre">[</span></span><span class="pre">dict</span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="owloption.html#owlmixin.owloption.TOption" title="owlmixin.owloption.TOption"><span class="pre">TOption</span></a><span class="p"><span class="pre">[</span></span><a class="reference internal" href="owlcollections.html#owlmixin.owlcollections.TDict" title="owlmixin.owlcollections.TDict"><span class="pre">TDict</span></a><span class="p"><span class="pre">[</span></span><span class="pre">T</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_optional_dicts_by_key"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_optional_dicts_by_key" title="Permalink to this definition">¶</a></dt>
<dd><p>From dict of dict to optional dict of instance.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>ds</strong> – Dict of dict</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Dict of instance</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span>
<span class="gp">>>> </span><span class="n">Human</span><span class="o">.</span><span class="n">from_optional_dicts_by_key</span><span class="p">(</span><span class="kc">None</span><span class="p">)</span><span class="o">.</span><span class="n">is_none</span><span class="p">()</span>
<span class="go">True</span>
<span class="gp">>>> </span><span class="n">Human</span><span class="o">.</span><span class="n">from_optional_dicts_by_key</span><span class="p">({})</span><span class="o">.</span><span class="n">get</span><span class="p">()</span>
<span class="go">{}</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_json">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_json</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">data</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">T</span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_json"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_json" title="Permalink to this definition">¶</a></dt>
<dd><p>From json string to instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> – Json string</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Instance</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span>
<span class="gp">>>> </span><span class="n">human</span><span class="p">:</span> <span class="n">Human</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_json</span><span class="p">(</span><span class="s1">'''{</span>
<span class="gp">... </span><span class="s1"> "id": 1,</span>
<span class="gp">... </span><span class="s1"> "name": "Tom",</span>
<span class="gp">... </span><span class="s1"> "favorites": [</span>
<span class="gp">... </span><span class="s1"> {"name": "Apple", "names_by_lang": {"en": "Apple", "de": "Apfel"}},</span>
<span class="gp">... </span><span class="s1"> {"name": "Orange"}</span>
<span class="gp">... </span><span class="s1"> ]</span>
<span class="gp">... </span><span class="s1">}'''</span><span class="p">)</span>
<span class="gp">>>> </span><span class="n">human</span><span class="o">.</span><span class="n">id</span>
<span class="go">1</span>
<span class="gp">>>> </span><span class="n">human</span><span class="o">.</span><span class="n">name</span>
<span class="go">'Tom'</span>
<span class="gp">>>> </span><span class="n">human</span><span class="o">.</span><span class="n">favorites</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">names_by_lang</span><span class="o">.</span><span class="n">get</span><span class="p">()[</span><span class="s2">"de"</span><span class="p">]</span>
<span class="go">'Apfel'</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_jsonf">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_jsonf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">fpath</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">encoding</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'utf8'</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">T</span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_jsonf"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_jsonf" title="Permalink to this definition">¶</a></dt>
<dd><p>From json file path to instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>fpath</strong> – Json file path</p></li>
<li><p><strong>encoding</strong> – Json file encoding</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Instance</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_json_to_list">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_json_to_list</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">data</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="owlcollections.html#owlmixin.owlcollections.TList" title="owlmixin.owlcollections.TList"><span class="pre">TList</span></a><span class="p"><span class="pre">[</span></span><span class="pre">T</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_json_to_list"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_json_to_list" title="Permalink to this definition">¶</a></dt>
<dd><p>From json string to list of instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> – Json string</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>List of instance</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="p">:</span> <span class="n">TList</span><span class="p">[</span><span class="n">Human</span><span class="p">]</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_json_to_list</span><span class="p">(</span><span class="s1">'''[</span>
<span class="gp">... </span><span class="s1"> {"id": 1, "name": "Tom", "favorites": [{"name": "Apple"}]},</span>
<span class="gp">... </span><span class="s1"> {"id": 2, "name": "John", "favorites": [{"name": "Orange"}]}</span>
<span class="gp">... </span><span class="s1">]'''</span><span class="p">)</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">name</span>
<span class="go">'Tom'</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">name</span>
<span class="go">'John'</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_json_to_iterator">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_json_to_iterator</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">data</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="owlcollections.html#owlmixin.owlcollections.TIterator" title="owlmixin.owlcollections.TIterator"><span class="pre">TIterator</span></a><span class="p"><span class="pre">[</span></span><span class="pre">T</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_json_to_iterator"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_json_to_iterator" title="Permalink to this definition">¶</a></dt>
<dd><p>From json string to iterable instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> – Json string</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Iterable instance</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="p">:</span> <span class="n">TIterator</span><span class="p">[</span><span class="n">Human</span><span class="p">]</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_json_to_iterator</span><span class="p">(</span><span class="s1">'''[</span>
<span class="gp">... </span><span class="s1"> {"id": 1, "name": "Tom", "favorites": [{"name": "Apple"}]},</span>
<span class="gp">... </span><span class="s1"> {"id": 2, "name": "John", "favorites": [{"name": "Orange"}]}</span>
<span class="gp">... </span><span class="s1">]'''</span><span class="p">)</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="o">.</span><span class="n">next_at</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span><span class="o">.</span><span class="n">get</span><span class="p">()</span><span class="o">.</span><span class="n">name</span>
<span class="go">'John'</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="o">.</span><span class="n">next_at</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span><span class="o">.</span><span class="n">is_none</span><span class="p">()</span>
<span class="go">True</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_jsonf_to_list">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_jsonf_to_list</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">fpath</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">encoding</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'utf8'</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="owlcollections.html#owlmixin.owlcollections.TList" title="owlmixin.owlcollections.TList"><span class="pre">TList</span></a><span class="p"><span class="pre">[</span></span><span class="pre">T</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_jsonf_to_list"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_jsonf_to_list" title="Permalink to this definition">¶</a></dt>
<dd><p>From json file path to list of instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>fpath</strong> – Json file path</p></li>
<li><p><strong>encoding</strong> – Json file encoding</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>List of instance</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_jsonf_to_iterator">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_jsonf_to_iterator</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">fpath</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">encoding</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'utf8'</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="owlcollections.html#owlmixin.owlcollections.TIterator" title="owlmixin.owlcollections.TIterator"><span class="pre">TIterator</span></a><span class="p"><span class="pre">[</span></span><span class="pre">T</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_jsonf_to_iterator"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_jsonf_to_iterator" title="Permalink to this definition">¶</a></dt>
<dd><p>From json file path to iterable instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>fpath</strong> – Json file path</p></li>
<li><p><strong>encoding</strong> – Json file encoding</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Iterable instance</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_yaml">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_yaml</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">data</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">T</span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_yaml"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_yaml" title="Permalink to this definition">¶</a></dt>
<dd><p>From yaml string to instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> – Yaml string</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Instance</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span>
<span class="gp">>>> </span><span class="n">human</span><span class="p">:</span> <span class="n">Human</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_yaml</span><span class="p">(</span><span class="s1">'''</span>
<span class="gp">... </span><span class="s1">id: 1</span>
<span class="gp">... </span><span class="s1">name: Tom</span>
<span class="gp">... </span><span class="s1">favorites:</span>
<span class="gp">... </span><span class="s1"> - name: Apple</span>
<span class="gp">... </span><span class="s1"> names_by_lang:</span>
<span class="gp">... </span><span class="s1"> en: Apple</span>
<span class="gp">... </span><span class="s1"> de: Apfel</span>
<span class="gp">... </span><span class="s1"> - name: Orange</span>
<span class="gp">... </span><span class="s1">'''</span><span class="p">)</span>
<span class="gp">>>> </span><span class="n">human</span><span class="o">.</span><span class="n">id</span>
<span class="go">1</span>
<span class="gp">>>> </span><span class="n">human</span><span class="o">.</span><span class="n">name</span>
<span class="go">'Tom'</span>
<span class="gp">>>> </span><span class="n">human</span><span class="o">.</span><span class="n">favorites</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">names_by_lang</span><span class="o">.</span><span class="n">get</span><span class="p">()[</span><span class="s2">"de"</span><span class="p">]</span>
<span class="go">'Apfel'</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_yamlf">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_yamlf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">fpath</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">encoding</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'utf8'</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">T</span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_yamlf"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_yamlf" title="Permalink to this definition">¶</a></dt>
<dd><p>From yaml file path to instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>fpath</strong> – Yaml file path</p></li>
<li><p><strong>encoding</strong> – Yaml file encoding</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Instance</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_yaml_to_list">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_yaml_to_list</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">data</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="owlcollections.html#owlmixin.owlcollections.TList" title="owlmixin.owlcollections.TList"><span class="pre">TList</span></a><span class="p"><span class="pre">[</span></span><span class="pre">T</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_yaml_to_list"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_yaml_to_list" title="Permalink to this definition">¶</a></dt>
<dd><p>From yaml string to list of instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> – Yaml string</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>List of instance</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="p">:</span> <span class="n">TList</span><span class="p">[</span><span class="n">Human</span><span class="p">]</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_yaml_to_list</span><span class="p">(</span><span class="s1">'''</span>
<span class="gp">... </span><span class="s1">- id: 1</span>
<span class="gp">... </span><span class="s1"> name: Tom</span>
<span class="gp">... </span><span class="s1"> favorites:</span>
<span class="gp">... </span><span class="s1"> - name: Apple</span>
<span class="gp">... </span><span class="s1">- id: 2</span>
<span class="gp">... </span><span class="s1"> name: John</span>
<span class="gp">... </span><span class="s1"> favorites:</span>
<span class="gp">... </span><span class="s1"> - name: Orange</span>
<span class="gp">... </span><span class="s1">'''</span><span class="p">)</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">name</span>
<span class="go">'Tom'</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">name</span>
<span class="go">'John'</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">favorites</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">name</span>
<span class="go">'Apple'</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_yaml_to_iterator">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_yaml_to_iterator</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">data</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="owlcollections.html#owlmixin.owlcollections.TIterator" title="owlmixin.owlcollections.TIterator"><span class="pre">TIterator</span></a><span class="p"><span class="pre">[</span></span><span class="pre">T</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_yaml_to_iterator"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_yaml_to_iterator" title="Permalink to this definition">¶</a></dt>
<dd><p>From yaml string to iterable instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> – Yaml string</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Iterable instance</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="p">:</span> <span class="n">TIterator</span><span class="p">[</span><span class="n">Human</span><span class="p">]</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_yaml_to_iterator</span><span class="p">(</span><span class="s1">'''</span>
<span class="gp">... </span><span class="s1">- id: 1</span>
<span class="gp">... </span><span class="s1"> name: Tom</span>
<span class="gp">... </span><span class="s1"> favorites:</span>
<span class="gp">... </span><span class="s1"> - name: Apple</span>
<span class="gp">... </span><span class="s1">- id: 2</span>
<span class="gp">... </span><span class="s1"> name: John</span>
<span class="gp">... </span><span class="s1"> favorites:</span>
<span class="gp">... </span><span class="s1"> - name: Orange</span>
<span class="gp">... </span><span class="s1">'''</span><span class="p">)</span>
<span class="gp">>>> </span><span class="n">human1</span> <span class="o">=</span> <span class="n">humans</span><span class="o">.</span><span class="n">next_at</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span><span class="o">.</span><span class="n">get</span><span class="p">()</span>
<span class="gp">>>> </span><span class="n">human1</span><span class="o">.</span><span class="n">name</span>
<span class="go">'John'</span>
<span class="gp">>>> </span><span class="n">humans</span><span class="o">.</span><span class="n">next_at</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span><span class="o">.</span><span class="n">is_none</span><span class="p">()</span>
<span class="go">True</span>
<span class="gp">>>> </span><span class="n">human1</span><span class="o">.</span><span class="n">favorites</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">name</span>
<span class="go">'Orange'</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_yamlf_to_list">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_yamlf_to_list</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">fpath</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">encoding</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'utf8'</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="owlcollections.html#owlmixin.owlcollections.TList" title="owlmixin.owlcollections.TList"><span class="pre">TList</span></a><span class="p"><span class="pre">[</span></span><span class="pre">T</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_yamlf_to_list"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_yamlf_to_list" title="Permalink to this definition">¶</a></dt>
<dd><p>From yaml file path to list of instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>fpath</strong> – Yaml file path</p></li>
<li><p><strong>encoding</strong> – Yaml file encoding</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>List of instance</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_yamlf_to_iterator">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_yamlf_to_iterator</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">fpath</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">encoding</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'utf8'</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="owlcollections.html#owlmixin.owlcollections.TIterator" title="owlmixin.owlcollections.TIterator"><span class="pre">TIterator</span></a><span class="p"><span class="pre">[</span></span><span class="pre">T</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_yamlf_to_iterator"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_yamlf_to_iterator" title="Permalink to this definition">¶</a></dt>
<dd><p>From yaml file path to iterable instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>fpath</strong> – Yaml file path</p></li>
<li><p><strong>encoding</strong> – Yaml file encoding</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Iterable instance</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_csvf_to_list">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_csvf_to_list</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">fpath</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">fieldnames</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Optional</span><span class="p"><span class="pre">[</span></span><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">encoding</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'utf8'</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="owlcollections.html#owlmixin.owlcollections.TList" title="owlmixin.owlcollections.TList"><span class="pre">TList</span></a><span class="p"><span class="pre">[</span></span><span class="pre">T</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_csvf_to_list"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_csvf_to_list" title="Permalink to this definition">¶</a></dt>
<dd><p>From csv file path to list of instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>fpath</strong> – Csv file path</p></li>
<li><p><strong>fieldnames</strong> – Specify csv header names if not included in the file</p></li>
<li><p><strong>encoding</strong> – Csv file encoding</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>List of Instance</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_csvf_to_iterator">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_csvf_to_iterator</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">fpath</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">fieldnames</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Optional</span><span class="p"><span class="pre">[</span></span><span class="pre">Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">encoding</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'utf8'</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="owlcollections.html#owlmixin.owlcollections.TIterator" title="owlmixin.owlcollections.TIterator"><span class="pre">TIterator</span></a><span class="p"><span class="pre">[</span></span><span class="pre">T</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_csvf_to_iterator"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_csvf_to_iterator" title="Permalink to this definition">¶</a></dt>
<dd><p>From csv file path to iterable instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>fpath</strong> – Csv file path</p></li>
<li><p><strong>fieldnames</strong> – Specify csv header names if not included in the file</p></li>
<li><p><strong>encoding</strong> – Csv file encoding</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Iterable Instance</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.from_json_url">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_json_url</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">url</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_snake_case</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_cast</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">restrict</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">T</span></span></span><a class="reference internal" href="../_modules/owlmixin.html#OwlMixin.from_json_url"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#owlmixin.OwlMixin.from_json_url" title="Permalink to this definition">¶</a></dt>
<dd><p>From url which returns json to instance</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>url</strong> – Url which returns json</p></li>
<li><p><strong>force_snake_case</strong> – Keys are transformed to snake case in order to compliant PEP8 if True</p></li>
<li><p><strong>force_cast</strong> – Cast forcibly if True</p></li>
<li><p><strong>restrict</strong> – Prohibit extra parameters if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Instance</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.str_format">
<span class="sig-name descname"><span class="pre">str_format</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">format_</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#owlmixin.OwlMixin.str_format" title="Permalink to this definition">¶</a></dt>
<dd><p>From instance to str with formatting</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>format</strong> – format string</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>str</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span><span class="p">,</span> <span class="n">Food</span>
<span class="gp">>>> </span><span class="n">human_dict</span> <span class="o">=</span> <span class="p">{</span>
<span class="gp">... </span> <span class="s2">"id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Tom"</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"favorites"</span><span class="p">:</span> <span class="p">[</span>
<span class="gp">... </span> <span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">,</span> <span class="s2">"names_by_lang"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"en"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">}}</span>
<span class="gp">... </span> <span class="p">]</span>
<span class="gp">... </span><span class="p">}</span>
<span class="gp">>>> </span><span class="n">Human</span><span class="o">.</span><span class="n">from_dict</span><span class="p">(</span><span class="n">human_dict</span><span class="p">)</span><span class="o">.</span><span class="n">str_format</span><span class="p">(</span><span class="s1">'</span><span class="si">{id}</span><span class="s1">: </span><span class="si">{name}</span><span class="s1">'</span><span class="p">)</span>
<span class="go">'1: Tom'</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.to_dict">
<span class="sig-name descname"><span class="pre">to_dict</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_none</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_value</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_empty</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">dict</span></span></span><a class="headerlink" href="#owlmixin.OwlMixin.to_dict" title="Permalink to this definition">¶</a></dt>
<dd><p>From instance to dict</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>ignore_none</strong> – Properties which is None are excluded if True</p></li>
<li><p><strong>force_value</strong> – Transform to value using to_value (default: str()) of ValueTransformer which inherited if True</p></li>
<li><p><strong>ignore_empty</strong> – Properties which is empty are excluded if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Dict</p>
</dd>
</dl>
<dl>
<dt>Usage:</dt><dd><div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span><span class="p">,</span> <span class="n">Food</span>
<span class="gp">>>> </span><span class="n">human_dict</span> <span class="o">=</span> <span class="p">{</span>
<span class="gp">... </span> <span class="s2">"id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Tom"</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"favorites"</span><span class="p">:</span> <span class="p">[</span>
<span class="gp">... </span> <span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">,</span> <span class="s2">"names_by_lang"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"en"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">}}</span>
<span class="gp">... </span> <span class="p">]</span>
<span class="gp">... </span><span class="p">}</span>
<span class="gp">>>> </span><span class="n">Human</span><span class="o">.</span><span class="n">from_dict</span><span class="p">(</span><span class="n">human_dict</span><span class="p">)</span><span class="o">.</span><span class="n">to_dict</span><span class="p">()</span> <span class="o">==</span> <span class="n">human_dict</span>
<span class="go">True</span>
</pre></div>
</div>
</dd>
</dl>
<p>You can include None properties by specifying False for ignore_none</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">f</span> <span class="o">=</span> <span class="n">Food</span><span class="o">.</span><span class="n">from_dict</span><span class="p">({</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">})</span><span class="o">.</span><span class="n">to_dict</span><span class="p">(</span><span class="n">ignore_none</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
<span class="gp">>>> </span><span class="n">f</span><span class="p">[</span><span class="s2">"name"</span><span class="p">]</span>
<span class="go">'Apple'</span>
<span class="gp">>>> </span><span class="s2">"names_by_lang"</span> <span class="ow">in</span> <span class="n">f</span>
<span class="go">True</span>
<span class="gp">>>> </span><span class="n">f</span><span class="p">[</span><span class="s2">"names_by_lang"</span><span class="p">]</span>
</pre></div>
</div>
<p>As default</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">f</span> <span class="o">=</span> <span class="n">Food</span><span class="o">.</span><span class="n">from_dict</span><span class="p">({</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">})</span><span class="o">.</span><span class="n">to_dict</span><span class="p">()</span>
<span class="gp">>>> </span><span class="n">f</span><span class="p">[</span><span class="s2">"name"</span><span class="p">]</span>
<span class="go">'Apple'</span>
<span class="gp">>>> </span><span class="s2">"names_by_lang"</span> <span class="ow">in</span> <span class="n">f</span>
<span class="go">False</span>
</pre></div>
</div>
<p>You can exclude Empty properties by specifying True for ignore_empty</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">f</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_dict</span><span class="p">({</span><span class="s2">"id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span> <span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Ichiro"</span><span class="p">,</span> <span class="s2">"favorites"</span><span class="p">:</span> <span class="p">[]})</span><span class="o">.</span><span class="n">to_dict</span><span class="p">()</span>
<span class="gp">>>> </span><span class="n">f</span><span class="p">[</span><span class="s2">"favorites"</span><span class="p">]</span>
<span class="go">[]</span>
<span class="gp">>>> </span><span class="n">f</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_dict</span><span class="p">({</span><span class="s2">"id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span> <span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Ichiro"</span><span class="p">,</span> <span class="s2">"favorites"</span><span class="p">:</span> <span class="p">[]})</span><span class="o">.</span><span class="n">to_dict</span><span class="p">(</span><span class="n">ignore_empty</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
<span class="gp">>>> </span><span class="s2">"favorites"</span> <span class="ow">in</span> <span class="n">f</span>
<span class="go">False</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.to_json">
<span class="sig-name descname"><span class="pre">to_json</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">indent</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_none</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_empty</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#owlmixin.OwlMixin.to_json" title="Permalink to this definition">¶</a></dt>
<dd><p>From instance to json string</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>indent</strong> – Number of indentation</p></li>
<li><p><strong>ignore_none</strong> – Properties which is None are excluded if True</p></li>
<li><p><strong>ignore_empty</strong> – Properties which is empty are excluded if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Json string</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span>
<span class="gp">>>> </span><span class="n">human</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_dict</span><span class="p">({</span>
<span class="gp">... </span> <span class="s2">"id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Tom"</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"favorites"</span><span class="p">:</span> <span class="p">[</span>
<span class="gp">... </span> <span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">,</span> <span class="s2">"names_by_lang"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"en"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">,</span> <span class="s2">"de"</span><span class="p">:</span> <span class="s2">"Apfel"</span><span class="p">}},</span>
<span class="gp">... </span> <span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Orange"</span><span class="p">}</span>
<span class="gp">... </span> <span class="p">]</span>
<span class="gp">... </span><span class="p">})</span>
<span class="gp">>>> </span><span class="n">human</span><span class="o">.</span><span class="n">to_json</span><span class="p">()</span>
<span class="go">'{"favorites": [{"name": "Apple","names_by_lang": {"de": "Apfel","en": "Apple"}},{"name": "Orange"}],"id": 1,"name": "Tom"}'</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.to_jsonf">
<span class="sig-name descname"><span class="pre">to_jsonf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">fpath</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">encoding</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'utf8'</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">indent</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_none</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_empty</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#owlmixin.OwlMixin.to_jsonf" title="Permalink to this definition">¶</a></dt>
<dd><p>From instance to json file</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>fpath</strong> – Json file path</p></li>
<li><p><strong>encoding</strong> – Json file encoding</p></li>
<li><p><strong>indent</strong> – Number of indentation</p></li>
<li><p><strong>ignore_none</strong> – Properties which is None are excluded if True</p></li>
<li><p><strong>ignore_empty</strong> – Properties which is empty are excluded if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Json file path</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.to_pretty_json">
<span class="sig-name descname"><span class="pre">to_pretty_json</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_none</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_empty</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#owlmixin.OwlMixin.to_pretty_json" title="Permalink to this definition">¶</a></dt>
<dd><p>From instance to pretty json string</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>ignore_none</strong> – Properties which is None are excluded if True</p></li>
<li><p><strong>ignore_empty</strong> – Properties which is empty are excluded if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Json string</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span>
<span class="gp">>>> </span><span class="n">human</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_dict</span><span class="p">({</span>
<span class="gp">... </span> <span class="s2">"id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Tom"</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"favorites"</span><span class="p">:</span> <span class="p">[</span>
<span class="gp">... </span> <span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">,</span> <span class="s2">"names_by_lang"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"en"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">,</span> <span class="s2">"de"</span><span class="p">:</span> <span class="s2">"Apfel"</span><span class="p">}},</span>
<span class="gp">... </span> <span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Orange"</span><span class="p">}</span>
<span class="gp">... </span> <span class="p">]</span>
<span class="gp">... </span><span class="p">})</span>
<span class="gp">>>> </span><span class="nb">print</span><span class="p">(</span><span class="n">human</span><span class="o">.</span><span class="n">to_pretty_json</span><span class="p">())</span>
<span class="go">{</span>
<span class="go"> "favorites": [</span>
<span class="go"> {</span>
<span class="go"> "name": "Apple",</span>
<span class="go"> "names_by_lang": {</span>
<span class="go"> "de": "Apfel",</span>
<span class="go"> "en": "Apple"</span>
<span class="go"> }</span>
<span class="go"> },</span>
<span class="go"> {</span>
<span class="go"> "name": "Orange"</span>
<span class="go"> }</span>
<span class="go"> ],</span>
<span class="go"> "id": 1,</span>
<span class="go"> "name": "Tom"</span>
<span class="go">}</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.to_yaml">
<span class="sig-name descname"><span class="pre">to_yaml</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_none</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_empty</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#owlmixin.OwlMixin.to_yaml" title="Permalink to this definition">¶</a></dt>
<dd><p>From instance to yaml string</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>ignore_none</strong> – Properties which is None are excluded if True</p></li>
<li><p><strong>ignore_empty</strong> – Properties which is empty are excluded if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Yaml string</p>
</dd>
</dl>
<p>Usage:</p>
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">owlmixin.samples</span> <span class="kn">import</span> <span class="n">Human</span>
<span class="gp">>>> </span><span class="n">human</span> <span class="o">=</span> <span class="n">Human</span><span class="o">.</span><span class="n">from_dict</span><span class="p">({</span>
<span class="gp">... </span> <span class="s2">"id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Tom"</span><span class="p">,</span>
<span class="gp">... </span> <span class="s2">"favorites"</span><span class="p">:</span> <span class="p">[</span>
<span class="gp">... </span> <span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">,</span> <span class="s2">"names_by_lang"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"en"</span><span class="p">:</span> <span class="s2">"Apple"</span><span class="p">,</span> <span class="s2">"de"</span><span class="p">:</span> <span class="s2">"Apfel"</span><span class="p">}},</span>
<span class="gp">... </span> <span class="p">{</span><span class="s2">"name"</span><span class="p">:</span> <span class="s2">"Orange"</span><span class="p">}</span>
<span class="gp">... </span> <span class="p">]</span>
<span class="gp">... </span><span class="p">})</span>
<span class="gp">>>> </span><span class="nb">print</span><span class="p">(</span><span class="n">human</span><span class="o">.</span><span class="n">to_yaml</span><span class="p">())</span>
<span class="go">favorites:</span>
<span class="go"> - name: Apple</span>
<span class="go"> names_by_lang:</span>
<span class="go"> de: Apfel</span>
<span class="go"> en: Apple</span>
<span class="go"> - name: Orange</span>
<span class="go">id: 1</span>
<span class="go">name: Tom</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="owlmixin.OwlMixin.to_yamlf">
<span class="sig-name descname"><span class="pre">to_yamlf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">fpath</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">encoding</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'utf8'</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_none</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ignore_empty</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#owlmixin.OwlMixin.to_yamlf" title="Permalink to this definition">¶</a></dt>
<dd><p>From instance to yaml file</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>fpath</strong> – Yaml file path</p></li>
<li><p><strong>encoding</strong> – Yaml file encoding</p></li>
<li><p><strong>ignore_none</strong> – Properties which is None are excluded if True</p></li>
<li><p><strong>ignore_empty</strong> – Properties which is empty are excluded if True</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Yaml file path</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
</section>
<div class="clearer"></div>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<div>
<h3><a href="../index.html">Table of Contents</a></h3>
<ul>
<li><a class="reference internal" href="#">OwlMixin</a><ul>
<li><a class="reference internal" href="#owlmixin.OwlMixin"><code class="docutils literal notranslate"><span class="pre">OwlMixin</span></code></a><ul>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_dict"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_dict()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_optional_dict"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_optional_dict()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_dicts"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_dicts()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_iterable_dicts"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_iterable_dicts()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_optional_dicts"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_optional_dicts()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_optional_iterable_dicts"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_optional_iterable_dicts()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_dicts_by_key"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_dicts_by_key()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_optional_dicts_by_key"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_optional_dicts_by_key()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_json"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_json()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_jsonf"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_jsonf()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_json_to_list"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_json_to_list()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_json_to_iterator"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_json_to_iterator()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_jsonf_to_list"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_jsonf_to_list()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_jsonf_to_iterator"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_jsonf_to_iterator()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_yaml"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_yaml()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_yamlf"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_yamlf()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_yaml_to_list"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_yaml_to_list()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_yaml_to_iterator"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_yaml_to_iterator()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_yamlf_to_list"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_yamlf_to_list()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_yamlf_to_iterator"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_yamlf_to_iterator()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_csvf_to_list"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_csvf_to_list()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_csvf_to_iterator"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_csvf_to_iterator()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.from_json_url"><code class="docutils literal notranslate"><span class="pre">OwlMixin.from_json_url()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.str_format"><code class="docutils literal notranslate"><span class="pre">OwlMixin.str_format()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.to_dict"><code class="docutils literal notranslate"><span class="pre">OwlMixin.to_dict()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.to_json"><code class="docutils literal notranslate"><span class="pre">OwlMixin.to_json()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.to_jsonf"><code class="docutils literal notranslate"><span class="pre">OwlMixin.to_jsonf()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.to_pretty_json"><code class="docutils literal notranslate"><span class="pre">OwlMixin.to_pretty_json()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.to_yaml"><code class="docutils literal notranslate"><span class="pre">OwlMixin.to_yaml()</span></code></a></li>
<li><a class="reference internal" href="#owlmixin.OwlMixin.to_yamlf"><code class="docutils literal notranslate"><span class="pre">OwlMixin.to_yamlf()</span></code></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div>
<h4>Previous topic</h4>
<p class="topless"><a href="../index.html"
title="previous chapter">Owlmixin API Reference</a></p>
</div>
<div>
<h4>Next topic</h4>
<p class="topless"><a href="owlcollections.html"
title="next chapter">Collections</a></p>
</div>
<div role="note" aria-label="source link">
<h3>This Page</h3>
<ul class="this-page-menu">
<li><a href="../_sources/api/owlmixin.rst.txt"
rel="nofollow">Show Source</a></li>
</ul>
</div>
<div id="searchbox" style="display: none" role="search">
<h3 id="searchlabel">Quick search</h3>
<div class="searchformwrapper">
<form class="search" action="../search.html" method="get">
<input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
<input type="submit" value="Go" />
</form>
</div>
</div>
<script>document.getElementById('searchbox').style.display = "block"</script>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="../genindex.html" title="General Index"
>index</a></li>
<li class="right" >
<a href="owlcollections.html" title="Collections"
>next</a> |</li>
<li class="right" >
<a href="../index.html" title="Owlmixin API Reference"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="../index.html">owlmixin documentation</a> »</li>
<li class="nav-item nav-item-this"><a href="">OwlMixin</a></li>
</ul>
</div>
<div class="footer" role="contentinfo">
© Copyright 2019, tadashi-aikawa.
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 5.3.0.
</div>
</body>
</html>