1
1
mirror of https://github.com/mcuadros/ascode synced 2025-11-16 05:17:13 +01:00
ascode/docs/reference/filepath/index.html

35 lines
10 KiB
HTML

<!doctype html><html lang=en><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="ie=edge"><title>path/filepath - AsCode - Terraform Alternative Syntax</title><meta name=viewport content="width=device-width,initial-scale=1"><link rel=icon href=https://ascode.run/images/favicon.png><link rel=stylesheet href=/css/style.min.df49831c6872564dff31a5f0978a9571f2c8110b513d4b3b1fc8ead41dcdc9f0.css></head><body class="page page-default-single"><div id=main-menu-mobile class=main-menu-mobile><ul><li class=menu-item-home><a href=/><span>Home</span></a></li><li class=menu-item-docs><a href=/docs/><span>Docs</span></a></li><li class=menu-item-github><a href=https://github.com/mcuadros/ascode><span>GitHub</span></a></li></ul></div><div class=wrapper><div class=header><div class=container><div class=logo><a href=https://ascode.run><img alt=Logo src=/images/logo-header.svg></a></div><div class=logo-mobile><a href=https://ascode.run><img alt=Logo src=/images/logo-header.svg></a></div><div id=main-menu class=main-menu><ul><li class=menu-item-home><a href=/><span>Home</span></a></li><li class=menu-item-docs><a href=/docs/><span>Docs</span></a></li><li class=menu-item-github><a href=https://github.com/mcuadros/ascode><span>GitHub</span></a></li></ul></div><button id=toggle-main-menu-mobile class="hamburger hamburger--slider" type=button>
<span class=hamburger-box><span class=hamburger-inner></span></span></button></div></div><div class="main container pt-2 pt-md-6 pb-3 pb-md-6"><div class=row><div class="col-12 col-md-3 mb-3"><div class=sidebar><div class=docs-menu><h4><a href=/docs/reference/>API Reference</a></h4><ul><li><a href=/docs/reference/types/>built-in</a></li><li><a href=/docs/reference/docker/>docker</a></li><li><a href=/docs/reference/base64/>encoding/base64</a></li><li><a href=/docs/reference/csv/>encoding/csv</a></li><li><a href=/docs/reference/json/>encoding/json</a></li><li><a href=/docs/reference/yaml/>encoding/yaml</a></li><li><a href=/docs/reference/http/>http</a></li><li><a href=/docs/reference/math/>math</a></li><li><a href=/docs/reference/os/>os</a></li><li><a class=active href=/docs/reference/filepath/>path/filepath</a></li><li><a href=/docs/reference/re/>re</a></li><li><a href=/docs/reference/time/>time</a></li><li><a href=/docs/reference/url/>url</a></li></ul></div><div style=font-size:90%;margin-top:40px><a href=/docs/>« Documentation</a></div></div></div><div class="col-12 col-md-9"><h1 class=title>path/filepath</h1><div class=content><h2 id=index>Index</h2><div class=toc><nav id=TableOfContents><ul><li><a href=#overview>Overview</a></li><li><a href=#functions>Functions</a><ul><li><a href=#def-babsb>def <b>abs</b></a></li><li><a href=#def-bbaseb>def <b>base</b></a></li><li><a href=#def-bcleanb>def <b>clean</b></a></li><li><a href=#def-bdirb>def <b>dir</b></a></li><li><a href=#def-bextb>def <b>ext</b></a></li><li><a href=#def-bglobb>def <b>glob</b></a></li><li><a href=#def-bis_absb>def <b>is_abs</b></a></li><li><a href=#def-bjoinb>def <b>join</b></a></li><li><a href=#def-brelb>def <b>rel</b></a></li></ul></li></ul></nav></div><h2 id=overview>Overview</h2><p>filepath implements utility routines for manipulating filename paths in a
way compatible with the target operating system-defined file path</p><h2 id=functions>Functions</h2><h3 id=def-babsb>def <b>abs</b></h3><div class=highlight><pre class=chroma><code class=language-go data-lang=go><span class=nf>abs</span><span class=p>(</span><span class=nx>path</span><span class=p>)</span> <span class=kt>string</span>
</code></pre></div><p>returns an absolute representation of path. If the path is not
absolute it will be joined with the current working directory to turn
it into an absolute path.</p><h6 id=arguments>Arguments</h6><table><thead><tr><th>name</th><th>type</th><th>description</th></tr></thead><tbody><tr><td><code>path</code></td><td><code>string</code></td><td>relative or absolute path</td></tr></tbody></table><h3 id=def-bbaseb>def <b>base</b></h3><div class=highlight><pre class=chroma><code class=language-go data-lang=go><span class=nf>base</span><span class=p>(</span><span class=nx>path</span><span class=p>)</span> <span class=kt>string</span>
</code></pre></div><p>returns the last element of path. Trailing path separators are
removed before extracting the last element. If the path is empty,
<code>base</code> returns &ldquo;.". If the path consists entirely of separators,
<code>base</code> returns a single separator.</p><h6 id=arguments-1>Arguments</h6><table><thead><tr><th>name</th><th>type</th><th>description</th></tr></thead><tbody><tr><td><code>path</code></td><td><code>string</code></td><td>input path</td></tr></tbody></table><h3 id=def-bcleanb>def <b>clean</b></h3><div class=highlight><pre class=chroma><code class=language-go data-lang=go><span class=nf>clean</span><span class=p>(</span><span class=nx>path</span><span class=p>)</span> <span class=kt>string</span>
</code></pre></div><p>returns the shortest path name equivalent to path by purely lexical
processing.</p><h6 id=arguments-2>Arguments</h6><table><thead><tr><th>name</th><th>type</th><th>description</th></tr></thead><tbody><tr><td><code>path</code></td><td><code>string</code></td><td>input path</td></tr></tbody></table><h3 id=def-bdirb>def <b>dir</b></h3><div class=highlight><pre class=chroma><code class=language-go data-lang=go><span class=nf>dir</span><span class=p>(</span><span class=nx>path</span><span class=p>)</span> <span class=kt>string</span>
</code></pre></div><p>returns all but the last element of path, typically the path&rsquo;s
directory. After dropping the final element, <code>dir</code> calls <code>clean</code> on the
path and trailing slashes are removed. If the path is empty, <code>dir</code>
returns &ldquo;.". If the path consists entirely of separators, <code>dir</code>
returns a single separator. The returned path does not end in a
separator unless it is the root directory.</p><h6 id=arguments-3>Arguments</h6><table><thead><tr><th>name</th><th>type</th><th>description</th></tr></thead><tbody><tr><td><code>path</code></td><td><code>string</code></td><td>input path</td></tr></tbody></table><h3 id=def-bextb>def <b>ext</b></h3><div class=highlight><pre class=chroma><code class=language-go data-lang=go><span class=nf>ext</span><span class=p>(</span><span class=nx>path</span><span class=p>)</span> <span class=kt>string</span>
</code></pre></div><p>returns the file name extension used by path. The extension is the
suffix beginning at the final dot in the final element of path; it
is empty if there is no dot.</p><h6 id=arguments-4>Arguments</h6><table><thead><tr><th>name</th><th>type</th><th>description</th></tr></thead><tbody><tr><td><code>path</code></td><td><code>string</code></td><td>input path</td></tr></tbody></table><h3 id=def-bglobb>def <b>glob</b></h3><div class=highlight><pre class=chroma><code class=language-go data-lang=go><span class=nf>glob</span><span class=p>(</span><span class=nx>pattern</span><span class=p>)</span> <span class=nx>list</span>
</code></pre></div><p>returns the names of all files matching pattern or None if there is
no matching file.</p><h6 id=arguments-5>Arguments</h6><table><thead><tr><th>name</th><th>type</th><th>description</th></tr></thead><tbody><tr><td><code>pattern</code></td><td><code>string</code></td><td>pattern (<a href=https://golang.org/pkg/path/filepath/#Match>syntax</a>)</td></tr></tbody></table><h3 id=def-bis_absb>def <b>is_abs</b></h3><div class=highlight><pre class=chroma><code class=language-go data-lang=go><span class=nf>is_abs</span><span class=p>(</span><span class=nx>path</span><span class=p>)</span> <span class=kt>bool</span>
</code></pre></div><p>reports whether the path is absolute.</p><h6 id=arguments-6>Arguments</h6><table><thead><tr><th>name</th><th>type</th><th>description</th></tr></thead><tbody><tr><td><code>path</code></td><td><code>string</code></td><td>input path</td></tr></tbody></table><h3 id=def-bjoinb>def <b>join</b></h3><div class=highlight><pre class=chroma><code class=language-go data-lang=go><span class=nf>join</span><span class=p>(</span><span class=nx>elements</span><span class=p>)</span> <span class=kt>string</span>
</code></pre></div><p>joins any number of path elements into a single path, adding a
<code>filepath.separator</code> if necessary. Join calls Clean on the result;
in particular, all empty strings are ignored. On Windows, the result
is a UNC path if and only if the first path element is a UNC path.</p><h6 id=arguments-7>Arguments</h6><table><thead><tr><th>name</th><th>type</th><th>description</th></tr></thead><tbody><tr><td><code>elements</code></td><td><code>lists</code></td><td>list of path elements to be joined</td></tr></tbody></table><h3 id=def-brelb>def <b>rel</b></h3><div class=highlight><pre class=chroma><code class=language-go data-lang=go><span class=nf>rel</span><span class=p>(</span><span class=nx>basepath</span><span class=p>,</span> <span class=nx>targpath</span><span class=p>)</span> <span class=kt>string</span>
</code></pre></div><p>returns a relative path that is lexically equivalent to targpath when
joined to basepath with an intervening separator. That is, <code>filepath.join(basepath, filepath.rel(basepath, targpath))</code>
is equivalent to targpath itself. On success, the returned path will
always be relative to basepath, even if basepath and targpath share
no elements. An error is returned if targpath can&rsquo;t be made relative
to basepath or if knowing the current working directory would be
necessary to compute it. Rel calls Clean on the result.</p><h6 id=arguments-8>Arguments</h6><table><thead><tr><th>name</th><th>type</th><th>description</th></tr></thead><tbody><tr><td><code>basepath</code></td><td><code>string</code></td><td>relative or absolute path</td></tr><tr><td><code>targpath</code></td><td><code>string</code></td><td>relative or absolute path</td></tr></tbody></table></div></div></div></div></div></div><div class=sub-footer><div class=container><div class=row><div class=col-12><div class=sub-footer-inner><ul><li><a href=https://github.com/mcuadros/ascod>Documentation version v1.3.0</a></li><li>Template by <a href=https://www.zerostatic.io>Robert Austin</a></li></ul></div></div></div></div><script type=text/javascript src=/js/scripts.min.be6fe1294698d6acd837c5182149cd1a24daae9fa1903ce810c264539d254d62.js></script></body></html>