361 lines
		
	
	
		
			22 KiB
		
	
	
	
		
			HTML
		
	
	
	
			
		
		
	
	
			361 lines
		
	
	
		
			22 KiB
		
	
	
	
		
			HTML
		
	
	
	
| <!DOCTYPE html>
 | |
| <html>
 | |
|   <head>
 | |
|     <meta charset="utf-8"/>
 | |
|     <meta name="viewport" content="width=device-width, initial-scale=1"/>
 | |
|     <title>{{ page_title }}</title>
 | |
|     <meta name="theme-color" content="#eff1f5" media="(prefers-color-scheme: light)"/>
 | |
|     <meta name="theme-color" content="#1e1e2e" media="(prefers-color-scheme: dark)"/>
 | |
|     <link rel="icon" type="image/svg+xml" sizes="any" href="{{ breadcrumbs }}/favicon.svg"/>
 | |
|     <link rel="stylesheet" href="{{ breadcrumbs }}/css/index.css?v={{ aiken_version }}" type="text/css"/>
 | |
|     <link id="syntax-theme" rel="stylesheet" href="{{ breadcrumbs }}/css/atom-one-light.min.css?v={{ aiken_version }}"/>
 | |
|   </head>
 | |
|   <body class="prewrap-off theme-light drawer-closed">
 | |
|     <script>
 | |
|       "use strict";
 | |
|       window.breadcrumbs = '{{ breadcrumbs }}';
 | |
