pyjallib 0.1.2__tar.gz → 0.1.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. {pyjallib-0.1.2 → pyjallib-0.1.4}/PKG-INFO +2 -1
  2. pyjallib-0.1.4/docs/index.html +115 -0
  3. pyjallib-0.1.4/docs/max.html +66 -0
  4. pyjallib-0.1.4/docs/namePart.html +1880 -0
  5. pyjallib-0.1.4/docs/nameToPath.html +363 -0
  6. pyjallib-0.1.4/docs/naming.html +2605 -0
  7. pyjallib-0.1.4/docs/namingConfig.html +2095 -0
  8. pyjallib-0.1.4/docs/perforce.html +1779 -0
  9. pyjallib-0.1.4/docs/pymxs.html +89 -0
  10. pyjallib-0.1.4/docs/reloadModules.html +111 -0
  11. {pyjallib-0.1.2 → pyjallib-0.1.4}/pyproject.toml +4 -2
  12. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/__init__.py +16 -16
  13. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/layer.py +6 -3
  14. pyjallib-0.1.4/src/pyjallib/py.typed +0 -0
  15. pyjallib-0.1.4/uv.lock +46 -0
  16. pyjallib-0.1.2/uv.lock +0 -8
  17. {pyjallib-0.1.2 → pyjallib-0.1.4}/.gitignore +0 -0
  18. {pyjallib-0.1.2 → pyjallib-0.1.4}/.python-version +0 -0
  19. {pyjallib-0.1.2 → pyjallib-0.1.4}/README.md +0 -0
  20. /pyjallib-0.1.2/src/pyjallib/py.typed → /pyjallib-0.1.4/docs/.nojekyll +0 -0
  21. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/ConfigFiles/namingConfig.json +0 -0
  22. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/ConfigFiles/3DSMaxNamingConfig.json +0 -0
  23. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/__init__.py +0 -0
  24. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/align.py +0 -0
  25. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/anim.py +0 -0
  26. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/bip.py +0 -0
  27. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/bone.py +0 -0
  28. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/constraint.py +0 -0
  29. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/header.py +0 -0
  30. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/helper.py +0 -0
  31. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/link.py +0 -0
  32. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/macro/jal_macro_align.py +0 -0
  33. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/macro/jal_macro_bone.py +0 -0
  34. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/macro/jal_macro_constraint.py +0 -0
  35. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/macro/jal_macro_helper.py +0 -0
  36. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/macro/jal_macro_link.py +0 -0
  37. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/macro/jal_macro_select.py +0 -0
  38. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/mirror.py +0 -0
  39. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/name.py +0 -0
  40. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/select.py +0 -0
  41. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/skin.py +0 -0
  42. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/max/twistBone.py +0 -0
  43. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/namePart.py +0 -0
  44. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/nameToPath.py +0 -0
  45. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/naming.py +0 -0
  46. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/namingConfig.py +0 -0
  47. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/perforce.py +0 -0
  48. {pyjallib-0.1.2 → pyjallib-0.1.4}/src/pyjallib/reloadModules.py +0 -0
  49. {pyjallib-0.1.2 → pyjallib-0.1.4}/tests/globalVarTest.py +0 -0
  50. {pyjallib-0.1.2 → pyjallib-0.1.4}/tests/moduleImportTest.py +0 -0
@@ -1,9 +1,10 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyjallib
3
- Version: 0.1.2
3
+ Version: 0.1.4
4
4
  Summary: A utility library for 3D game character development pipelines.
5
5
  Author-email: Dongseok Kim <jalnagakds@gmail.com>
6
6
  Requires-Python: >=3.10
7
+ Requires-Dist: p4python>=2024.2.2682690
7
8
  Description-Content-Type: text/markdown
8
9
 
9
10
  # pyjallib