|       const aikenConfig = {
 | |
|         theme: {
 | |
|           values: (() => {
 | |
|             const dark = {
 | |
|               value: "dark",
 | |
|               label: "Switch to light mode",
 | |
|               icons: ["moon"],
 | |
|             };
 | |
|             const light = {
 | |
|               value: "light",
 | |
|               label: "Switch to dark mode",
 | |
|               icons: ["sun"],
 | |
|             };
 | |
|             return (
 | |
|               window.matchMedia("(prefers-color-scheme: dark)").matches
 | |
|               ? [dark, light]
 | |
|               : [light, dark]
 | |
|             ).map((item, index) => {
 | |
|               item.icons.push(`toggle-${0 === index ? "left" : "right"}`);
 | |
|               return item;
 | |
|             });
 | |
|           })(),
 | |
| 
 | |
|           update: () => "light" === Aiken.getProperty("theme") ? "dark" : "light",
 | |
| 
 | |
|           callback: function(value) {
 | |
|             const syntaxThemes = {
 | |
|               dark: "atom-one-dark",
 | |
|               light: "atom-one-light",
 | |
|             };
 | |
|             const syntaxTheme = document.querySelector("#syntax-theme");
 | |
|             const hrefParts = syntaxTheme.href.match(
 | |
|               /^(.*?)([^/\\#?]+?)((?:\.min)?\.css.*)$/i
 | |
|             );
 | |
|             if (syntaxThemes[value] !== hrefParts[2]) {
 | |
|               hrefParts[2] = syntaxThemes[value];
 | |
|               hrefParts.shift();
 | |
|               syntaxTheme.href = hrefParts.join("");
 | |
|             }
 | |
|           },
 | |
|         },
 | |
|         prewrap: {
 | |
|           values: [
 | |
|             {
 | |
|               value: "off",
 | |
|               label: "Switch to line-wrapped snippets",
 | |
|               icons: ["more-horizontal", "toggle-left"],
 | |
|             },
 | |
|             {
 | |
|               value: "on",
 | |
|               label: "Switch to non-wrapped snippets",
 | |
|               icons: ["more-vertical", "toggle-right"],
 | |
|             },
 | |
|           ],
 | |
| 
 | |
|           update: () => "off" === Aiken.getProperty("prewrap") ? "on" : "off",
 | |
|         },
 | |
|       };
 | |
|     </script>
 | |
| 
 | |
|     <script>
 | |
|       "use strict";
 | |
| 
 | |
|       /* Initialise options before any content loads */
 | |
|       void function() {
 | |
|         for (const property in aikenConfig) {
 | |
|           const name = `Aiken.${property}`;
 | |
| 
 | |
|           let value;
 | |
| 
 | |
|           try {
 | |
|             value = localStorage.getItem(name);
 | |
|             if (value.startsWith('"') && value.endsWith('"')) {
 | |
|               localStorage.setItem(name, value.slice(1, value.length - 1));
 | |
|             }
 | |
|           }
 | |
|           catch (_error) {}
 | |
| 
 | |
|           const defaultValue = aikenConfig[property].values[0].value;
 | |
|           try {
 | |
|             value = localStorage.getItem(name);
 | |
|           }
 | |
|           catch(_error) {}
 | |
|           if (-1 < [null, undefined].indexOf(value)) {
 | |
|             value = defaultValue;
 | |
|           }
 | |
|           const bodyClasses = document.body.classList;
 | |
|           bodyClasses.remove(`${property}-${defaultValue}`);
 | |
|           bodyClasses.add(`${property}-${value}`);
 | |
|           try {
 | |
|             aikenConfig[property].callback(value);
 | |
|           }
 | |
|           catch(_error) {}
 | |
|         }
 | |
|       }();
 | |
|     </script>
 | |
| 
 | |
|     <header class="page-header">
 | |
|       <button class="sidebar-toggle" tabindex="0">
 | |
|         <svg class="label label-closed icon icon-menu" alt="Open Menu" title="Open Menu"><use xlink:href="#icon-menu"></use></svg>
 | |
|         <svg class="label label-open icon icon-x-circle" alt="Close Menu" title="Close Menu"><use xlink:href="#icon-x-circle"></use></svg>
 | |
|       </button>
 | |
| 
 | |
|       <h2>
 | |
|         <a href="{{ breadcrumbs }}/">{{ project_name }}</a>
 | |
|         <span id="project-version">
 | |
|           <span>{{ project_version }} </span>
 | |
|         </span>
 | |
|         <script>
 | |
|           "use strict";
 | |
| 
 | |
|           if ("undefined" !== typeof versionNodes) {
 | |
|             const currentVersion = "v{{ project_version }}";
 | |
|             if (! versionNodes.find(element => element.version === currentVersion)) {
 | |
|               versionNodes.unshift({ version: currentVersion, url: "#" });
 | |
|             }
 | |
|             document.querySelector("#project-version").innerHTML =
 | |
|               versionNodes.reduce(
 | |
|                 (acc, element) => {
 | |
|                   const status =
 | |
|                     currentVersion === element.version ? "selected disabled" : "";
 | |
|                   return `
 | |
|                     ${acc}
 | |
|                       <option value="${element.url}" ${status}>
 | |
|                         ${element.version}
 | |
|                       </option>
 | |
|                   `;
 | |
|                 },
 | |
|                 `
 | |
|                 <form autocomplete="off">
 | |
|                   <select onchange="window.location.href = this.value">
 | |
|                 `
 | |
|               ) + `
 | |
|                   </select>
 | |
|                   <svg class="icon icon-chevrons-down"><use xlink:href="#icon-chevrons-down"></use></svg>
 | |
|                 </form>
 | |
|               `;
 | |
|           }
 | |
|         </script>
 | |
|       </h2>
 | |
|       <div class="search">
 | |
|         <div class="search-input-wrap">
 | |
|           <input type="text" id="search-input" class="search-input" tabindex="0" aria-label="Search {{ project_name }}" autocomplete="off">
 | |
|           <label for="search-input" class="search-label"><svg viewBox="0 0 24 24" class="search-icon"><use xlink:href="#icon-svg-search"></use></svg></label>
 | |
|         </div>
 | |
|         <div id="search-results" class="search-results"></div>
 | |
|       </div>
 | |
| 
 | |
|       <button class="search-nav-button" id="search-nav-button" tabindex="0">
 | |
|         <svg class="label icon icon-x-circle" alt="Open Search" title="Open Search"><use xlink:href="#icon-svg-search"></use></svg>
 | |
|       </button>
 | |
| 
 | |
|       <nav>
 | |
|         <a href="https://aiken-lang.github.io/prelude/aiken.html">Prelude</a>
 | |
|         <a href="https://aiken-lang.github.io/prelude/aiken/builtin.html">Built-ins</a>
 | |
|         <a href="https://aiken-lang.github.io/stdlib">Stdlib</a>
 | |
|       </nav>
 | |
|     </header>
 | |
| 
 | |
|     <div class="page">
 | |
|       <nav class="sidebar">
 | |
|         <button class="sidebar-toggle" tabindex="1">
 | |
|           <svg class="label icon icon-x-circle" alt="Close Menu" title="Close Menu"><use xlink:href="#icon-x-circle"></use></svg>
 | |
|         </button>
 | |
| 
 | |
|         {% if !source.is_empty() %}
 | |
|         <h2>Source code</h2>
 | |
|         <ul>
 | |
|           <li><a href="{{ source.path }}">{{ source.name }}</a></li>
 | |
|         </ul>
 | |
|         {% endif %}
 | |
| 
 | |
|         {% block sidebar_content %}{% endblock %}
 | |
| 
 | |
|         <h2>Modules</h2>
 | |
|         <ul>
 | |
|         {% for module in modules %}
 | |
| 	  {% if module.is_separator() %}
 | |
| 	    <li data-indent="{{ module.indent }}"><span>{{ module.name }}</span></li>
 | |
| 	  {% else %}
 | |
| 	    {% if self.is_current_module(module) %}
 | |
| 	      <li data-indent="{{ module.indent }}" data-current><a href="{{ breadcrumbs }}/{{ module.path }}">
 | |
| 	      <strong>{{ module.name }}</strong>
 | |
| 	      </a></li>
 | |
| 	    {% else %}
 | |
| 	      <li data-indent="{{ module.indent }}"><a href="{{ breadcrumbs }}/{{ module.path }}">
 | |
| 	      {{ module.name }}
 | |
| 	      </a></li>
 | |
| 	    {% endif %}
 | |
| 	  {% endif %}
 | |
|         {% endfor %}
 | |
|         </ul>
 | |
|       </nav>
 | |
| 
 | |
|       <main class="content">
 | |
|         {% block content %}{% endblock %}
 | |
|       </main>
 | |
|       <div class="search-overlay"></div>
 | |
|     </div>
 | |
| 
 | |
|     <svg class="svg-lib" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
 | |
|       <defs>
 | |
|         <symbol id="icon-chevrons-down" viewBox="0 0 24 24"><path d="M6.293 13.707l5 5c0.391 0.391 1.024 0.391 1.414 0l5-5c0.391-0.391 0.391-1.024 0-1.414s-1.024-0.391-1.414 0l-4.293 4.293-4.293-4.293c-0.391-0.391-1.024-0.391-1.414 0s-0.391 1.024 0 1.414zM6.293 6.707l5 5c0.391 0.391 1.024 0.391 1.414 0l5-5c0.391-0.391 0.391-1.024 0-1.414s-1.024-0.391-1.414 0l-4.293 4.293-4.293-4.293c-0.391-0.391-1.024-0.391-1.414 0s-0.391 1.024 0 1.414z"></path></symbol>
 | |
| 
 | |
|         <symbol id="icon-menu" viewBox="0 0 24 24"><path d="M3 13h18c0.552 0 1-0.448 1-1s-0.448-1-1-1h-18c-0.552 0-1 0.448-1 1s0.448 1 1 1zM3 7h18c0.552 0 1-0.448 1-1s-0.448-1-1-1h-18c-0.552 0-1 0.448-1 1s0.448 1 1 1zM3 19h18c0.552 0 1-0.448 1-1s-0.448-1-1-1h-18c-0.552 0-1 0.448-1 1s0.448 1 1 1z"></path></symbol>
 | |
| 
 | |
| 	<symbol id="icon-external-link" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-external-link"><path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"></path><polyline points="15 3 21 3 21 9"></polyline><line x1="10" y1="14" x2="21" y2="3"></line></symbol>
 | |
| 
 | |
|         <symbol id="icon-moon" viewBox="0 0 24 24"><path d="M21.996 12.882c0.022-0.233-0.038-0.476-0.188-0.681-0.325-0.446-0.951-0.544-1.397-0.219-0.95 0.693-2.060 1.086-3.188 1.162-1.368 0.092-2.765-0.283-3.95-1.158-1.333-0.985-2.139-2.415-2.367-3.935s0.124-3.124 1.109-4.456c0.142-0.191 0.216-0.435 0.191-0.691-0.053-0.55-0.542-0.952-1.092-0.898-2.258 0.22-4.314 1.18-5.895 2.651-1.736 1.615-2.902 3.847-3.137 6.386-0.254 2.749 0.631 5.343 2.266 7.311s4.022 3.313 6.772 3.567 5.343-0.631 7.311-2.266 3.313-4.022 3.567-6.772zM19.567 14.674c-0.49 1.363-1.335 2.543-2.416 3.441-1.576 1.309-3.648 2.016-5.848 1.813s-4.108-1.278-5.417-2.854-2.016-3.648-1.813-5.848c0.187-2.032 1.117-3.814 2.507-5.106 0.782-0.728 1.71-1.3 2.731-1.672-0.456 1.264-0.577 2.606-0.384 3.899 0.303 2.023 1.38 3.934 3.156 5.247 1.578 1.167 3.448 1.668 5.272 1.545 0.752-0.050 1.496-0.207 2.21-0.465z"></path></symbol>
 | |
| 
 | |
|         <symbol id="icon-more-horizontal" viewBox="0 0 24 24"><path d="M14 12c0-0.552-0.225-1.053-0.586-1.414s-0.862-0.586-1.414-0.586-1.053 0.225-1.414 0.586-0.586 0.862-0.586 1.414 0.225 1.053 0.586 1.414 0.862 0.586 1.414 0.586 1.053-0.225 1.414-0.586 0.586-0.862 0.586-1.414zM21 12c0-0.552-0.225-1.053-0.586-1.414s-0.862-0.586-1.414-0.586-1.053 0.225-1.414 0.586-0.586 0.862-0.586 1.414 0.225 1.053 0.586 1.414 0.862 0.586 1.414 0.586 1.053-0.225 1.414-0.586 0.586-0.862 0.586-1.414zM7 12c0-0.552-0.225-1.053-0.586-1.414s-0.862-0.586-1.414-0.586-1.053 0.225-1.414 0.586-0.586 0.862-0.586 1.414 0.225 1.053 0.586 1.414 0.862 0.586 1.414 0.586 1.053-0.225 1.414-0.586 0.586-0.862 0.586-1.414z"></path></symbol>
 | |
| 
 | |
|         <symbol id="icon-more-vertical" viewBox="0 0 24 24"><path d="M14 12c0-0.552-0.225-1.053-0.586-1.414s-0.862-0.586-1.414-0.586-1.053 0.225-1.414 0.586-0.586 0.862-0.586 1.414 0.225 1.053 0.586 1.414 0.862 0.586 1.414 0.586 1.053-0.225 1.414-0.586 0.586-0.862 0.586-1.414zM14 5c0-0.552-0.225-1.053-0.586-1.414s-0.862-0.586-1.414-0.586-1.053 0.225-1.414 0.586-0.586 0.862-0.586 1.414 0.225 1.053 0.586 1.414 0.862 0.586 1.414 0.586 1.053-0.225 1.414-0.586 0.586-0.862 0.586-1.414zM14 19c0-0.552-0.225-1.053-0.586-1.414s-0.862-0.586-1.414-0.586-1.053 0.225-1.414 0.586-0.586 0.862-0.586 1.414 0.225 1.053 0.586 1.414 0.862 0.586 1.414 0.586 1.053-0.225 1.414-0.586 0.586-0.862 0.586-1.414z"></path></symbol>
 | |
| 
 | |
|         <symbol id="icon-sun" viewBox="0 0 24 24"><path d="M18 12c0-1.657-0.673-3.158-1.757-4.243s-2.586-1.757-4.243-1.757-3.158 0.673-4.243 1.757-1.757 2.586-1.757 4.243 0.673 3.158 1.757 4.243 2.586 1.757 4.243 1.757 3.158-0.673 4.243-1.757 1.757-2.586 1.757-4.243zM16 12c0 1.105-0.447 2.103-1.172 2.828s-1.723 1.172-2.828 1.172-2.103-0.447-2.828-1.172-1.172-1.723-1.172-2.828 0.447-2.103 1.172-2.828 1.723-1.172 2.828-1.172 2.103 0.447 2.828 1.172 1.172 1.723 1.172 2.828zM11 1v2c0 0.552 0.448 1 1 1s1-0.448 1-1v-2c0-0.552-0.448-1-1-1s-1 0.448-1 1zM11 21v2c0 0.552 0.448 1 1 1s1-0.448 1-1v-2c0-0.552-0.448-1-1-1s-1 0.448-1 1zM3.513 4.927l1.42 1.42c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-1.42-1.42c-0.391-0.391-1.024-0.391-1.414 0s-0.391 1.024 0 1.414zM17.653 19.067l1.42 1.42c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-1.42-1.42c-0.391-0.391-1.024-0.391-1.414 0s-0.391 1.024 0 1.414zM1 13h2c0.552 0 1-0.448 1-1s-0.448-1-1-1h-2c-0.552 0-1 0.448-1 1s0.448 1 1 1zM21 13h2c0.552 0 1-0.448 1-1s-0.448-1-1-1h-2c-0.552 0-1 0.448-1 1s0.448 1 1 1zM4.927 20.487l1.42-1.42c0.391-0.391 0.391-1.024 0-1.414s-1.024-0.391-1.414 0l-1.42 1.42c-0.391 0.391-0.391 1.024 0 1.414s1.024 0.391 1.414 0zM19.067 6.347l1.42-1.42c0.391-0.391 0.391-1.024 0-1.414s-1.024-0.391-1.414 0l-1.42 1.42c-0.391 0.391-0.391 1.024 0 1.414s1.024 0.391 1.414 0z"></path></symbol>
 | |
| 
 | |
|         <symbol id="icon-toggle-left" viewBox="0 0 24 24"><path d="M8 4c-2.209 0-4.21 0.897-5.657 2.343s-2.343 3.448-2.343 5.657 0.897 4.21 2.343 5.657 3.448 2.343 5.657 2.343h8c2.209 0 4.21-0.897 5.657-2.343s2.343-3.448 2.343-5.657-0.897-4.21-2.343-5.657-3.448-2.343-5.657-2.343zM8 6h8c1.657 0 3.156 0.67 4.243 1.757s1.757 2.586 1.757 4.243-0.67 3.156-1.757 4.243-2.586 1.757-4.243 1.757h-8c-1.657 0-3.156-0.67-4.243-1.757s-1.757-2.586-1.757-4.243 0.67-3.156 1.757-4.243 2.586-1.757 4.243-1.757zM12 12c0-1.104-0.449-2.106-1.172-2.828s-1.724-1.172-2.828-1.172-2.106 0.449-2.828 1.172-1.172 1.724-1.172 2.828 0.449 2.106 1.172 2.828 1.724 1.172 2.828 1.172 2.106-0.449 2.828-1.172 1.172-1.724 1.172-2.828zM10 12c0 0.553-0.223 1.051-0.586 1.414s-0.861 0.586-1.414 0.586-1.051-0.223-1.414-0.586-0.586-0.861-0.586-1.414 0.223-1.051 0.586-1.414 0.861-0.586 1.414-0.586 1.051 0.223 1.414 0.586 0.586 0.861 0.586 1.414z"></path></symbol>
 | |
| 
 | |
|         <symbol id="icon-toggle-right" viewBox="0 0 24 24"><path d="M8 4c-2.209 0-4.21 0.897-5.657 2.343s-2.343 3.448-2.343 5.657 0.897 4.21 2.343 5.657 3.448 2.343 5.657 2.343h8c2.209 0 4.21-0.897 5.657-2.343s2.343-3.448 2.343-5.657-0.897-4.21-2.343-5.657-3.448-2.343-5.657-2.343zM8 6h8c1.657 0 3.156 0.67 4.243 1.757s1.757 2.586 1.757 4.243-0.67 3.156-1.757 4.243-2.586 1.757-4.243 1.757h-8c-1.657 0-3.156-0.67-4.243-1.757s-1.757-2.586-1.757-4.243 0.67-3.156 1.757-4.243 2.586-1.757 4.243-1.757zM20 12c0-1.104-0.449-2.106-1.172-2.828s-1.724-1.172-2.828-1.172-2.106 0.449-2.828 1.172-1.172 1.724-1.172 2.828 0.449 2.106 1.172 2.828 1.724 1.172 2.828 1.172 2.106-0.449 2.828-1.172 1.172-1.724 1.172-2.828zM18 12c0 0.553-0.223 1.051-0.586 1.414s-0.861 0.586-1.414 0.586-1.051-0.223-1.414-0.586-0.586-0.861-0.586-1.414 0.223-1.051 0.586-1.414 0.861-0.586 1.414-0.586 1.051 0.223 1.414 0.586 0.586 0.861 0.586 1.414z"></path></symbol>
 | |
| 
 | |
|         <symbol id="icon-x-circle" viewBox="0 0 24 24"><path d="M23 12c0-3.037-1.232-5.789-3.222-7.778s-4.741-3.222-7.778-3.222-5.789 1.232-7.778 3.222-3.222 4.741-3.222 7.778 1.232 5.789 3.222 7.778 4.741 3.222 7.778 3.222 5.789-1.232 7.778-3.222 3.222-4.741 3.222-7.778zM21 12c0 2.486-1.006 4.734-2.636 6.364s-3.878 2.636-6.364 2.636-4.734-1.006-6.364-2.636-2.636-3.878-2.636-6.364 1.006-4.734 2.636-6.364 3.878-2.636 6.364-2.636 4.734 1.006 6.364 2.636 2.636 3.878 2.636 6.364zM8.293 9.707l2.293 2.293-2.293 2.293c-0.391 0.391-0.391 1.024 0 1.414s1.024 0.391 1.414 0l2.293-2.293 2.293 2.293c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-2.293-2.293 2.293-2.293c0.391-0.391 0.391-1.024 0-1.414s-1.024-0.391-1.414 0l-2.293 2.293-2.293-2.293c-0.391-0.391-1.024-0.391-1.414 0s-0.391 1.024 0 1.414z"></path></symbol>
 | |
| 
 | |
|         <symbol id="icon-svg-search" viewBox="0 0 24 24">
 | |
|             <title>Search</title>
 | |
|             <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-search">
 | |
|                 <circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line>
 | |
|             </svg>
 | |
|         </symbol>
 | |
| 
 | |
|         <symbol id="icon-svg-doc" viewBox="0 0 24 24">
 | |
|             <title>Document</title>
 | |
|             <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-file">
 | |
|                 <path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"></path><polyline points="13 2 13 9 20 9"></polyline>
 | |
|             </svg>
 | |
|         </symbol>
 | |
| 	<symbol id="icon-at" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-at-sign">
 | |
| 	  <circle cx="12" cy="12" r="4"></circle>
 | |
| 	  <path d="M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-3.92 7.94"></path>
 | |
| 	</symbol>
 | |
| 	<symbol id="icon-box" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-box">
 | |
| 	  <path d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"></path>
 | |
| 	  <polyline points="3.27 6.96 12 12.01 20.73 6.96"></polyline>
 | |
| 	  <line x1="12" y1="22.08" x2="12" y2="12"></line>
 | |
|         </symbol>
 | |
| 
 | |
| 	<symbol id="icon-note" viewBox="0 0 16 16" fill="currentColor">
 | |
|           <path d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path>
 | |
| 	</symbol>
 | |
| 
 | |
| 	<symbol id="icon-tip" viewBox="0 0 16 16" fill="currentColor">
 | |
|           <path d="M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z"></path>
 | |
| 	</symbol>
 | |
| 
 | |
| 	<symbol id="icon-important" viewBox="0 0 16 16" fill="currentColor">
 | |
|           <path d="M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path>
 | |
| 	</symbol>
 | |
| 
 | |
| 	<symbol id="icon-warning" viewBox="0 0 16 16" fill="currentColor">
 | |
| 	  <path d="M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path>
 | |
| 	</symbol>
 | |
| 
 | |
| 	<symbol id="icon-caution" viewBox="0 0 16 16" fill="currentColor">
 | |
| 	  <path d="M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25A.749.749 0 0 1 11 16H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path>
 | |
| 	</symbol>
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
|       </defs>
 | |
|     </svg>
 | |
| 
 | |
|     <script src="{{ breadcrumbs }}/js/highlight.min.js?v={{ aiken_version }}"></script>
 | |
|     <script src="{{ breadcrumbs }}/js/highlightjs-aiken.js?v={{ aiken_version }}"></script>
 | |
|     <script>
 | |
|       document.querySelectorAll("pre code").forEach((elem) => {
 | |
|         if (elem.className === "") {
 | |
|           elem.classList.add("aiken");
 | |
|         }
 | |
|       });
 | |
|       hljs.highlightAll();
 | |
|       document.querySelectorAll(".member-name > h2 > pre").forEach((el) => {
 | |
| 	hljs.highlightElement(el)
 | |
| 	const span = el.firstElementChild;
 | |
| 	span.remove();
 | |
| 	const a = document.createElement("a");
 | |
| 	a.href = `#${span.innerText}`;
 | |
| 	a.className = span.className;
 | |
| 	a.innerText = span.innerText;
 | |
| 	el.prepend(a);
 | |
|       });
 | |
| 
 | |
|       function addIcon(icon) {
 | |
| 	return (el) => {
 | |
| 	  const span = document.createElement('span');
 | |
| 	  span.classList = 'icon-group';
 | |
| 	  span.innerText = icon;
 | |
| 	  const svg = document.createElementNS('http://www.w3.org/2000/svg', 'svg');
 | |
| 	  svg.classList = 'icon';
 | |
| 	  const link = document.createElementNS('http://www.w3.org/2000/svg', 'use');
 | |
| 	  link.setAttributeNS('http://www.w3.org/1999/xlink', 'xlink:href', `#icon-${icon}`);
 | |
| 	  svg.appendChild(link);
 | |
| 	  span.prepend(svg)
 | |
| 	  el.prepend(span);
 | |
| 	}
 | |
|       }
 | |
| 
 | |
|       document.querySelectorAll("blockquote.markdown-alert-note").forEach(addIcon('note'));
 | |
|       document.querySelectorAll("blockquote.markdown-alert-tip").forEach(addIcon('tip'));
 | |
|       document.querySelectorAll("blockquote.markdown-alert-important").forEach(addIcon('important'));
 | |
|       document.querySelectorAll("blockquote.markdown-alert-warning").forEach(addIcon('warning'));
 | |
|       document.querySelectorAll("blockquote.markdown-alert-caution").forEach(addIcon('caution'));
 | |
|     </script>
 | |
|     <script src="https://unpkg.com/@popperjs/core@2"></script>
 | |
|     <script src="https://unpkg.com/tippy.js@6"></script>
 | |
|     <script src="{{ breadcrumbs }}/js/lunr.min.js?v={{ aiken_version }}"></script>
 | |
|     <script src="{{ breadcrumbs }}/js/index.js?v={{ timestamp }}"></script>
 | |
|     <!-- Load the search index using JSONP to avoid CORS issues -->
 | |
|     <script src="{{ breadcrumbs }}/search-data.js?v={{ timestamp }}"></script>
 | |
|     <script>
 | |
|       void function() {
 | |
|         if (typeof tippy !== "undefined") {
 | |
| 	  const overflowed = Array.from(document
 | |
|             .querySelectorAll('.sidebar li:not([data-indent])'))
 | |
| 	    .filter(x => x.offsetWidth < x.scrollWidth);
 | |
| 
 | |
| 	  tippy(overflowed, {
 | |
| 	    arrow: true,
 | |
|   	    placement: 'right',
 | |
| 	    content: (el) => el.children[0]?.innerText,
 | |
|           });
 | |
| 
 | |
| 	  tippy('.sidebar li[data-indent] a', {
 | |
| 	    arrow: true,
 | |
|   	    placement: 'right',
 | |
| 	    content: (el) => el
 | |
| 	      .getAttribute('href')
 | |
| 	      .replaceAll(/\.?\.\//g, '')
 | |
| 	      .replace('.html', ''),
 | |
| 	  });
 | |
| 	}
 | |
|       }();
 | |
|     </script>
 | |
|   </body>
 | |
| </html>
 |