@@ -0,0 +1,115 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1">
6
+ <meta name="generator" content="pdoc3 0.11.6">
7
+ <title>pyjallib API documentation</title>
8
+ <meta name="description" content="pyjallib Package
9
+ Python library for game character development pipeline.">
10
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/10up-sanitize.css/13.0.0/sanitize.min.css" integrity="sha512-y1dtMcuvtTMJc1yPgEqF0ZjQbhnc/bFhyvIyVNb9Zk5mIGtqVaAB1Ttl28su8AvFMOY0EwRbAe+HCLqj6W7/KA==" crossorigin>
11
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/10up-sanitize.css/13.0.0/typography.min.css" integrity="sha512-Y1DYSb995BAfxobCkKepB1BqJJTPrOp3zPL74AWFugHHmmdcvO+C48WLrUOlhGMc0QG7AE3f7gmvvcrmX2fDoA==" crossorigin>
12
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/default.min.css" crossorigin>
13
+ <style>:root{--highlight-color:#fe9}.flex{display:flex !important}body{line-height:1.5em}#content{padding:20px}#sidebar{padding:1.5em;overflow:hidden}#sidebar > *:last-child{margin-bottom:2cm}.http-server-breadcrumbs{font-size:130%;margin:0 0 15px 0}#footer{font-size:.75em;padding:5px 30px;border-top:1px solid #ddd;text-align:right}#footer p{margin:0 0 0 1em;display:inline-block}#footer p:last-child{margin-right:30px}h1,h2,h3,h4,h5{font-weight:300}h1{font-size:2.5em;line-height:1.1em}h2{font-size:1.75em;margin:2em 0 .50em 0}h3{font-size:1.4em;margin:1.6em 0 .7em 0}h4{margin:0;font-size:105%}h1:target,h2:target,h3:target,h4:target,h5:target,h6:target{background:var(--highlight-color);padding:.2em 0}a{color:#058;text-decoration:none;transition:color .2s ease-in-out}a:visited{color:#503}a:hover{color:#b62}.title code{font-weight:bold}h2[id^="header-"]{margin-top:2em}.ident{color:#900;font-weight:bold}pre code{font-size:.8em;line-height:1.4em;padding:1em;display:block}code{background:#f3f3f3;font-family:"DejaVu Sans Mono",monospace;padding:1px 4px;overflow-wrap:break-word}h1 code{background:transparent}pre{border-top:1px solid #ccc;border-bottom:1px solid #ccc;margin:1em 0}#http-server-module-list{display:flex;flex-flow:column}#http-server-module-list div{display:flex}#http-server-module-list dt{min-width:10%}#http-server-module-list p{margin-top:0}.toc ul,#index{list-style-type:none;margin:0;padding:0}#index code{background:transparent}#index h3{border-bottom:1px solid #ddd}#index ul{padding:0}#index h4{margin-top:.6em;font-weight:bold}@media (min-width:200ex){#index .two-column{column-count:2}}@media (min-width:300ex){#index .two-column{column-count:3}}dl{margin-bottom:2em}dl dl:last-child{margin-bottom:4em}dd{margin:0 0 1em 3em}#header-classes + dl > dd{margin-bottom:3em}dd dd{margin-left:2em}dd p{margin:10px 0}.name{background:#eee;font-size:.85em;padding:5px 10px;display:inline-block;min-width:40%}.name:hover{background:#e0e0e0}dt:target .name{background:var(--highlight-color)}.name > span:first-child{white-space:nowrap}.name.class > span:nth-child(2){margin-left:.4em}.inherited{color:#999;border-left:5px solid #eee;padding-left:1em}.inheritance em{font-style:normal;font-weight:bold}.desc h2{font-weight:400;font-size:1.25em}.desc h3{font-size:1em}.desc dt code{background:inherit}.source > summary,.git-link-div{color:#666;text-align:right;font-weight:400;font-size:.8em;text-transform:uppercase}.source summary > *{white-space:nowrap;cursor:pointer}.git-link{color:inherit;margin-left:1em}.source pre{max-height:500px;overflow:auto;margin:0}.source pre code{font-size:12px;overflow:visible;min-width:max-content}.hlist{list-style:none}.hlist li{display:inline}.hlist li:after{content:',\2002'}.hlist li:last-child:after{content:none}.hlist .hlist{display:inline;padding-left:1em}img{max-width:100%}td{padding:0 .5em}.admonition{padding:.1em 1em;margin:1em 0}.admonition-title{font-weight:bold}.admonition.note,.admonition.info,.admonition.important{background:#aef}.admonition.todo,.admonition.versionadded,.admonition.tip,.admonition.hint{background:#dfd}.admonition.warning,.admonition.versionchanged,.admonition.deprecated{background:#fd4}.admonition.error,.admonition.danger,.admonition.caution{background:lightpink}</style>
14
+ <style media="screen and (min-width: 700px)">@media screen and (min-width:700px){#sidebar{width:30%;height:100vh;overflow:auto;position:sticky;top:0}#content{width:70%;max-width:100ch;padding:3em 4em;border-left:1px solid #ddd}pre code{font-size:1em}.name{font-size:1em}main{display:flex;flex-direction:row-reverse;justify-content:flex-end}.toc ul ul,#index ul ul{padding-left:1em}.toc > ul > li{margin-top:.5em}}</style>
15
+ <style media="print">@media print{#sidebar h1{page-break-before:always}.source{display:none}}@media print{*{background:transparent !important;color:#000 !important;box-shadow:none !important;text-shadow:none !important}a[href]:after{content:" (" attr(href) ")";font-size:90%}a[href][title]:after{content:none}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}@page{margin:0.5cm}p,h2,h3{orphans:3;widows:3}h1,h2,h3,h4,h5,h6{page-break-after:avoid}}</style>
16
+ <script defer src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js" integrity="sha512-D9gUyxqja7hBtkWpPWGt9wfbfaMGVt9gnyCvYa+jojwwPHLCzUm5i8rpk7vD7wNee9bA35eYIjobYPaQuKS1MQ==" crossorigin></script>
17
+ <script>window.addEventListener('DOMContentLoaded', () => {
18
+ hljs.configure({languages: ['bash', 'css', 'diff', 'graphql', 'ini', 'javascript', 'json', 'plaintext', 'python', 'python-repl', 'rust', 'shell', 'sql', 'typescript', 'xml', 'yaml']});
19
+ hljs.highlightAll();
20
+ /* Collapse source docstrings */
21
+ setTimeout(() => {
22
+ [...document.querySelectorAll('.hljs.language-python > .hljs-string')]
23
+ .filter(el => el.innerHTML.length > 200 && ['"""', "'''"].includes(el.innerHTML.substring(0, 3)))
24
+ .forEach(el => {
25
+ let d = document.createElement('details');
26
+ d.classList.add('hljs-string');
27
+ d.innerHTML = '<summary>"""</summary>' + el.innerHTML.substring(3);
28
+ el.replaceWith(d);
29
+ });
30
+ }, 100);
31
+ })</script>
32
+ </head>
33
+ <body>
34
+ <main>
35
+ <article id="content">
36
+ <header>
37
+ <h1 class="title">Package <code>pyjallib</code></h1>
38
+ </header>
39
+ <section id="section-intro">
40
+ <p>pyjallib Package
41
+ Python library for game character development pipeline.</p>
42
+ </section>
43
+ <section>
44
+ <h2 class="section-title" id="header-submodules">Sub-modules</h2>
45
+ <dl>
46
+ <dt><code class="name"><a title="pyjallib.max" href="max.html">pyjallib.max</a></code></dt>
47
+ <dd>
48
+ <div class="desc"></div>
49
+ </dd>
50
+ <dt><code class="name"><a title="pyjallib.namePart" href="namePart.html">pyjallib.namePart</a></code></dt>
51
+ <dd>
52
+ <div class="desc"><p>namePart 모듈 - 이름의 각 부분을 표현하는 기능 제공
53
+ 이름 부분의 사전 정의된 값과 가중치 매핑을 관리하는 클래스 구현</p></div>
54
+ </dd>
55
+ <dt><code class="name"><a title="pyjallib.nameToPath" href="nameToPath.html">pyjallib.nameToPath</a></code></dt>
56
+ <dd>
57
+ <div class="desc"><p>nameToPath 모듈 - 이름과 경로 변환 관련 기능
58
+ 이름 규칙에 따라 경로를 생성하거나 경로에서 이름을 추출하는 기능 제공</p></div>
59
+ </dd>
60
+ <dt><code class="name"><a title="pyjallib.naming" href="naming.html">pyjallib.naming</a></code></dt>
61
+ <dd>
62
+ <div class="desc"><p>Naming 모듈 - 이름 규칙 관리 및 적용 기능 제공
63
+ NamePart 객체를 기반으로 조직화된 이름 생성 및 분석 기능 구현</p></div>
64
+ </dd>
65
+ <dt><code class="name"><a title="pyjallib.namingConfig" href="namingConfig.html">pyjallib.namingConfig</a></code></dt>
66
+ <dd>
67
+ <div class="desc"><p>namingConfig 모듈 - Naming 클래스의 설정을 관리하는 기능 제공
68
+ NamePart 객체를 기반으로 네이밍 설정을 저장하고 불러오는 기능 구현</p></div>
69
+ </dd>
70
+ <dt><code class="name"><a title="pyjallib.perforce" href="perforce.html">pyjallib.perforce</a></code></dt>
71
+ <dd>
72
+ <div class="desc"></div>
73
+ </dd>
74
+ <dt><code class="name"><a title="pyjallib.pymxs" href="pymxs.html">pyjallib.pymxs</a></code></dt>
75
+ <dd>
76
+ <div class="desc"></div>
77
+ </dd>
78
+ <dt><code class="name"><a title="pyjallib.reloadModules" href="reloadModules.html">pyjallib.reloadModules</a></code></dt>
79
+ <dd>
80
+ <div class="desc"><p>pyjallib 패키지와 모든 하위 모듈을 다시 로드합니다.</p></div>
81
+ </dd>
82
+ </dl>
83
+ </section>
84
+ <section>
85
+ </section>
86
+ <section>
87
+ </section>
88
+ <section>
89
+ </section>
90
+ </article>
91
+ <nav id="sidebar">
92
+ <div class="toc">
93
+ <ul></ul>
94
+ </div>
95
+ <ul id="index">
96
+ <li><h3><a href="#header-submodules">Sub-modules</a></h3>
97
+ <ul>
98
+ <li><code><a title="pyjallib.max" href="max.html">pyjallib.max</a></code></li>
99
+ <li><code><a title="pyjallib.namePart" href="namePart.html">pyjallib.namePart</a></code></li>
100
+ <li><code><a title="pyjallib.nameToPath" href="nameToPath.html">pyjallib.nameToPath</a></code></li>
101
+ <li><code><a title="pyjallib.naming" href="naming.html">pyjallib.naming</a></code></li>
102
+ <li><code><a title="pyjallib.namingConfig" href="namingConfig.html">pyjallib.namingConfig</a></code></li>
103
+ <li><code><a title="pyjallib.perforce" href="perforce.html">pyjallib.perforce</a></code></li>
104
+ <li><code><a title="pyjallib.pymxs" href="pymxs.html">pyjallib.pymxs</a></code></li>
105
+ <li><code><a title="pyjallib.reloadModules" href="reloadModules.html">pyjallib.reloadModules</a></code></li>
106
+ </ul>
107
+ </li>
108
+ </ul>
109
+ </nav>
110
+ </main>
111
+ <footer id="footer">
112
+ <p>Generated by <a href="https://pdoc3.github.io/pdoc" title="pdoc: Python API documentation generator"><cite>pdoc</cite> 0.11.6</a>.</p>
113
+ </footer>
114
+ </body>
115
+ </html>
@@ -0,0 +1,66 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1">
6
+ <meta name="generator" content="pdoc3 0.11.6">
7
+ <title>pyjallib.max API documentation</title>
8
+ <meta name="description" content="">
9
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/10up-sanitize.css/13.0.0/sanitize.min.css" integrity="sha512-y1dtMcuvtTMJc1yPgEqF0ZjQbhnc/bFhyvIyVNb9Zk5mIGtqVaAB1Ttl28su8AvFMOY0EwRbAe+HCLqj6W7/KA==" crossorigin>
10
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/10up-sanitize.css/13.0.0/typography.min.css" integrity="sha512-Y1DYSb995BAfxobCkKepB1BqJJTPrOp3zPL74AWFugHHmmdcvO+C48WLrUOlhGMc0QG7AE3f7gmvvcrmX2fDoA==" crossorigin>
11
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/default.min.css" crossorigin>
12
+ <style>:root{--highlight-color:#fe9}.flex{display:flex !important}body{line-height:1.5em}#content{padding:20px}#sidebar{padding:1.5em;overflow:hidden}#sidebar > *:last-child{margin-bottom:2cm}.http-server-breadcrumbs{font-size:130%;margin:0 0 15px 0}#footer{font-size:.75em;padding:5px 30px;border-top:1px solid #ddd;text-align:right}#footer p{margin:0 0 0 1em;display:inline-block}#footer p:last-child{margin-right:30px}h1,h2,h3,h4,h5{font-weight:300}h1{font-size:2.5em;line-height:1.1em}h2{font-size:1.75em;margin:2em 0 .50em 0}h3{font-size:1.4em;margin:1.6em 0 .7em 0}h4{margin:0;font-size:105%}h1:target,h2:target,h3:target,h4:target,h5:target,h6:target{background:var(--highlight-color);padding:.2em 0}a{color:#058;text-decoration:none;transition:color .2s ease-in-out}a:visited{color:#503}a:hover{color:#b62}.title code{font-weight:bold}h2[id^="header-"]{margin-top:2em}.ident{color:#900;font-weight:bold}pre code{font-size:.8em;line-height:1.4em;padding:1em;display:block}code{background:#f3f3f3;font-family:"DejaVu Sans Mono",monospace;padding:1px 4px;overflow-wrap:break-word}h1 code{background:transparent}pre{border-top:1px solid #ccc;border-bottom:1px solid #ccc;margin:1em 0}#http-server-module-list{display:flex;flex-flow:column}#http-server-module-list div{display:flex}#http-server-module-list dt{min-width:10%}#http-server-module-list p{margin-top:0}.toc ul,#index{list-style-type:none;margin:0;padding:0}#index code{background:transparent}#index h3{border-bottom:1px solid #ddd}#index ul{padding:0}#index h4{margin-top:.6em;font-weight:bold}@media (min-width:200ex){#index .two-column{column-count:2}}@media (min-width:300ex){#index .two-column{column-count:3}}dl{margin-bottom:2em}dl dl:last-child{margin-bottom:4em}dd{margin:0 0 1em 3em}#header-classes + dl > dd{margin-bottom:3em}dd dd{margin-left:2em}dd p{margin:10px 0}.name{background:#eee;font-size:.85em;padding:5px 10px;display:inline-block;min-width:40%}.name:hover{background:#e0e0e0}dt:target .name{background:var(--highlight-color)}.name > span:first-child{white-space:nowrap}.name.class > span:nth-child(2){margin-left:.4em}.inherited{color:#999;border-left:5px solid #eee;padding-left:1em}.inheritance em{font-style:normal;font-weight:bold}.desc h2{font-weight:400;font-size:1.25em}.desc h3{font-size:1em}.desc dt code{background:inherit}.source > summary,.git-link-div{color:#666;text-align:right;font-weight:400;font-size:.8em;text-transform:uppercase}.source summary > *{white-space:nowrap;cursor:pointer}.git-link{color:inherit;margin-left:1em}.source pre{max-height:500px;overflow:auto;margin:0}.source pre code{font-size:12px;overflow:visible;min-width:max-content}.hlist{list-style:none}.hlist li{display:inline}.hlist li:after{content:',\2002'}.hlist li:last-child:after{content:none}.hlist .hlist{display:inline;padding-left:1em}img{max-width:100%}td{padding:0 .5em}.admonition{padding:.1em 1em;margin:1em 0}.admonition-title{font-weight:bold}.admonition.note,.admonition.info,.admonition.important{background:#aef}.admonition.todo,.admonition.versionadded,.admonition.tip,.admonition.hint{background:#dfd}.admonition.warning,.admonition.versionchanged,.admonition.deprecated{background:#fd4}.admonition.error,.admonition.danger,.admonition.caution{background:lightpink}</style>
13
+ <style media="screen and (min-width: 700px)">@media screen and (min-width:700px){#sidebar{width:30%;height:100vh;overflow:auto;position:sticky;top:0}#content{width:70%;max-width:100ch;padding:3em 4em;border-left:1px solid #ddd}pre code{font-size:1em}.name{font-size:1em}main{display:flex;flex-direction:row-reverse;justify-content:flex-end}.toc ul ul,#index ul ul{padding-left:1em}.toc > ul > li{margin-top:.5em}}</style>
14
+ <style media="print">@media print{#sidebar h1{page-break-before:always}.source{display:none}}@media print{*{background:transparent !important;color:#000 !important;box-shadow:none !important;text-shadow:none !important}a[href]:after{content:" (" attr(href) ")";font-size:90%}a[href][title]:after{content:none}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}@page{margin:0.5cm}p,h2,h3{orphans:3;widows:3}h1,h2,h3,h4,h5,h6{page-break-after:avoid}}</style>
15
+ <script defer src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js" integrity="sha512-D9gUyxqja7hBtkWpPWGt9wfbfaMGVt9gnyCvYa+jojwwPHLCzUm5i8rpk7vD7wNee9bA35eYIjobYPaQuKS1MQ==" crossorigin></script>
16
+ <script>window.addEventListener('DOMContentLoaded', () => {
17
+ hljs.configure({languages: ['bash', 'css', 'diff', 'graphql', 'ini', 'javascript', 'json', 'plaintext', 'python', 'python-repl', 'rust', 'shell', 'sql', 'typescript', 'xml', 'yaml']});
18
+ hljs.highlightAll();
19
+ /* Collapse source docstrings */
20
+ setTimeout(() => {
21
+ [...document.querySelectorAll('.hljs.language-python > .hljs-string')]
22
+ .filter(el => el.innerHTML.length > 200 && ['"""', "'''"].includes(el.innerHTML.substring(0, 3)))
23
+ .forEach(el => {
24
+ let d = document.createElement('details');
25
+ d.classList.add('hljs-string');
26
+ d.innerHTML = '<summary>"""</summary>' + el.innerHTML.substring(3);
27
+ el.replaceWith(d);
28
+ });
29
+ }, 100);
30
+ })</script>
31
+ </head>
32
+ <body>
33
+ <main>
34
+ <article id="content">
35
+ <header>
36
+ <h1 class="title">Module <code>pyjallib.max</code></h1>
37
+ </header>
38
+ <section id="section-intro">
39
+ </section>
40
+ <section>
41
+ </section>
42
+ <section>
43
+ </section>
44
+ <section>
45
+ </section>
46
+ <section>
47
+ </section>
48
+ </article>
49
+ <nav id="sidebar">
50
+ <div class="toc">
51
+ <ul></ul>
52
+ </div>
53
+ <ul id="index">
54
+ <li><h3>Super-module</h3>
55
+ <ul>
56
+ <li><code><a title="pyjallib" href="index.html">pyjallib</a></code></li>
57
+ </ul>
58
+ </li>
59
+ </ul>
60
+ </nav>
61
+ </main>
62
+ <footer id="footer">
63
+ <p>Generated by <a href="https://pdoc3.github.io/pdoc" title="pdoc: Python API documentation generator"><cite>pdoc</cite> 0.11.6</a>.</p>
64
+ </footer>
65
+ </body>
66
+ </html>