mirror of
https://github.com/nim-lang/Nim.git
synced 2025-12-28 17:04:41 +00:00
1951 lines
254 KiB
HTML
1951 lines
254 KiB
HTML
<?xml version="1.0" encoding="utf-8" ?>
|
||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||
<!-- This file is generated by Nim. -->
|
||
<html xmlns="https://www.w3.org/1999/xhtml" xml:lang="en" lang="en" data-theme="auto">
|
||
<head>
|
||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
<title>std/unicode</title>
|
||
|
||
<!-- Google fonts -->
|
||
<link href='https://fonts.googleapis.com/css?family=Lato:400,600,900' rel='stylesheet' type='text/css'/>
|
||
<link href='https://fonts.googleapis.com/css?family=Source+Code+Pro:400,500,600' rel='stylesheet' type='text/css'/>
|
||
|
||
<!-- Favicon -->
|
||
<link rel="shortcut icon" href="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAUAAAAF////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAIAAABbAAAAlQAAAKIAAACbAAAAmwAAAKIAAACVAAAAWwAAAAL///8A////AP///wD///8A////AAAAABQAAADAAAAAYwAAAA3///8A////AP///wD///8AAAAADQAAAGMAAADAAAAAFP///wD///8A////AP///wAAAACdAAAAOv///wD///8A////AP///wD///8A////AP///wD///8AAAAAOgAAAJ3///8A////AP///wAAAAAnAAAAcP///wAAAAAoAAAASv///wD///8A////AP///wAAAABKAAAAKP///wAAAABwAAAAJ////wD///8AAAAAgQAAABwAAACIAAAAkAAAAJMAAACtAAAAFQAAABUAAACtAAAAkwAAAJAAAACIAAAAHAAAAIH///8A////AAAAAKQAAACrAAAAaP///wD///8AAAAARQAAANIAAADSAAAARf///wD///8AAAAAaAAAAKsAAACk////AAAAADMAAACcAAAAnQAAABj///8A////AP///wAAAAAYAAAAGP///wD///8A////AAAAABgAAACdAAAAnAAAADMAAAB1AAAAwwAAAP8AAADpAAAAsQAAAE4AAAAb////AP///wAAAAAbAAAATgAAALEAAADpAAAA/wAAAMMAAAB1AAAAtwAAAOkAAAD/AAAA/wAAAP8AAADvAAAA3gAAAN4AAADeAAAA3gAAAO8AAAD/AAAA/wAAAP8AAADpAAAAtwAAAGUAAAA/AAAA3wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADfAAAAPwAAAGX///8A////AAAAAEgAAADtAAAAvwAAAL0AAADGAAAA7wAAAO8AAADGAAAAvQAAAL8AAADtAAAASP///wD///8A////AP///wD///8AAAAAO////wD///8A////AAAAAIcAAACH////AP///wD///8AAAAAO////wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A//8AAP//AAD4HwAA7/cAAN/7AAD//wAAoYUAAJ55AACf+QAAh+EAAAAAAADAAwAA4AcAAP5/AAD//wAA//8AAA=="/>
|
||
<link rel="icon" type="image/png" sizes="32x32" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAA3XAAAN1wFCKJt4AAAAB3RJTUUH4QQQEwksSS9ZWwAAAk1JREFUWMPtll2ITVEUx39nn/O7Y5qR8f05wtCUUr6ZIS++8pEnkZInPImneaCQ5METNdOkeFBKUhMPRIkHKfEuUZSUlGlKPN2TrgfncpvmnntnmlEyq1Z7t89/rf9a6+y99oZxGZf/XeIq61EdtgKXgdXA0xrYAvBjOIF1AI9zvjcC74BSpndrJPkBWDScTF8Aa4E3wDlgHbASaANmVqlcCnwHvgDvgVfAJ+AikAAvgfVZwLnSVZHZaOuKoQi3ZOMi4NkYkpe1p4J7A8BpYAD49hfIy/oqG0+hLomiKP2L5L+1ubn5115S+3OAn4EnwBlgMzCjyt6ZAnQCJ4A7wOs88iRJHvw50HoujuPBoCKwHWiosy8MdfZnAdcHk8dxXFJ3VQbQlCTJvRBCGdRbD4M6uc5glpY3eAihpN5S5w12diSEcCCEcKUO4ljdr15T76ur1FDDLIQQ3qv71EdDOe3Kxj3leRXyk+pxdWnFWod6Wt2bY3de3aSuUHcPBVimHs7mK9WrmeOF6lR1o9qnzskh2ar2qm1qizpfXaPeVGdlmGN5pb09qMxz1Xb1kLqgzn1RyH7JUXW52lr5e/Kqi9qpto7V1atuUzfnARrV7jEib1T76gG2qxdGmXyiekkt1GswPTtek0aBfJp6YySGBfWg2tPQ0FAYgf1stUfdmdcjarbYJEniKIq6gY/Aw+zWHAC+p2labGpqiorFYgGYCEzN7oQdQClN07O1/EfDyGgC0ALMBdYAi4FyK+4H3gLPsxfR1zRNi+NP7nH5J+QntnXe5B5mpfQAAAAASUVORK5CYII=">
|
||
|
||
<!-- CSS -->
|
||
<link rel="stylesheet" type="text/css" href="nimdoc.out.css?v=2.3.1">
|
||
|
||
<!-- JS -->
|
||
<script type="text/javascript" src="dochack.js?v=2.3.1"></script>
|
||
</head>
|
||
<body>
|
||
<div class="document" id="documentId">
|
||
<div class="container">
|
||
<h1 class="title">std/unicode</h1>
|
||
<div class="row">
|
||
<div class="three columns">
|
||
<div class="theme-select-wrapper">
|
||
<label for="theme-select">Theme: </label>
|
||
<select id="theme-select" onchange="setTheme(this.value)">
|
||
<option value="auto">🌗 Match OS</option>
|
||
<option value="dark">🌑 Dark</option>
|
||
<option value="light">🌕 Light</option>
|
||
</select>
|
||
</div>
|
||
<div id="global-links">
|
||
<ul class="simple-boot">
|
||
<li><a href="manual.html">Manual</a></li>
|
||
<li><a href="lib.html">Standard library</a></li>
|
||
<li> <a id="indexLink" href="theindex.html">Index</a></li>
|
||
<li><a href="compiler/theindex.html">Compiler docs</a></li>
|
||
<li><a href="https://nim-lang.github.io/fusion/theindex.html">Fusion docs</a></li>
|
||
<li><a href="https://nim-lang.github.io/Nim/">devel</a>, <a href="https://nim-lang.org/documentation.html">stable</a></li>
|
||
</ul>
|
||
</div>
|
||
<div id="searchInputDiv">
|
||
Search: <input type="search" id="searchInput"
|
||
oninput="search()" />
|
||
</div>
|
||
|
||
<ul class="simple simple-toc" id="toc-list">
|
||
<li>
|
||
<a class="reference reference-toplevel" href="#6" id="56">Imports</a>
|
||
</li>
|
||
<li>
|
||
<details open>
|
||
<summary><a class="reference reference-toplevel" href="#7" id="57">Types</a></summary>
|
||
<ul class="simple simple-toc-section">
|
||
<li><a class="reference" href="#Rune" title="Rune = distinct RuneImpl">Rune</a></li>
|
||
|
||
</ul>
|
||
</details>
|
||
</li>
|
||
<li>
|
||
<details open>
|
||
<summary><a class="reference reference-toplevel" href="#12" id="62">Procs</a></summary>
|
||
<ul class="simple simple-toc-section">
|
||
<ul class="simple nested-toc-section">$
|
||
<li><a class="reference" href="#%24%2CRune" title="`$`(rune: Rune): string">`$`(rune: Rune): string</a></li>
|
||
<li><a class="reference" href="#%24%2Cseq%5BRune%5D" title="`$`(runes: seq[Rune]): string">`$`(runes: seq[Rune]): string</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section"><%
|
||
<li><a class="reference" href="#%3C%25%2CRune%2CRune" title="`<%`(a, b: Rune): bool">`<%`(a, b: Rune): bool</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section"><=%
|
||
<li><a class="reference" href="#%3C%3D%25%2CRune%2CRune" title="`<=%`(a, b: Rune): bool">`<=%`(a, b: Rune): bool</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">==
|
||
<li><a class="reference" href="#%3D%3D%2CRune%2CRune" title="`==`(a, b: Rune): bool">`==`(a, b: Rune): bool</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">add
|
||
<li><a class="reference" href="#add%2Cstring%2CRune" title="add(s: var string; c: Rune)">add(s: var string; c: Rune)</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">align
|
||
<li><a class="reference" href="#align%2CopenArray%5Bchar%5D%2CNatural" title="align(s: openArray[char]; count: Natural; padding = ' '.Rune): string">align(s: openArray[char]; count: Natural; padding = ' '.Rune): string</a></li>
|
||
<li><a class="reference" href="#align%2Cstring%2CNatural" title="align(s: string; count: Natural; padding = ' '.Rune): string">align(s: string; count: Natural; padding = ' '.Rune): string</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">alignLeft
|
||
<li><a class="reference" href="#alignLeft%2CopenArray%5Bchar%5D%2CNatural" title="alignLeft(s: openArray[char]; count: Natural; padding = ' '.Rune): string">alignLeft(s: openArray[char]; count: Natural; padding = ' '.Rune): string</a></li>
|
||
<li><a class="reference" href="#alignLeft%2Cstring%2CNatural" title="alignLeft(s: string; count: Natural; padding = ' '.Rune): string">alignLeft(s: string; count: Natural; padding = ' '.Rune): string</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">capitalize
|
||
<li><a class="reference" href="#capitalize%2CopenArray%5Bchar%5D" title="capitalize(s: openArray[char]): string">capitalize(s: openArray[char]): string</a></li>
|
||
<li><a class="reference" href="#capitalize%2Cstring" title="capitalize(s: string): string">capitalize(s: string): string</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">cmpRunesIgnoreCase
|
||
<li><a class="reference" href="#cmpRunesIgnoreCase%2CopenArray%5Bchar%5D%2CopenArray%5Bchar%5D" title="cmpRunesIgnoreCase(a, b: openArray[char]): int">cmpRunesIgnoreCase(a, b: openArray[char]): int</a></li>
|
||
<li><a class="reference" href="#cmpRunesIgnoreCase%2Cstring%2Cstring" title="cmpRunesIgnoreCase(a, b: string): int">cmpRunesIgnoreCase(a, b: string): int</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">graphemeLen
|
||
<li><a class="reference" href="#graphemeLen%2CopenArray%5Bchar%5D%2CNatural" title="graphemeLen(s: openArray[char]; i: Natural): Natural">graphemeLen(s: openArray[char]; i: Natural): Natural</a></li>
|
||
<li><a class="reference" href="#graphemeLen%2Cstring%2CNatural" title="graphemeLen(s: string; i: Natural): Natural">graphemeLen(s: string; i: Natural): Natural</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">isAlpha
|
||
<li><a class="reference" href="#isAlpha%2CRune" title="isAlpha(c: Rune): bool">isAlpha(c: Rune): bool</a></li>
|
||
<li><a class="reference" href="#isAlpha%2CopenArray%5Bchar%5D" title="isAlpha(s: openArray[char]): bool">isAlpha(s: openArray[char]): bool</a></li>
|
||
<li><a class="reference" href="#isAlpha%2Cstring" title="isAlpha(s: string): bool">isAlpha(s: string): bool</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">isCombining
|
||
<li><a class="reference" href="#isCombining%2CRune" title="isCombining(c: Rune): bool">isCombining(c: Rune): bool</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">isLower
|
||
<li><a class="reference" href="#isLower%2CRune" title="isLower(c: Rune): bool">isLower(c: Rune): bool</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">isSpace
|
||
<li><a class="reference" href="#isSpace%2CopenArray%5Bchar%5D" title="isSpace(s: openArray[char]): bool">isSpace(s: openArray[char]): bool</a></li>
|
||
<li><a class="reference" href="#isSpace%2Cstring" title="isSpace(s: string): bool">isSpace(s: string): bool</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">isTitle
|
||
<li><a class="reference" href="#isTitle%2CRune" title="isTitle(c: Rune): bool">isTitle(c: Rune): bool</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">isUpper
|
||
<li><a class="reference" href="#isUpper%2CRune" title="isUpper(c: Rune): bool">isUpper(c: Rune): bool</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">isWhiteSpace
|
||
<li><a class="reference" href="#isWhiteSpace%2CRune" title="isWhiteSpace(c: Rune): bool">isWhiteSpace(c: Rune): bool</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">lastRune
|
||
<li><a class="reference" href="#lastRune%2CopenArray%5Bchar%5D%2Cint" title="lastRune(s: openArray[char]; last: int): (Rune, int)">lastRune(s: openArray[char]; last: int): (Rune, int)</a></li>
|
||
<li><a class="reference" href="#lastRune%2Cstring%2Cint" title="lastRune(s: string; last: int): (Rune, int)">lastRune(s: string; last: int): (Rune, int)</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">repeat
|
||
<li><a class="reference" href="#repeat%2CRune%2CNatural" title="repeat(c: Rune; count: Natural): string">repeat(c: Rune; count: Natural): string</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">reversed
|
||
<li><a class="reference" href="#reversed%2CopenArray%5Bchar%5D" title="reversed(s: openArray[char]): string">reversed(s: openArray[char]): string</a></li>
|
||
<li><a class="reference" href="#reversed%2Cstring" title="reversed(s: string): string">reversed(s: string): string</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">runeAt
|
||
<li><a class="reference" href="#runeAt%2CopenArray%5Bchar%5D%2CNatural" title="runeAt(s: openArray[char]; i: Natural): Rune">runeAt(s: openArray[char]; i: Natural): Rune</a></li>
|
||
<li><a class="reference" href="#runeAt%2Cstring%2CNatural" title="runeAt(s: string; i: Natural): Rune">runeAt(s: string; i: Natural): Rune</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">runeAtPos
|
||
<li><a class="reference" href="#runeAtPos%2CopenArray%5Bchar%5D%2Cint" title="runeAtPos(s: openArray[char]; pos: int): Rune">runeAtPos(s: openArray[char]; pos: int): Rune</a></li>
|
||
<li><a class="reference" href="#runeAtPos%2Cstring%2Cint" title="runeAtPos(s: string; pos: int): Rune">runeAtPos(s: string; pos: int): Rune</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">runeLen
|
||
<li><a class="reference" href="#runeLen%2CopenArray%5Bchar%5D" title="runeLen(s: openArray[char]): int">runeLen(s: openArray[char]): int</a></li>
|
||
<li><a class="reference" href="#runeLen%2Cstring" title="runeLen(s: string): int">runeLen(s: string): int</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">runeLenAt
|
||
<li><a class="reference" href="#runeLenAt%2CopenArray%5Bchar%5D%2CNatural" title="runeLenAt(s: openArray[char]; i: Natural): int">runeLenAt(s: openArray[char]; i: Natural): int</a></li>
|
||
<li><a class="reference" href="#runeLenAt%2Cstring%2CNatural" title="runeLenAt(s: string; i: Natural): int">runeLenAt(s: string; i: Natural): int</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">runeOffset
|
||
<li><a class="reference" href="#runeOffset%2CopenArray%5Bchar%5D%2CNatural%2CNatural" title="runeOffset(s: openArray[char]; pos: Natural; start: Natural = 0): int">runeOffset(s: openArray[char]; pos: Natural; start: Natural = 0): int</a></li>
|
||
<li><a class="reference" href="#runeOffset%2Cstring%2CNatural%2CNatural" title="runeOffset(s: string; pos: Natural; start: Natural = 0): int">runeOffset(s: string; pos: Natural; start: Natural = 0): int</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">runeReverseOffset
|
||
<li><a class="reference" href="#runeReverseOffset%2CopenArray%5Bchar%5D%2CPositive" title="runeReverseOffset(s: openArray[char]; rev: Positive): (int, int)">runeReverseOffset(s: openArray[char]; rev: Positive): (int, int)</a></li>
|
||
<li><a class="reference" href="#runeReverseOffset%2Cstring%2CPositive" title="runeReverseOffset(s: string; rev: Positive): (int, int)">runeReverseOffset(s: string; rev: Positive): (int, int)</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">runeStrAtPos
|
||
<li><a class="reference" href="#runeStrAtPos%2CopenArray%5Bchar%5D%2CNatural" title="runeStrAtPos(s: openArray[char]; pos: Natural): string">runeStrAtPos(s: openArray[char]; pos: Natural): string</a></li>
|
||
<li><a class="reference" href="#runeStrAtPos%2Cstring%2CNatural" title="runeStrAtPos(s: string; pos: Natural): string">runeStrAtPos(s: string; pos: Natural): string</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">runeSubStr
|
||
<li><a class="reference" href="#runeSubStr%2CopenArray%5Bchar%5D%2Cint%2Cint" title="runeSubStr(s: openArray[char]; pos: int; len: int = int.high): string">runeSubStr(s: openArray[char]; pos: int; len: int = int.high): string</a></li>
|
||
<li><a class="reference" href="#runeSubStr%2Cstring%2Cint%2Cint" title="runeSubStr(s: string; pos: int; len: int = int.high): string">runeSubStr(s: string; pos: int; len: int = int.high): string</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">size
|
||
<li><a class="reference" href="#size%2CRune" title="size(r: Rune): int">size(r: Rune): int</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">split
|
||
<li><a class="reference" href="#split%2CopenArray%5Bchar%5D%2CRune%2Cint" title="split(s: openArray[char]; sep: Rune; maxsplit: int = -1): seq[string]">split(s: openArray[char]; sep: Rune; maxsplit: int = -1): seq[string]</a></li>
|
||
<li><a class="reference" href="#split%2CopenArray%5Bchar%5D%2CopenArray%5BRune%5D%2Cint" title="split(s: openArray[char]; seps: openArray[Rune] = unicodeSpaces;
|
||
maxsplit: int = -1): seq[string]">split(s: openArray[char]; seps: openArray[Rune] = unicodeSpaces;
|
||
maxsplit: int = -1): seq[string]</a></li>
|
||
<li><a class="reference" href="#split%2Cstring%2CRune%2Cint" title="split(s: string; sep: Rune; maxsplit: int = -1): seq[string]">split(s: string; sep: Rune; maxsplit: int = -1): seq[string]</a></li>
|
||
<li><a class="reference" href="#split%2Cstring%2CopenArray%5BRune%5D%2Cint" title="split(s: string; seps: openArray[Rune] = unicodeSpaces; maxsplit: int = -1): seq[
|
||
string]">split(s: string; seps: openArray[Rune] = unicodeSpaces; maxsplit: int = -1): seq[
|
||
string]</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">splitWhitespace
|
||
<li><a class="reference" href="#splitWhitespace%2CopenArray%5Bchar%5D" title="splitWhitespace(s: openArray[char]): seq[string]">splitWhitespace(s: openArray[char]): seq[string]</a></li>
|
||
<li><a class="reference" href="#splitWhitespace%2Cstring" title="splitWhitespace(s: string): seq[string]">splitWhitespace(s: string): seq[string]</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">strip
|
||
<li><a class="reference" href="#strip%2CopenArray%5Bchar%5D%2CopenArray%5BRune%5D" title="strip(s: openArray[char]; leading = true; trailing = true;
|
||
runes: openArray[Rune] = unicodeSpaces): string">strip(s: openArray[char]; leading = true; trailing = true;
|
||
runes: openArray[Rune] = unicodeSpaces): string</a></li>
|
||
<li><a class="reference" href="#strip%2Cstring%2CopenArray%5BRune%5D" title="strip(s: string; leading = true; trailing = true;
|
||
runes: openArray[Rune] = unicodeSpaces): string">strip(s: string; leading = true; trailing = true;
|
||
runes: openArray[Rune] = unicodeSpaces): string</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">swapCase
|
||
<li><a class="reference" href="#swapCase%2CopenArray%5Bchar%5D" title="swapCase(s: openArray[char]): string">swapCase(s: openArray[char]): string</a></li>
|
||
<li><a class="reference" href="#swapCase%2Cstring" title="swapCase(s: string): string">swapCase(s: string): string</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">title
|
||
<li><a class="reference" href="#title%2CopenArray%5Bchar%5D" title="title(s: openArray[char]): string">title(s: openArray[char]): string</a></li>
|
||
<li><a class="reference" href="#title%2Cstring" title="title(s: string): string">title(s: string): string</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">toLower
|
||
<li><a class="reference" href="#toLower%2CRune" title="toLower(c: Rune): Rune">toLower(c: Rune): Rune</a></li>
|
||
<li><a class="reference" href="#toLower%2CopenArray%5Bchar%5D" title="toLower(s: openArray[char]): string">toLower(s: openArray[char]): string</a></li>
|
||
<li><a class="reference" href="#toLower%2Cstring" title="toLower(s: string): string">toLower(s: string): string</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">toRunes
|
||
<li><a class="reference" href="#toRunes%2CopenArray%5Bchar%5D" title="toRunes(s: openArray[char]): seq[Rune]">toRunes(s: openArray[char]): seq[Rune]</a></li>
|
||
<li><a class="reference" href="#toRunes%2Cstring" title="toRunes(s: string): seq[Rune]">toRunes(s: string): seq[Rune]</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">toTitle
|
||
<li><a class="reference" href="#toTitle%2CRune" title="toTitle(c: Rune): Rune">toTitle(c: Rune): Rune</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">toUpper
|
||
<li><a class="reference" href="#toUpper%2CRune" title="toUpper(c: Rune): Rune">toUpper(c: Rune): Rune</a></li>
|
||
<li><a class="reference" href="#toUpper%2CopenArray%5Bchar%5D" title="toUpper(s: openArray[char]): string">toUpper(s: openArray[char]): string</a></li>
|
||
<li><a class="reference" href="#toUpper%2Cstring" title="toUpper(s: string): string">toUpper(s: string): string</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">toUTF8
|
||
<li><a class="reference" href="#toUTF8%2CRune" title="toUTF8(c: Rune): string">toUTF8(c: Rune): string</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">translate
|
||
<li><a class="reference" href="#translate%2CopenArray%5Bchar%5D%2Cproc%28string%29" title="translate(s: openArray[char]; replacements: proc (key: string): string): string">translate(s: openArray[char]; replacements: proc (key: string): string): string</a></li>
|
||
<li><a class="reference" href="#translate%2Cstring%2Cproc%28string%29" title="translate(s: string; replacements: proc (key: string): string): string">translate(s: string; replacements: proc (key: string): string): string</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">validateUtf8
|
||
<li><a class="reference" href="#validateUtf8%2CopenArray%5Bchar%5D" title="validateUtf8(s: openArray[char]): int">validateUtf8(s: openArray[char]): int</a></li>
|
||
<li><a class="reference" href="#validateUtf8%2Cstring" title="validateUtf8(s: string): int">validateUtf8(s: string): int</a></li>
|
||
|
||
</ul>
|
||
|
||
</ul>
|
||
</details>
|
||
</li>
|
||
<li>
|
||
<details open>
|
||
<summary><a class="reference reference-toplevel" href="#15" id="65">Iterators</a></summary>
|
||
<ul class="simple simple-toc-section">
|
||
<ul class="simple nested-toc-section">runes
|
||
<li><a class="reference" href="#runes.i%2CopenArray%5Bchar%5D" title="runes(s: openArray[char]): Rune">runes(s: openArray[char]): Rune</a></li>
|
||
<li><a class="reference" href="#runes.i%2Cstring" title="runes(s: string): Rune">runes(s: string): Rune</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">split
|
||
<li><a class="reference" href="#split.i%2CopenArray%5Bchar%5D%2CRune%2Cint" title="split(s: openArray[char]; sep: Rune; maxsplit: int = -1): string">split(s: openArray[char]; sep: Rune; maxsplit: int = -1): string</a></li>
|
||
<li><a class="reference" href="#split.i%2CopenArray%5Bchar%5D%2CopenArray%5BRune%5D%2Cint" title="split(s: openArray[char]; seps: openArray[Rune] = unicodeSpaces;
|
||
maxsplit: int = -1): string">split(s: openArray[char]; seps: openArray[Rune] = unicodeSpaces;
|
||
maxsplit: int = -1): string</a></li>
|
||
<li><a class="reference" href="#split.i%2Cstring%2CRune%2Cint" title="split(s: string; sep: Rune; maxsplit: int = -1): string">split(s: string; sep: Rune; maxsplit: int = -1): string</a></li>
|
||
<li><a class="reference" href="#split.i%2Cstring%2CopenArray%5BRune%5D%2Cint" title="split(s: string; seps: openArray[Rune] = unicodeSpaces; maxsplit: int = -1): string">split(s: string; seps: openArray[Rune] = unicodeSpaces; maxsplit: int = -1): string</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">splitWhitespace
|
||
<li><a class="reference" href="#splitWhitespace.i%2CopenArray%5Bchar%5D" title="splitWhitespace(s: openArray[char]): string">splitWhitespace(s: openArray[char]): string</a></li>
|
||
<li><a class="reference" href="#splitWhitespace.i%2Cstring" title="splitWhitespace(s: string): string">splitWhitespace(s: string): string</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">utf8
|
||
<li><a class="reference" href="#utf8.i%2CopenArray%5Bchar%5D" title="utf8(s: openArray[char]): string">utf8(s: openArray[char]): string</a></li>
|
||
<li><a class="reference" href="#utf8.i%2Cstring" title="utf8(s: string): string">utf8(s: string): string</a></li>
|
||
|
||
</ul>
|
||
|
||
</ul>
|
||
</details>
|
||
</li>
|
||
<li>
|
||
<details open>
|
||
<summary><a class="reference reference-toplevel" href="#18" id="68">Templates</a></summary>
|
||
<ul class="simple simple-toc-section">
|
||
<ul class="simple nested-toc-section">fastRuneAt
|
||
<li><a class="reference" href="#fastRuneAt.t%2C%2Cint%2Cuntyped" title="fastRuneAt(s: openArray[char] or string; i: int; result: untyped; doInc = true)">fastRuneAt(s: openArray[char] or string; i: int; result: untyped; doInc = true)</a></li>
|
||
|
||
</ul>
|
||
<ul class="simple nested-toc-section">fastToUTF8Copy
|
||
<li><a class="reference" href="#fastToUTF8Copy.t%2CRune%2Cstring%2Cint" title="fastToUTF8Copy(c: Rune; s: var string; pos: int; doInc = true)">fastToUTF8Copy(c: Rune; s: var string; pos: int; doInc = true)</a></li>
|
||
|
||
</ul>
|
||
|
||
</ul>
|
||
</details>
|
||
</li>
|
||
|
||
</ul>
|
||
|
||
</div>
|
||
<div class="nine columns" id="content">
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
<div id="tocRoot"></div>
|
||
|
||
<p class="module-desc"><p>This module provides support to handle the Unicode UTF-8 encoding.</p>
|
||
<p>There are no specialized <tt class="docutils literal"><span class="pre">insert</span></tt>, <tt class="docutils literal"><span class="pre">delete</span></tt>, <tt class="docutils literal"><span class="pre">add</span></tt> and <tt class="docutils literal"><span class="pre">contains</span></tt> procedures for <tt class="docutils literal"><span class="pre">seq[Rune]</span></tt> in this module because the generic variants of these procedures in the system module already work with it.</p>
|
||
<p>The current version is compatible with Unicode v12.0.0.</p>
|
||
<p><strong>See also:</strong></p>
|
||
<ul class="simple"><li><a class="reference external" href="strutils.html">strutils module</a></li>
|
||
<li><a class="reference external" href="unidecode.html">unidecode module</a></li>
|
||
<li><a class="reference external" href="encodings.html">encodings module</a></li>
|
||
</ul>
|
||
</p>
|
||
<div class="section" id="6">
|
||
<h1><a class="toc-backref" href="#6">Imports</a></h1>
|
||
<dl class="item">
|
||
<a class="reference external" href="strbasics.html">strbasics</a>
|
||
</dl>
|
||
</div>
|
||
<div class="section" id="7">
|
||
<h1><a class="toc-backref" href="#7">Types</a></h1>
|
||
<dl class="item">
|
||
<div id="Rune">
|
||
<dt><pre><a href="unicode.html#Rune"><span class="Identifier">Rune</span></a> <span class="Other">=</span> <span class="Keyword">distinct</span> <span class="Identifier">RuneImpl</span></pre></dt>
|
||
<dd>
|
||
|
||
<p>
|
||
Type that can hold a single Unicode code point.</p>
|
||
<p>A Rune may be composed with other Runes to a character on the screen. <tt class="docutils literal"><span class="pre"><span class="Identifier">RuneImpl</span></span></tt> is the underlying type used to store Runes, currently <tt class="docutils literal"><span class="pre"><span class="Identifier">int32</span></span></tt>.</p>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L37" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L37" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</dl>
|
||
</div>
|
||
<div class="section" id="12">
|
||
<h1><a class="toc-backref" href="#12">Procs</a></h1>
|
||
<dl class="item">
|
||
<div id="$-procs-all">
|
||
<div id="$,Rune">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#%24%2CRune"><span class="Identifier">`$`</span></a><span class="Other">(</span><span class="Identifier">rune</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>An alias for <a class="reference external" href="#toUTF8,Rune">toUTF8</a>.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#validateUtf8,string">validateUtf8 proc</a></li>
|
||
<li><a class="reference external" href="#fastToUTF8Copy.t,Rune,string,int">fastToUTF8Copy template</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L290" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L290" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="$,seq[Rune]">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#%24%2Cseq%5BRune%5D"><span class="Identifier">`$`</span></a><span class="Other">(</span><span class="Identifier">runes</span><span class="Other">:</span> <a href="system.html#seq"><span class="Identifier">seq</span></a><span class="Other">[</span><a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Converts a sequence of Runes to a string.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#toRunes,string">toRunes</a> for a reverse operation</li>
|
||
</ul>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span>
|
||
<span class="Identifier">someString</span> <span class="Operator">=</span> <span class="StringLit">"öÑ"</span>
|
||
<span class="Identifier">someRunes</span> <span class="Operator">=</span> <span class="Identifier">toRunes</span><span class="Punctuation">(</span><span class="Identifier">someString</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Identifier">someRunes</span> <span class="Operator">==</span> <span class="Identifier">someString</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L298" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L298" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="<%-procs-all">
|
||
<div id="<%,Rune,Rune">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#%3C%25%2CRune%2CRune"><span class="Identifier">`<%`</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">,</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#bool"><span class="Identifier">bool</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Checks if code point of <tt class="docutils literal"><span class="pre"><span class="Identifier">a</span></span></tt> is smaller than code point of <tt class="docutils literal"><span class="pre"><span class="Identifier">b</span></span></tt>.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span>
|
||
<span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"ú"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">b</span> <span class="Operator">=</span> <span class="StringLit">"ü"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span> <span class="Operator"><%</span> <span class="Identifier">b</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L451" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L451" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="<=%-procs-all">
|
||
<div id="<=%,Rune,Rune">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#%3C%3D%25%2CRune%2CRune"><span class="Identifier">`<=%`</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">,</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#bool"><span class="Identifier">bool</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Checks if code point of <tt class="docutils literal"><span class="pre"><span class="Identifier">a</span></span></tt> is smaller or equal to code point of <tt class="docutils literal"><span class="pre"><span class="Identifier">b</span></span></tt>.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span>
|
||
<span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"ú"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">b</span> <span class="Operator">=</span> <span class="StringLit">"ü"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span> <span class="Operator"><=%</span> <span class="Identifier">b</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L442" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L442" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="==-procs-all">
|
||
<div id="==,Rune,Rune">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#%3D%3D%2CRune%2CRune"><span class="Identifier">`==`</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">,</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#bool"><span class="Identifier">bool</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Checks if two runes are equal.
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L460" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L460" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="add-procs-all">
|
||
<div id="add,string,Rune">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#add%2Cstring%2CRune"><span class="Identifier">add</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Adds a rune <tt class="docutils literal"><span class="pre">c</span></tt> to a string <tt class="docutils literal"><span class="pre">s</span></tt>.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">var</span> <span class="Identifier">s</span> <span class="Operator">=</span> <span class="StringLit">"abc"</span>
|
||
<span class="Keyword">let</span> <span class="Identifier">c</span> <span class="Operator">=</span> <span class="StringLit">"ä"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">s</span><span class="Operator">.</span><span class="Identifier">add</span><span class="Punctuation">(</span><span class="Identifier">c</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">s</span> <span class="Operator">==</span> <span class="StringLit">"abcä"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L279" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L279" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="align-procs-all">
|
||
<div id="align,openArray[char],Natural">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#align%2CopenArray%5Bchar%5D%2CNatural"><span class="Identifier">align</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">count</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a><span class="Other">;</span> <span class="Identifier">padding</span> <span class="Other">=</span> <span class="CharLit">' '</span><span class="Other">.</span><span class="Identifier">Rune</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.
|
||
<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nucAlignString"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Aligns a unicode string <tt class="docutils literal"><span class="pre">s</span></tt> with <tt class="docutils literal"><span class="pre">padding</span></tt>, so that it has a rune-length of <tt class="docutils literal"><span class="pre">count</span></tt>.</p>
|
||
<p><tt class="docutils literal"><span class="pre">padding</span></tt> characters (by default spaces) are added before <tt class="docutils literal"><span class="pre">s</span></tt> resulting in right alignment. If <tt class="docutils literal"><span class="pre">s.runelen >= count</span></tt>, no spaces are added and <tt class="docutils literal"><span class="pre">s</span></tt> is returned unchanged. If you need to left align a string use the <a class="reference external" href="#alignLeft,string,Natural">alignLeft proc</a>.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Identifier">assert</span> <span class="Identifier">align</span><span class="Punctuation">(</span><span class="StringLit">"abc"</span><span class="Punctuation">,</span> <span class="DecNumber">4</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">" abc"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">align</span><span class="Punctuation">(</span><span class="StringLit">"a"</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"a"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">align</span><span class="Punctuation">(</span><span class="StringLit">"1232"</span><span class="Punctuation">,</span> <span class="DecNumber">6</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">" 1232"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">align</span><span class="Punctuation">(</span><span class="StringLit">"1232"</span><span class="Punctuation">,</span> <span class="DecNumber">6</span><span class="Punctuation">,</span> <span class="CharLit">'#'</span><span class="Operator">.</span><span class="Identifier">Rune</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"##1232"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">align</span><span class="Punctuation">(</span><span class="StringLit">"Åge"</span><span class="Punctuation">,</span> <span class="DecNumber">5</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">" Åge"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">align</span><span class="Punctuation">(</span><span class="StringLit">"×"</span><span class="Punctuation">,</span> <span class="DecNumber">4</span><span class="Punctuation">,</span> <span class="CharLit">'_'</span><span class="Operator">.</span><span class="Identifier">Rune</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"___×"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1115" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1115" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="align,string,Natural">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#align%2Cstring%2CNatural"><span class="Identifier">align</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">count</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a><span class="Other">;</span> <span class="Identifier">padding</span> <span class="Other">=</span> <span class="CharLit">' '</span><span class="Other">.</span><span class="Identifier">Rune</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.
|
||
<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Aligns a unicode string <tt class="docutils literal"><span class="pre">s</span></tt> with <tt class="docutils literal"><span class="pre">padding</span></tt>, so that it has a rune-length of <tt class="docutils literal"><span class="pre">count</span></tt>.</p>
|
||
<p><tt class="docutils literal"><span class="pre">padding</span></tt> characters (by default spaces) are added before <tt class="docutils literal"><span class="pre">s</span></tt> resulting in right alignment. If <tt class="docutils literal"><span class="pre">s.runelen >= count</span></tt>, no spaces are added and <tt class="docutils literal"><span class="pre">s</span></tt> is returned unchanged. If you need to left align a string use the <a class="reference external" href="#alignLeft,string,Natural">alignLeft proc</a>.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Identifier">assert</span> <span class="Identifier">align</span><span class="Punctuation">(</span><span class="StringLit">"abc"</span><span class="Punctuation">,</span> <span class="DecNumber">4</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">" abc"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">align</span><span class="Punctuation">(</span><span class="StringLit">"a"</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"a"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">align</span><span class="Punctuation">(</span><span class="StringLit">"1232"</span><span class="Punctuation">,</span> <span class="DecNumber">6</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">" 1232"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">align</span><span class="Punctuation">(</span><span class="StringLit">"1232"</span><span class="Punctuation">,</span> <span class="DecNumber">6</span><span class="Punctuation">,</span> <span class="CharLit">'#'</span><span class="Operator">.</span><span class="Identifier">Rune</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"##1232"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">align</span><span class="Punctuation">(</span><span class="StringLit">"Åge"</span><span class="Punctuation">,</span> <span class="DecNumber">5</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">" Åge"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">align</span><span class="Punctuation">(</span><span class="StringLit">"×"</span><span class="Punctuation">,</span> <span class="DecNumber">4</span><span class="Punctuation">,</span> <span class="CharLit">'_'</span><span class="Operator">.</span><span class="Identifier">Rune</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"___×"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1495" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1495" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="alignLeft-procs-all">
|
||
<div id="alignLeft,openArray[char],Natural">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#alignLeft%2CopenArray%5Bchar%5D%2CNatural"><span class="Identifier">alignLeft</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">count</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a><span class="Other">;</span> <span class="Identifier">padding</span> <span class="Other">=</span> <span class="CharLit">' '</span><span class="Other">.</span><span class="Identifier">Rune</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.
|
||
<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Left-aligns a unicode string <tt class="docutils literal"><span class="pre">s</span></tt> with <tt class="docutils literal"><span class="pre">padding</span></tt>, so that it has a rune-length of <tt class="docutils literal"><span class="pre">count</span></tt>.</p>
|
||
<p><tt class="docutils literal"><span class="pre">padding</span></tt> characters (by default spaces) are added after <tt class="docutils literal"><span class="pre">s</span></tt> resulting in left alignment. If <tt class="docutils literal"><span class="pre">s.runelen >= count</span></tt>, no spaces are added and <tt class="docutils literal"><span class="pre">s</span></tt> is returned unchanged. If you need to right align a string use the <a class="reference external" href="#align,string,Natural">align proc</a>.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Identifier">assert</span> <span class="Identifier">alignLeft</span><span class="Punctuation">(</span><span class="StringLit">"abc"</span><span class="Punctuation">,</span> <span class="DecNumber">4</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"abc "</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">alignLeft</span><span class="Punctuation">(</span><span class="StringLit">"a"</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"a"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">alignLeft</span><span class="Punctuation">(</span><span class="StringLit">"1232"</span><span class="Punctuation">,</span> <span class="DecNumber">6</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"1232 "</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">alignLeft</span><span class="Punctuation">(</span><span class="StringLit">"1232"</span><span class="Punctuation">,</span> <span class="DecNumber">6</span><span class="Punctuation">,</span> <span class="CharLit">'#'</span><span class="Operator">.</span><span class="Identifier">Rune</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"1232##"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">alignLeft</span><span class="Punctuation">(</span><span class="StringLit">"Åge"</span><span class="Punctuation">,</span> <span class="DecNumber">5</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"Åge "</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">alignLeft</span><span class="Punctuation">(</span><span class="StringLit">"×"</span><span class="Punctuation">,</span> <span class="DecNumber">4</span><span class="Punctuation">,</span> <span class="CharLit">'_'</span><span class="Operator">.</span><span class="Identifier">Rune</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"×___"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1142" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1142" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="alignLeft,string,Natural">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#alignLeft%2Cstring%2CNatural"><span class="Identifier">alignLeft</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">count</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a><span class="Other">;</span> <span class="Identifier">padding</span> <span class="Other">=</span> <span class="CharLit">' '</span><span class="Other">.</span><span class="Identifier">Rune</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.
|
||
<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Left-aligns a unicode string <tt class="docutils literal"><span class="pre">s</span></tt> with <tt class="docutils literal"><span class="pre">padding</span></tt>, so that it has a rune-length of <tt class="docutils literal"><span class="pre">count</span></tt>.</p>
|
||
<p><tt class="docutils literal"><span class="pre">padding</span></tt> characters (by default spaces) are added after <tt class="docutils literal"><span class="pre">s</span></tt> resulting in left alignment. If <tt class="docutils literal"><span class="pre">s.runelen >= count</span></tt>, no spaces are added and <tt class="docutils literal"><span class="pre">s</span></tt> is returned unchanged. If you need to right align a string use the <a class="reference external" href="#align,string,Natural">align proc</a>.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Identifier">assert</span> <span class="Identifier">alignLeft</span><span class="Punctuation">(</span><span class="StringLit">"abc"</span><span class="Punctuation">,</span> <span class="DecNumber">4</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"abc "</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">alignLeft</span><span class="Punctuation">(</span><span class="StringLit">"a"</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"a"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">alignLeft</span><span class="Punctuation">(</span><span class="StringLit">"1232"</span><span class="Punctuation">,</span> <span class="DecNumber">6</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"1232 "</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">alignLeft</span><span class="Punctuation">(</span><span class="StringLit">"1232"</span><span class="Punctuation">,</span> <span class="DecNumber">6</span><span class="Punctuation">,</span> <span class="CharLit">'#'</span><span class="Operator">.</span><span class="Identifier">Rune</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"1232##"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">alignLeft</span><span class="Punctuation">(</span><span class="StringLit">"Åge"</span><span class="Punctuation">,</span> <span class="DecNumber">5</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"Åge "</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">alignLeft</span><span class="Punctuation">(</span><span class="StringLit">"×"</span><span class="Punctuation">,</span> <span class="DecNumber">4</span><span class="Punctuation">,</span> <span class="CharLit">'_'</span><span class="Operator">.</span><span class="Identifier">Rune</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"×___"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1512" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1512" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="capitalize-procs-all">
|
||
<div id="capitalize,openArray[char]">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#capitalize%2CopenArray%5Bchar%5D"><span class="Identifier">capitalize</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span>
|
||
<span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Converts the first character of <tt class="docutils literal"><span class="pre">s</span></tt> into an upper-case rune.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">capitalize</span><span class="Punctuation">(</span><span class="StringLit">"βeta"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"Βeta"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L712" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L712" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="capitalize,string">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#capitalize%2Cstring"><span class="Identifier">capitalize</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Converts the first character of <tt class="docutils literal"><span class="pre">s</span></tt> into an upper-case rune.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">capitalize</span><span class="Punctuation">(</span><span class="StringLit">"βeta"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"Βeta"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1328" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1328" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="cmpRunesIgnoreCase-procs-all">
|
||
<div id="cmpRunesIgnoreCase,openArray[char],openArray[char]">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#cmpRunesIgnoreCase%2CopenArray%5Bchar%5D%2CopenArray%5Bchar%5D"><span class="Identifier">cmpRunesIgnoreCase</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">,</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1"</span><span class="Other">,</span>
|
||
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Compares two UTF-8 strings and ignores the case. Returns:<p><tt class="docutils literal"><span class="pre"><span class="DecNumber">0</span></span></tt> if a == b<br/><tt class="docutils literal"><span class="pre"><span class="Operator"><</span> <span class="DecNumber">0</span></span></tt> if a < b<br/><tt class="docutils literal"><span class="pre"><span class="Operator">></span> <span class="DecNumber">0</span></span></tt> if a > b<br/></p>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L844" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L844" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="cmpRunesIgnoreCase,string,string">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#cmpRunesIgnoreCase%2Cstring%2Cstring"><span class="Identifier">cmpRunesIgnoreCase</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">,</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> {.<span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Compares two UTF-8 strings and ignores the case. Returns:<p><tt class="docutils literal"><span class="pre"><span class="DecNumber">0</span></span></tt> if a == b<br/><tt class="docutils literal"><span class="pre"><span class="Operator"><</span> <span class="DecNumber">0</span></span></tt> if a < b<br/><tt class="docutils literal"><span class="pre"><span class="Operator">></span> <span class="DecNumber">0</span></span></tt> if a > b<br/></p>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1387" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1387" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="graphemeLen-procs-all">
|
||
<div id="graphemeLen,openArray[char],Natural">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#graphemeLen%2CopenArray%5Bchar%5D%2CNatural"><span class="Identifier">graphemeLen</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">i</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
The number of bytes belonging to byte index <tt class="docutils literal"><span class="pre">s[i]</span></tt>, including following combining code units.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"añyóng"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">graphemeLen</span><span class="Punctuation">(</span><span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">2</span> <span class="Comment">## ñ</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">graphemeLen</span><span class="Punctuation">(</span><span class="DecNumber">2</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">1</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">graphemeLen</span><span class="Punctuation">(</span><span class="DecNumber">4</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">2</span> <span class="Comment">## ó</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L901" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L901" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="graphemeLen,string,Natural">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#graphemeLen%2Cstring%2CNatural"><span class="Identifier">graphemeLen</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">i</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a> {.<span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
The number of bytes belonging to byte index <tt class="docutils literal"><span class="pre">s[i]</span></tt>, including following combining code unit.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"añyóng"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">graphemeLen</span><span class="Punctuation">(</span><span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">2</span> <span class="Comment">## ñ</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">graphemeLen</span><span class="Punctuation">(</span><span class="DecNumber">2</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">1</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">graphemeLen</span><span class="Punctuation">(</span><span class="DecNumber">4</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">2</span> <span class="Comment">## ó</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1406" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1406" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="isAlpha-procs-all">
|
||
<div id="isAlpha,Rune">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#isAlpha%2CRune"><span class="Identifier">isAlpha</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#bool"><span class="Identifier">bool</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns true if <tt class="docutils literal"><span class="pre">c</span></tt> is an <em>alpha</em> rune (i.e., a letter).</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#isLower,Rune">isLower proc</a></li>
|
||
<li><a class="reference external" href="#isTitle,Rune">isTitle proc</a></li>
|
||
<li><a class="reference external" href="#isAlpha,Rune">isAlpha proc</a></li>
|
||
<li><a class="reference external" href="#isWhiteSpace,Rune">isWhiteSpace proc</a></li>
|
||
<li><a class="reference external" href="#isCombining,Rune">isCombining proc</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L573" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L573" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="isAlpha,openArray[char]">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#isAlpha%2CopenArray%5Bchar%5D"><span class="Identifier">isAlpha</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#bool"><span class="Identifier">bool</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span>
|
||
<span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1Str"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Returns true if <tt class="docutils literal"><span class="pre">s</span></tt> contains all alphabetic runes.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"añyóng"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">isAlpha</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L647" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L647" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="isAlpha,string">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#isAlpha%2Cstring"><span class="Identifier">isAlpha</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#bool"><span class="Identifier">bool</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Returns true if <tt class="docutils literal"><span class="pre">s</span></tt> contains all alphabetic runes.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"añyóng"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">isAlpha</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1292" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1292" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="isCombining-procs-all">
|
||
<div id="isCombining,Rune">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#isCombining%2CRune"><span class="Identifier">isCombining</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#bool"><span class="Identifier">bool</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns true if <tt class="docutils literal"><span class="pre">c</span></tt> is a Unicode combining code unit.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#isLower,Rune">isLower proc</a></li>
|
||
<li><a class="reference external" href="#isUpper,Rune">isUpper proc</a></li>
|
||
<li><a class="reference external" href="#isTitle,Rune">isTitle proc</a></li>
|
||
<li><a class="reference external" href="#isAlpha,Rune">isAlpha proc</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L620" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L620" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="isLower-procs-all">
|
||
<div id="isLower,Rune">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#isLower%2CRune"><span class="Identifier">isLower</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#bool"><span class="Identifier">bool</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns true if <tt class="docutils literal"><span class="pre">c</span></tt> is a lower case rune.</p>
|
||
<p>If possible, prefer <tt class="docutils literal"><span class="pre">isLower</span></tt> over <tt class="docutils literal"><span class="pre">isUpper</span></tt>.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#toLower,Rune">toLower proc</a></li>
|
||
<li><a class="reference external" href="#isUpper,Rune">isUpper proc</a></li>
|
||
<li><a class="reference external" href="#isTitle,Rune">isTitle proc</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L531" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L531" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="isSpace-procs-all">
|
||
<div id="isSpace,openArray[char]">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#isSpace%2CopenArray%5Bchar%5D"><span class="Identifier">isSpace</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#bool"><span class="Identifier">bool</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span>
|
||
<span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1Str"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Returns true if <tt class="docutils literal"><span class="pre">s</span></tt> contains all whitespace runes.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"</span><span class="EscapeSequence">\t</span><span class="EscapeSequence">\l</span><span class="StringLit"> </span><span class="EscapeSequence">\v</span><span class="EscapeSequence">\r</span><span class="EscapeSequence">\f</span><span class="StringLit">"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">isSpace</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L655" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L655" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="isSpace,string">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#isSpace%2Cstring"><span class="Identifier">isSpace</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#bool"><span class="Identifier">bool</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Returns true if <tt class="docutils literal"><span class="pre">s</span></tt> contains all whitespace runes.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"</span><span class="EscapeSequence">\t</span><span class="EscapeSequence">\l</span><span class="StringLit"> </span><span class="EscapeSequence">\v</span><span class="EscapeSequence">\r</span><span class="EscapeSequence">\f</span><span class="StringLit">"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">isSpace</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1299" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1299" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="isTitle-procs-all">
|
||
<div id="isTitle,Rune">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#isTitle%2CRune"><span class="Identifier">isTitle</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#bool"><span class="Identifier">bool</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns true if <tt class="docutils literal"><span class="pre">c</span></tt> is a Unicode titlecase code point.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#toTitle,Rune">toTitle proc</a></li>
|
||
<li><a class="reference external" href="#isLower,Rune">isLower proc</a></li>
|
||
<li><a class="reference external" href="#isUpper,Rune">isUpper proc</a></li>
|
||
<li><a class="reference external" href="#isAlpha,Rune">isAlpha proc</a></li>
|
||
<li><a class="reference external" href="#isWhiteSpace,Rune">isWhiteSpace proc</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L594" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L594" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="isUpper-procs-all">
|
||
<div id="isUpper,Rune">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#isUpper%2CRune"><span class="Identifier">isUpper</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#bool"><span class="Identifier">bool</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns true if <tt class="docutils literal"><span class="pre">c</span></tt> is a upper case rune.</p>
|
||
<p>If possible, prefer <tt class="docutils literal"><span class="pre">isLower</span></tt> over <tt class="docutils literal"><span class="pre">isUpper</span></tt>.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#toUpper,Rune">toUpper proc</a></li>
|
||
<li><a class="reference external" href="#isLower,Rune">isLower proc</a></li>
|
||
<li><a class="reference external" href="#isTitle,Rune">isTitle proc</a></li>
|
||
<li><a class="reference external" href="#isAlpha,Rune">isAlpha proc</a></li>
|
||
<li><a class="reference external" href="#isWhiteSpace,Rune">isWhiteSpace proc</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L551" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L551" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="isWhiteSpace-procs-all">
|
||
<div id="isWhiteSpace,Rune">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#isWhiteSpace%2CRune"><span class="Identifier">isWhiteSpace</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#bool"><span class="Identifier">bool</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns true if <tt class="docutils literal"><span class="pre">c</span></tt> is a Unicode whitespace code point.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#isLower,Rune">isLower proc</a></li>
|
||
<li><a class="reference external" href="#isUpper,Rune">isUpper proc</a></li>
|
||
<li><a class="reference external" href="#isTitle,Rune">isTitle proc</a></li>
|
||
<li><a class="reference external" href="#isAlpha,Rune">isAlpha proc</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L605" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L605" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="lastRune-procs-all">
|
||
<div id="lastRune,openArray[char],int">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#lastRune%2CopenArray%5Bchar%5D%2Cint"><span class="Identifier">lastRune</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">last</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Other">(</span><a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">,</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Length of the last rune in <tt class="docutils literal"><span class="pre">s[0..last]</span></tt>. Returns the rune and its length in bytes.
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L920" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L920" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="lastRune,string,int">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#lastRune%2Cstring%2Cint"><span class="Identifier">lastRune</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">last</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Other">(</span><a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">,</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">)</span> {.<span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Length of the last rune in <tt class="docutils literal"><span class="pre">s[0..last]</span></tt>. Returns the rune and its length in bytes.
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1416" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1416" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="repeat-procs-all">
|
||
<div id="repeat,Rune,Natural">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#repeat%2CRune%2CNatural"><span class="Identifier">repeat</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">;</span> <span class="Identifier">count</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span>
|
||
<span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nucRepeatRune"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns a string of <tt class="docutils literal"><span class="pre">count</span></tt> Runes <tt class="docutils literal"><span class="pre">c</span></tt>.</p>
|
||
<p>The returned string will have a rune-length of <tt class="docutils literal"><span class="pre">count</span></tt>.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"ñ"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">repeat</span><span class="Punctuation">(</span><span class="DecNumber">5</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"ñññññ"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1101" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1101" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="reversed-procs-all">
|
||
<div id="reversed,openArray[char]">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#reversed%2CopenArray%5Bchar%5D"><span class="Identifier">reversed</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns the reverse of <tt class="docutils literal"><span class="pre">s</span></tt>, interpreting it as runes.</p>
|
||
<p>Unicode combining characters are correctly interpreted as well.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Identifier">assert</span> <span class="Identifier">reversed</span><span class="Punctuation">(</span><span class="StringLit">"Reverse this!"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"!siht esreveR"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">reversed</span><span class="Punctuation">(</span><span class="StringLit">"先秦兩漢"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"漢兩秦先"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">reversed</span><span class="Punctuation">(</span><span class="StringLit">"as⃝df̅"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"f̅ds⃝a"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">reversed</span><span class="Punctuation">(</span><span class="StringLit">"a⃞b⃞c⃞"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"c⃞b⃞a⃞"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L866" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L866" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="reversed,string">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#reversed%2Cstring"><span class="Identifier">reversed</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns the reverse of <tt class="docutils literal"><span class="pre">s</span></tt>, interpreting it as runes.</p>
|
||
<p>Unicode combining characters are correctly interpreted as well.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Identifier">assert</span> <span class="Identifier">reversed</span><span class="Punctuation">(</span><span class="StringLit">"Reverse this!"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"!siht esreveR"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">reversed</span><span class="Punctuation">(</span><span class="StringLit">"先秦兩漢"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"漢兩秦先"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">reversed</span><span class="Punctuation">(</span><span class="StringLit">"as⃝df̅"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"f̅ds⃝a"</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">reversed</span><span class="Punctuation">(</span><span class="StringLit">"a⃞b⃞c⃞"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"c⃞b⃞a⃞"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1395" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1395" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="runeAt-procs-all">
|
||
<div id="runeAt,openArray[char],Natural">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#runeAt%2CopenArray%5Bchar%5D%2CNatural"><span class="Identifier">runeAt</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">i</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a><span class="Other">)</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns the rune in <tt class="docutils literal"><span class="pre">s</span></tt> at <strong>byte index</strong> <tt class="docutils literal"><span class="pre">i</span></tt>.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#runeAtPos,string,int">runeAtPos proc</a></li>
|
||
<li><a class="reference external" href="#runeStrAtPos,string,Natural">runeStrAtPos proc</a></li>
|
||
<li><a class="reference external" href="#fastRuneAt.t,string,int,untyped">fastRuneAt template</a></li>
|
||
</ul>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"añyóng"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"ñ"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">2</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"ñ"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">1</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">3</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"y"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L162" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L162" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="runeAt,string,Natural">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#runeAt%2Cstring%2CNatural"><span class="Identifier">runeAt</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">i</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a><span class="Other">)</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a> {.<span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns the rune in <tt class="docutils literal"><span class="pre">s</span></tt> at <strong>byte index</strong> <tt class="docutils literal"><span class="pre">i</span></tt>.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#runeAtPos,string,int">runeAtPos proc</a></li>
|
||
<li><a class="reference external" href="#runeStrAtPos,string,Natural">runeStrAtPos proc</a></li>
|
||
<li><a class="reference external" href="#fastRuneAt.t,string,int,untyped">fastRuneAt template</a></li>
|
||
</ul>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"añyóng"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"ñ"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">2</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"ñ"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">1</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">3</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"y"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1188" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1188" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="runeAtPos-procs-all">
|
||
<div id="runeAtPos,openArray[char],int">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#runeAtPos%2CopenArray%5Bchar%5D%2Cint"><span class="Identifier">runeAtPos</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">pos</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">)</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns the rune at position <tt class="docutils literal"><span class="pre">pos</span></tt>.</p>
|
||
<p><strong>Beware:</strong> This can lead to unoptimized code and slow execution! Most problems can be solved more efficiently by using an iterator or conversion to a seq of Rune.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#runeAt,string,Natural">runeAt proc</a></li>
|
||
<li><a class="reference external" href="#runeStrAtPos,string,Natural">runeStrAtPos proc</a></li>
|
||
<li><a class="reference external" href="#fastRuneAt.t,string,int,untyped">fastRuneAt template</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L368" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L368" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="runeAtPos,string,int">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#runeAtPos%2Cstring%2Cint"><span class="Identifier">runeAtPos</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">pos</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">)</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a> {.<span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns the rune at position <tt class="docutils literal"><span class="pre">pos</span></tt>.</p>
|
||
<p><strong>Beware:</strong> This can lead to unoptimized code and slow execution! Most problems can be solved more efficiently by using an iterator or conversion to a seq of Rune.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#runeAt,string,Natural">runeAt proc</a></li>
|
||
<li><a class="reference external" href="#runeStrAtPos,string,Natural">runeStrAtPos proc</a></li>
|
||
<li><a class="reference external" href="#fastRuneAt.t,string,int,untyped">fastRuneAt template</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1247" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1247" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="runeLen-procs-all">
|
||
<div id="runeLen,openArray[char]">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#runeLen%2CopenArray%5Bchar%5D"><span class="Identifier">runeLen</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Returns the number of runes of the string <tt class="docutils literal"><span class="pre">s</span></tt>.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"añyóng"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeLen</span> <span class="Operator">==</span> <span class="DecNumber">6</span>
|
||
<span class="Comment">## note: a.len == 8</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L45" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L45" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="runeLen,string">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#runeLen%2Cstring"><span class="Identifier">runeLen</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> {.<span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Returns the number of runes of the string <tt class="docutils literal"><span class="pre">s</span></tt>.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"añyóng"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeLen</span> <span class="Operator">==</span> <span class="DecNumber">6</span>
|
||
<span class="Comment">## note: a.len == 8</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1169" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1169" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="runeLenAt-procs-all">
|
||
<div id="runeLenAt,openArray[char],Natural">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#runeLenAt%2CopenArray%5Bchar%5D%2CNatural"><span class="Identifier">runeLenAt</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">i</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns the number of bytes the rune starting at <tt class="docutils literal"><span class="pre">s[i]</span></tt> takes.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#fastRuneAt.t,string,int,untyped">fastRuneAt template</a></li>
|
||
</ul>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"añyóng"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeLenAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">1</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeLenAt</span><span class="Punctuation">(</span><span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">2</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L64" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L64" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="runeLenAt,string,Natural">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#runeLenAt%2Cstring%2CNatural"><span class="Identifier">runeLenAt</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">i</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> {.<span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns the number of bytes the rune starting at <tt class="docutils literal"><span class="pre">s[i]</span></tt> takes.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#fastRuneAt.t,string,int,untyped">fastRuneAt template</a></li>
|
||
</ul>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"añyóng"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeLenAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">1</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeLenAt</span><span class="Punctuation">(</span><span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">2</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1177" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1177" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="runeOffset-procs-all">
|
||
<div id="runeOffset,openArray[char],Natural,Natural">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#runeOffset%2CopenArray%5Bchar%5D%2CNatural%2CNatural"><span class="Identifier">runeOffset</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">pos</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a><span class="Other">;</span> <span class="Identifier">start</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a> <span class="Other">=</span> <span class="DecNumber">0</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> {.
|
||
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns the byte position of rune at position <tt class="docutils literal"><span class="pre">pos</span></tt> in <tt class="docutils literal"><span class="pre">s</span></tt> with an optional start byte position. Returns the special value -1 if it runs out of the string.</p>
|
||
<p><strong>Beware:</strong> This can lead to unoptimized code and slow execution! Most problems can be solved more efficiently by using an iterator or conversion to a seq of Rune.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#runeReverseOffset,string,Positive">runeReverseOffset proc</a></li>
|
||
</ul>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"añyóng"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeOffset</span><span class="Punctuation">(</span><span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">1</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeOffset</span><span class="Punctuation">(</span><span class="DecNumber">3</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">4</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeOffset</span><span class="Punctuation">(</span><span class="DecNumber">4</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">6</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L313" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L313" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="runeOffset,string,Natural,Natural">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#runeOffset%2Cstring%2CNatural%2CNatural"><span class="Identifier">runeOffset</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">pos</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a><span class="Other">;</span> <span class="Identifier">start</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a> <span class="Other">=</span> <span class="DecNumber">0</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> {.<span class="Identifier">inline</span><span class="Other">,</span>
|
||
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns the byte position of rune at position <tt class="docutils literal"><span class="pre">pos</span></tt> in <tt class="docutils literal"><span class="pre">s</span></tt> with an optional start byte position. Returns the special value -1 if it runs out of the string.</p>
|
||
<p><strong>Beware:</strong> This can lead to unoptimized code and slow execution! Most problems can be solved more efficiently by using an iterator or conversion to a seq of Rune.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#runeReverseOffset,string,Positive">runeReverseOffset proc</a></li>
|
||
</ul>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"añyóng"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeOffset</span><span class="Punctuation">(</span><span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">1</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeOffset</span><span class="Punctuation">(</span><span class="DecNumber">3</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">4</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeOffset</span><span class="Punctuation">(</span><span class="DecNumber">4</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">6</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1212" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1212" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="runeReverseOffset-procs-all">
|
||
<div id="runeReverseOffset,openArray[char],Positive">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#runeReverseOffset%2CopenArray%5Bchar%5D%2CPositive"><span class="Identifier">runeReverseOffset</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">rev</span><span class="Other">:</span> <a href="system.html#Positive"><span class="Identifier">Positive</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Other">(</span><a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">,</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">)</span> {.
|
||
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns a tuple with the byte offset of the rune at position <tt class="docutils literal"><span class="pre">rev</span></tt> in <tt class="docutils literal"><span class="pre">s</span></tt>, counting from the end (starting with 1) and the total number of runes in the string.</p>
|
||
<p>Returns a negative value for offset if there are too few runes in the string to satisfy the request.</p>
|
||
<p><strong>Beware:</strong> This can lead to unoptimized code and slow execution! Most problems can be solved more efficiently by using an iterator or conversion to a seq of Rune.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#runeOffset,string,Natural,Natural">runeOffset proc</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L340" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L340" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="runeReverseOffset,string,Positive">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#runeReverseOffset%2Cstring%2CPositive"><span class="Identifier">runeReverseOffset</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">rev</span><span class="Other">:</span> <a href="system.html#Positive"><span class="Identifier">Positive</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Other">(</span><a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">,</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">)</span> {.<span class="Identifier">inline</span><span class="Other">,</span>
|
||
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns a tuple with the byte offset of the rune at position <tt class="docutils literal"><span class="pre">rev</span></tt> in <tt class="docutils literal"><span class="pre">s</span></tt>, counting from the end (starting with 1) and the total number of runes in the string.</p>
|
||
<p>Returns a negative value for offset if there are too few runes in the string to satisfy the request.</p>
|
||
<p><strong>Beware:</strong> This can lead to unoptimized code and slow execution! Most problems can be solved more efficiently by using an iterator or conversion to a seq of Rune.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#runeOffset,string,Natural,Natural">runeOffset proc</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1230" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1230" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="runeStrAtPos-procs-all">
|
||
<div id="runeStrAtPos,openArray[char],Natural">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#runeStrAtPos%2CopenArray%5Bchar%5D%2CNatural"><span class="Identifier">runeStrAtPos</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">pos</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns the rune at position <tt class="docutils literal"><span class="pre">pos</span></tt> as UTF8 String.</p>
|
||
<p><strong>Beware:</strong> This can lead to unoptimized code and slow execution! Most problems can be solved more efficiently by using an iterator or conversion to a seq of Rune.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#runeAt,string,Natural">runeAt proc</a></li>
|
||
<li><a class="reference external" href="#runeAtPos,string,int">runeAtPos proc</a></li>
|
||
<li><a class="reference external" href="#fastRuneAt.t,string,int,untyped">fastRuneAt template</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L381" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L381" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="runeStrAtPos,string,Natural">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#runeStrAtPos%2Cstring%2CNatural"><span class="Identifier">runeStrAtPos</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">pos</span><span class="Other">:</span> <a href="system.html#Natural"><span class="Identifier">Natural</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns the rune at position <tt class="docutils literal"><span class="pre">pos</span></tt> as UTF8 String.</p>
|
||
<p><strong>Beware:</strong> This can lead to unoptimized code and slow execution! Most problems can be solved more efficiently by using an iterator or conversion to a seq of Rune.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#runeAt,string,Natural">runeAt proc</a></li>
|
||
<li><a class="reference external" href="#runeAtPos,string,int">runeAtPos proc</a></li>
|
||
<li><a class="reference external" href="#fastRuneAt.t,string,int,untyped">fastRuneAt template</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1260" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1260" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="runeSubStr-procs-all">
|
||
<div id="runeSubStr,openArray[char],int,int">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#runeSubStr%2CopenArray%5Bchar%5D%2Cint%2Cint"><span class="Identifier">runeSubStr</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">pos</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">;</span> <span class="Identifier">len</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Other">=</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">.</span><span class="Identifier">high</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.
|
||
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns the UTF-8 substring starting at code point <tt class="docutils literal"><span class="pre">pos</span></tt> with <tt class="docutils literal"><span class="pre">len</span></tt> code points.</p>
|
||
<p>If <tt class="docutils literal"><span class="pre">pos</span></tt> or <tt class="docutils literal"><span class="pre">len</span></tt> is negative they count from the end of the string. If <tt class="docutils literal"><span class="pre">len</span></tt> is not given it means the longest possible string.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">s</span> <span class="Operator">=</span> <span class="StringLit">"Hänsel ««: 10,00€"</span>
|
||
<span class="Identifier">doAssert</span><span class="Punctuation">(</span><span class="Identifier">runeSubStr</span><span class="Punctuation">(</span><span class="Identifier">s</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">,</span> <span class="DecNumber">2</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"Hä"</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span><span class="Punctuation">(</span><span class="Identifier">runeSubStr</span><span class="Punctuation">(</span><span class="Identifier">s</span><span class="Punctuation">,</span> <span class="DecNumber">10</span><span class="Punctuation">,</span> <span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">":"</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span><span class="Punctuation">(</span><span class="Identifier">runeSubStr</span><span class="Punctuation">(</span><span class="Identifier">s</span><span class="Punctuation">,</span> <span class="Operator">-</span><span class="DecNumber">6</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"10,00€"</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span><span class="Punctuation">(</span><span class="Identifier">runeSubStr</span><span class="Punctuation">(</span><span class="Identifier">s</span><span class="Punctuation">,</span> <span class="DecNumber">10</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">": 10,00€"</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span><span class="Punctuation">(</span><span class="Identifier">runeSubStr</span><span class="Punctuation">(</span><span class="Identifier">s</span><span class="Punctuation">,</span> <span class="DecNumber">12</span><span class="Punctuation">,</span> <span class="DecNumber">5</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"10,00"</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span><span class="Punctuation">(</span><span class="Identifier">runeSubStr</span><span class="Punctuation">(</span><span class="Identifier">s</span><span class="Punctuation">,</span> <span class="Operator">-</span><span class="DecNumber">6</span><span class="Punctuation">,</span> <span class="DecNumber">3</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"10,"</span><span class="Punctuation">)</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L395" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L395" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="runeSubStr,string,int,int">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#runeSubStr%2Cstring%2Cint%2Cint"><span class="Identifier">runeSubStr</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">pos</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">;</span> <span class="Identifier">len</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Other">=</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">.</span><span class="Identifier">high</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span class="Identifier">inline</span><span class="Other">,</span>
|
||
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns the UTF-8 substring starting at code point <tt class="docutils literal"><span class="pre">pos</span></tt> with <tt class="docutils literal"><span class="pre">len</span></tt> code points.</p>
|
||
<p>If <tt class="docutils literal"><span class="pre">pos</span></tt> or <tt class="docutils literal"><span class="pre">len</span></tt> is negative they count from the end of the string. If <tt class="docutils literal"><span class="pre">len</span></tt> is not given it means the longest possible string.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">s</span> <span class="Operator">=</span> <span class="StringLit">"Hänsel ««: 10,00€"</span>
|
||
<span class="Identifier">doAssert</span><span class="Punctuation">(</span><span class="Identifier">runeSubStr</span><span class="Punctuation">(</span><span class="Identifier">s</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">,</span> <span class="DecNumber">2</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"Hä"</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span><span class="Punctuation">(</span><span class="Identifier">runeSubStr</span><span class="Punctuation">(</span><span class="Identifier">s</span><span class="Punctuation">,</span> <span class="DecNumber">10</span><span class="Punctuation">,</span> <span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">":"</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span><span class="Punctuation">(</span><span class="Identifier">runeSubStr</span><span class="Punctuation">(</span><span class="Identifier">s</span><span class="Punctuation">,</span> <span class="Operator">-</span><span class="DecNumber">6</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"10,00€"</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span><span class="Punctuation">(</span><span class="Identifier">runeSubStr</span><span class="Punctuation">(</span><span class="Identifier">s</span><span class="Punctuation">,</span> <span class="DecNumber">10</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">": 10,00€"</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span><span class="Punctuation">(</span><span class="Identifier">runeSubStr</span><span class="Punctuation">(</span><span class="Identifier">s</span><span class="Punctuation">,</span> <span class="DecNumber">12</span><span class="Punctuation">,</span> <span class="DecNumber">5</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"10,00"</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span><span class="Punctuation">(</span><span class="Identifier">runeSubStr</span><span class="Punctuation">(</span><span class="Identifier">s</span><span class="Punctuation">,</span> <span class="Operator">-</span><span class="DecNumber">6</span><span class="Punctuation">,</span> <span class="DecNumber">3</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"10,"</span><span class="Punctuation">)</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1274" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1274" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="size-procs-all">
|
||
<div id="size,Rune">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#size%2CRune"><span class="Identifier">size</span></a><span class="Other">(</span><span class="Identifier">r</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Returns the number of bytes the rune <tt class="docutils literal"><span class="pre">r</span></tt> takes.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="Identifier">toRunes</span> <span class="StringLit">"aá"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">size</span><span class="Punctuation">(</span><span class="Identifier">a</span><span class="Punctuation">[</span><span class="DecNumber">0</span><span class="Punctuation">]</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">1</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">size</span><span class="Punctuation">(</span><span class="Identifier">a</span><span class="Punctuation">[</span><span class="DecNumber">1</span><span class="Punctuation">]</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">2</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L932" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L932" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="split-procs-all">
|
||
<div id="split,openArray[char],Rune,int">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#split%2CopenArray%5Bchar%5D%2CRune%2Cint"><span class="Identifier">split</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">sep</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">;</span> <span class="Identifier">maxsplit</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Other">=</span> <span class="DecNumber">-1</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#seq"><span class="Identifier">seq</span></a><span class="Other">[</span><a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">]</span> {.
|
||
<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nucSplitRune"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
The same as the <a class="reference external" href="#split.i,string,Rune,int">split iterator</a>, but is a proc that returns a sequence of substrings.
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1034" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1034" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="split,openArray[char],openArray[Rune],int">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#split%2CopenArray%5Bchar%5D%2CopenArray%5BRune%5D%2Cint"><span class="Identifier">split</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">seps</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">]</span> <span class="Other">=</span> <span class="Identifier">unicodeSpaces</span><span class="Other">;</span>
|
||
<span class="Identifier">maxsplit</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Other">=</span> <span class="DecNumber">-1</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#seq"><span class="Identifier">seq</span></a><span class="Other">[</span><a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">]</span> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span>
|
||
<span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nucSplitRunes"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
The same as the <a class="reference external" href="#split.i,string,openArray[Rune],int">split iterator</a>, but is a proc that returns a sequence of substrings.
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1028" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1028" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="split,string,Rune,int">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#split%2Cstring%2CRune%2Cint"><span class="Identifier">split</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">sep</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">;</span> <span class="Identifier">maxsplit</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Other">=</span> <span class="DecNumber">-1</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#seq"><span class="Identifier">seq</span></a><span class="Other">[</span><a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">]</span> {.
|
||
<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
The same as the <a class="reference external" href="#split.i,string,Rune,int">split iterator</a>, but is a proc that returns a sequence of substrings.
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1474" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1474" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="split,string,openArray[Rune],int">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#split%2Cstring%2CopenArray%5BRune%5D%2Cint"><span class="Identifier">split</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">seps</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">]</span> <span class="Other">=</span> <span class="Identifier">unicodeSpaces</span><span class="Other">;</span> <span class="Identifier">maxsplit</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Other">=</span> <span class="DecNumber">-1</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#seq"><span class="Identifier">seq</span></a><span class="Other">[</span>
|
||
<a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">]</span> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
The same as the <a class="reference external" href="#split.i,string,openArray[Rune],int">split iterator</a>, but is a proc that returns a sequence of substrings.
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1468" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1468" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="splitWhitespace-procs-all">
|
||
<div id="splitWhitespace,openArray[char]">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#splitWhitespace%2CopenArray%5Bchar%5D"><span class="Identifier">splitWhitespace</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#seq"><span class="Identifier">seq</span></a><span class="Other">[</span><a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">]</span> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span>
|
||
<span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"ncuSplitWhitespace"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
The same as the <a class="reference external" href="#splitWhitespace.i,string">splitWhitespace</a> iterator, but is a proc that returns a sequence of substrings.
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1011" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1011" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="splitWhitespace,string">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#splitWhitespace%2Cstring"><span class="Identifier">splitWhitespace</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#seq"><span class="Identifier">seq</span></a><span class="Other">[</span><a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">]</span> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
The same as the <a class="reference external" href="#splitWhitespace.i,string">splitWhitespace</a> iterator, but is a proc that returns a sequence of substrings.
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1452" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1452" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="strip-procs-all">
|
||
<div id="strip,openArray[char],openArray[Rune]">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#strip%2CopenArray%5Bchar%5D%2CopenArray%5BRune%5D"><span class="Identifier">strip</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">leading</span> <span class="Other">=</span> <span class="Identifier">true</span><span class="Other">;</span> <span class="Identifier">trailing</span> <span class="Other">=</span> <span class="Identifier">true</span><span class="Other">;</span>
|
||
<span class="Identifier">runes</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">]</span> <span class="Other">=</span> <span class="Identifier">unicodeSpaces</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span>
|
||
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nucStrip"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Strips leading or trailing <tt class="docutils literal"><span class="pre">runes</span></tt> from <tt class="docutils literal"><span class="pre">s</span></tt> and returns the resulting string.</p>
|
||
<p>If <tt class="docutils literal"><span class="pre">leading</span></tt> is true (default), leading <tt class="docutils literal"><span class="pre">runes</span></tt> are stripped. If <tt class="docutils literal"><span class="pre">trailing</span></tt> is true (default), trailing <tt class="docutils literal"><span class="pre">runes</span></tt> are stripped. If both are false, the string is returned unchanged.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"</span><span class="EscapeSequence">\t</span><span class="StringLit">áñyóng "</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">strip</span> <span class="Operator">==</span> <span class="StringLit">"áñyóng"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">strip</span><span class="Punctuation">(</span><span class="Identifier">leading</span> <span class="Operator">=</span> <span class="Identifier">false</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"</span><span class="EscapeSequence">\t</span><span class="StringLit">áñyóng"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">strip</span><span class="Punctuation">(</span><span class="Identifier">trailing</span> <span class="Operator">=</span> <span class="Identifier">false</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"áñyóng "</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1053" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1053" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="strip,string,openArray[Rune]">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#strip%2Cstring%2CopenArray%5BRune%5D"><span class="Identifier">strip</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">leading</span> <span class="Other">=</span> <span class="Identifier">true</span><span class="Other">;</span> <span class="Identifier">trailing</span> <span class="Other">=</span> <span class="Identifier">true</span><span class="Other">;</span>
|
||
<span class="Identifier">runes</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">]</span> <span class="Other">=</span> <span class="Identifier">unicodeSpaces</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span>
|
||
<span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Strips leading or trailing <tt class="docutils literal"><span class="pre">runes</span></tt> from <tt class="docutils literal"><span class="pre">s</span></tt> and returns the resulting string.</p>
|
||
<p>If <tt class="docutils literal"><span class="pre">leading</span></tt> is true (default), leading <tt class="docutils literal"><span class="pre">runes</span></tt> are stripped. If <tt class="docutils literal"><span class="pre">trailing</span></tt> is true (default), trailing <tt class="docutils literal"><span class="pre">runes</span></tt> are stripped. If both are false, the string is returned unchanged.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"</span><span class="EscapeSequence">\t</span><span class="StringLit">áñyóng "</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">strip</span> <span class="Operator">==</span> <span class="StringLit">"áñyóng"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">strip</span><span class="Punctuation">(</span><span class="Identifier">leading</span> <span class="Operator">=</span> <span class="Identifier">false</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"</span><span class="EscapeSequence">\t</span><span class="StringLit">áñyóng"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">strip</span><span class="Punctuation">(</span><span class="Identifier">trailing</span> <span class="Operator">=</span> <span class="Identifier">false</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"áñyóng "</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1479" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1479" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="swapCase-procs-all">
|
||
<div id="swapCase,openArray[char]">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#swapCase%2CopenArray%5Bchar%5D"><span class="Identifier">swapCase</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span>
|
||
<span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Swaps the case of runes in <tt class="docutils literal"><span class="pre">s</span></tt>.</p>
|
||
<p>Returns a new string such that the cases of all runes are swapped if possible.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">swapCase</span><span class="Punctuation">(</span><span class="StringLit">"Αlpha Βeta Γamma"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"αLPHA βETA γAMMA"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L690" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L690" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="swapCase,string">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#swapCase%2Cstring"><span class="Identifier">swapCase</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Swaps the case of runes in <tt class="docutils literal"><span class="pre">s</span></tt>.</p>
|
||
<p>Returns a new string such that the cases of all runes are swapped if possible.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">swapCase</span><span class="Punctuation">(</span><span class="StringLit">"Αlpha Βeta Γamma"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"αLPHA βETA γAMMA"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1319" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1319" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="title-procs-all">
|
||
<div id="title,openArray[char]">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#title%2CopenArray%5Bchar%5D"><span class="Identifier">title</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1"</span><span class="Other">,</span>
|
||
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Converts <tt class="docutils literal"><span class="pre">s</span></tt> to a unicode title.</p>
|
||
<p>Returns a new string such that the first character in each word inside <tt class="docutils literal"><span class="pre">s</span></tt> is capitalized.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">title</span><span class="Punctuation">(</span><span class="StringLit">"αlpha βeta γamma"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"Αlpha Βeta Γamma"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L782" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L782" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="title,string">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#title%2Cstring"><span class="Identifier">title</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Converts <tt class="docutils literal"><span class="pre">s</span></tt> to a unicode title.</p>
|
||
<p>Returns a new string such that the first character in each word inside <tt class="docutils literal"><span class="pre">s</span></tt> is capitalized.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">title</span><span class="Punctuation">(</span><span class="StringLit">"αlpha βeta γamma"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"Αlpha Βeta Γamma"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1351" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1351" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="toLower-procs-all">
|
||
<div id="toLower,Rune">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#toLower%2CRune"><span class="Identifier">toLower</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">)</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Converts <tt class="docutils literal"><span class="pre">c</span></tt> into lower case. This works for any rune.</p>
|
||
<p>If possible, prefer <tt class="docutils literal"><span class="pre">toLower</span></tt> over <tt class="docutils literal"><span class="pre">toUpper</span></tt>.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#toUpper,Rune">toUpper proc</a></li>
|
||
<li><a class="reference external" href="#toTitle,Rune">toTitle proc</a></li>
|
||
<li><a class="reference external" href="#isLower,Rune">isLower proc</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L482" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L482" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="toLower,openArray[char]">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#toLower%2CopenArray%5Bchar%5D"><span class="Identifier">toLower</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span>
|
||
<span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1Str"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Converts <tt class="docutils literal"><span class="pre">s</span></tt> into lower-case runes.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">toLower</span><span class="Punctuation">(</span><span class="StringLit">"ABΓ"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"abγ"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L683" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L683" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="toLower,string">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#toLower%2Cstring"><span class="Identifier">toLower</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Converts <tt class="docutils literal"><span class="pre">s</span></tt> into lower-case runes.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">toLower</span><span class="Punctuation">(</span><span class="StringLit">"ABΓ"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"abγ"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1313" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1313" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="toRunes-procs-all">
|
||
<div id="toRunes,openArray[char]">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#toRunes%2CopenArray%5Bchar%5D"><span class="Identifier">toRunes</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#seq"><span class="Identifier">seq</span></a><span class="Other">[</span><a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">]</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Obtains a sequence containing the Runes in <tt class="docutils literal"><span class="pre">s</span></tt>.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#$,Rune">$ proc</a> for a reverse operation</li>
|
||
</ul>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="Identifier">toRunes</span><span class="Punctuation">(</span><span class="StringLit">"aáä"</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span> <span class="Operator">==</span> <span class="Operator">@</span><span class="Punctuation">[</span><span class="StringLit">"a"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span><span class="Punctuation">,</span> <span class="StringLit">"á"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span><span class="Punctuation">,</span> <span class="StringLit">"ä"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span><span class="Punctuation">]</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L831" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L831" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="toRunes,string">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#toRunes%2Cstring"><span class="Identifier">toRunes</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#seq"><span class="Identifier">seq</span></a><span class="Other">[</span><a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">]</span> {.<span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Obtains a sequence containing the Runes in <tt class="docutils literal"><span class="pre">s</span></tt>.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#$,Rune">$ proc</a> for a reverse operation</li>
|
||
</ul>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="Identifier">toRunes</span><span class="Punctuation">(</span><span class="StringLit">"aáä"</span><span class="Punctuation">)</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span> <span class="Operator">==</span> <span class="Operator">@</span><span class="Punctuation">[</span><span class="StringLit">"a"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span><span class="Punctuation">,</span> <span class="StringLit">"á"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span><span class="Punctuation">,</span> <span class="StringLit">"ä"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span><span class="Punctuation">]</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1377" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1377" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="toTitle-procs-all">
|
||
<div id="toTitle,Rune">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#toTitle%2CRune"><span class="Identifier">toTitle</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">)</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Converts <tt class="docutils literal"><span class="pre">c</span></tt> to title case.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#toLower,Rune">toLower proc</a></li>
|
||
<li><a class="reference external" href="#toUpper,Rune">toUpper proc</a></li>
|
||
<li><a class="reference external" href="#isTitle,Rune">isTitle proc</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L518" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L518" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="toUpper-procs-all">
|
||
<div id="toUpper,Rune">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#toUpper%2CRune"><span class="Identifier">toUpper</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">)</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Converts <tt class="docutils literal"><span class="pre">c</span></tt> into upper case. This works for any rune.</p>
|
||
<p>If possible, prefer <tt class="docutils literal"><span class="pre">toLower</span></tt> over <tt class="docutils literal"><span class="pre">toUpper</span></tt>.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#toLower,Rune">toLower proc</a></li>
|
||
<li><a class="reference external" href="#toTitle,Rune">toTitle proc</a></li>
|
||
<li><a class="reference external" href="#isUpper,Rune">isUpper proc</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L500" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L500" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="toUpper,openArray[char]">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#toUpper%2CopenArray%5Bchar%5D"><span class="Identifier">toUpper</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span>
|
||
<span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1Str"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Converts <tt class="docutils literal"><span class="pre">s</span></tt> into upper-case runes.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">toUpper</span><span class="Punctuation">(</span><span class="StringLit">"abγ"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"ABΓ"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L676" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L676" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="toUpper,string">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#toUpper%2Cstring"><span class="Identifier">toUpper</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span class="Identifier">noSideEffect</span><span class="Other">,</span> <span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Converts <tt class="docutils literal"><span class="pre">s</span></tt> into upper-case runes.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">toUpper</span><span class="Punctuation">(</span><span class="StringLit">"abγ"</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"ABΓ"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1307" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1307" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="toUTF8-procs-all">
|
||
<div id="toUTF8,Rune">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#toUTF8%2CRune"><span class="Identifier">toUTF8</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1"</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Converts a rune into its UTF-8 representation.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#validateUtf8,string">validateUtf8 proc</a></li>
|
||
<li><a class="reference external" href="#$,Rune">$ proc</a> alias for <tt class="docutils literal"><span class="pre"><span class="Identifier">toUTF8</span></span></tt></li>
|
||
<li><a class="reference external" href="#utf8.i,string">utf8 iterator</a></li>
|
||
<li><a class="reference external" href="#fastToUTF8Copy.t,Rune,string,int">fastToUTF8Copy template</a></li>
|
||
</ul>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"añyóng"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">1</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">toUTF8</span> <span class="Operator">==</span> <span class="StringLit">"ñ"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L264" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L264" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="translate-procs-all">
|
||
<div id="translate,openArray[char],proc(string)">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#translate%2CopenArray%5Bchar%5D%2Cproc%28string%29"><span class="Identifier">translate</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">replacements</span><span class="Other">:</span> <span class="Keyword">proc</span> <span class="Other">(</span><span class="Identifier">key</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.
|
||
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nuc$1"</span><span class="Other">,</span> </span><span class="Identifier">effectsOf</span><span class="Other">:</span> <span class="Identifier">replacements</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Translates words in a string using the <tt class="docutils literal"><span class="pre">replacements</span></tt> proc to substitute words inside <tt class="docutils literal"><span class="pre">s</span></tt> with their replacements.</p>
|
||
<p><tt class="docutils literal"><span class="pre">replacements</span></tt> is any proc that takes a word and returns a new word to fill it's place.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">proc</span> <span class="Identifier">wordToNumber</span><span class="Punctuation">(</span><span class="Identifier">s</span><span class="Punctuation">:</span> <span class="Identifier">string</span><span class="Punctuation">)</span><span class="Punctuation">:</span> <span class="Identifier">string</span> <span class="Operator">=</span>
|
||
<span class="Keyword">case</span> <span class="Identifier">s</span>
|
||
<span class="Keyword">of</span> <span class="StringLit">"one"</span><span class="Punctuation">:</span> <span class="StringLit">"1"</span>
|
||
<span class="Keyword">of</span> <span class="StringLit">"two"</span><span class="Punctuation">:</span> <span class="StringLit">"2"</span>
|
||
<span class="Keyword">else</span><span class="Punctuation">:</span> <span class="Identifier">s</span>
|
||
<span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"one two three four"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">translate</span><span class="Punctuation">(</span><span class="Identifier">wordToNumber</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"1 2 three four"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L729" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L729" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="translate,string,proc(string)">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#translate%2Cstring%2Cproc%28string%29"><span class="Identifier">translate</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">replacements</span><span class="Other">:</span> <span class="Keyword">proc</span> <span class="Other">(</span><span class="Identifier">key</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.
|
||
<span class="Identifier">effectsOf</span><span class="Other">:</span> <span class="Identifier">replacements</span><span class="Other">,</span> <span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Translates words in a string using the <tt class="docutils literal"><span class="pre">replacements</span></tt> proc to substitute words inside <tt class="docutils literal"><span class="pre">s</span></tt> with their replacements.</p>
|
||
<p><tt class="docutils literal"><span class="pre">replacements</span></tt> is any proc that takes a word and returns a new word to fill it's place.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">proc</span> <span class="Identifier">wordToNumber</span><span class="Punctuation">(</span><span class="Identifier">s</span><span class="Punctuation">:</span> <span class="Identifier">string</span><span class="Punctuation">)</span><span class="Punctuation">:</span> <span class="Identifier">string</span> <span class="Operator">=</span>
|
||
<span class="Keyword">case</span> <span class="Identifier">s</span>
|
||
<span class="Keyword">of</span> <span class="StringLit">"one"</span><span class="Punctuation">:</span> <span class="StringLit">"1"</span>
|
||
<span class="Keyword">of</span> <span class="StringLit">"two"</span><span class="Punctuation">:</span> <span class="StringLit">"2"</span>
|
||
<span class="Keyword">else</span><span class="Punctuation">:</span> <span class="Identifier">s</span>
|
||
<span class="Keyword">let</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="StringLit">"one two three four"</span>
|
||
<span class="Identifier">doAssert</span> <span class="Identifier">a</span><span class="Operator">.</span><span class="Identifier">translate</span><span class="Punctuation">(</span><span class="Identifier">wordToNumber</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"1 2 three four"</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1335" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1335" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="validateUtf8-procs-all">
|
||
<div id="validateUtf8,openArray[char]">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#validateUtf8%2CopenArray%5Bchar%5D"><span class="Identifier">validateUtf8</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns the position of the invalid byte in <tt class="docutils literal"><span class="pre">s</span></tt> if the string <tt class="docutils literal"><span class="pre">s</span></tt> does not hold valid UTF-8 data. Otherwise <tt class="docutils literal"><span class="pre">-1</span></tt> is returned.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#toUTF8,Rune">toUTF8 proc</a></li>
|
||
<li><a class="reference external" href="#$,Rune">$ proc</a> alias for <tt class="docutils literal"><span class="pre"><span class="Identifier">toUTF8</span></span></tt></li>
|
||
<li><a class="reference external" href="#fastToUTF8Copy.t,Rune,string,int">fastToUTF8Copy template</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L176" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L176" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="validateUtf8,string">
|
||
<dt><pre><span class="Keyword">proc</span> <a href="#validateUtf8%2Cstring"><span class="Identifier">validateUtf8</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> {.<span class="Identifier">inline</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns the position of the invalid byte in <tt class="docutils literal"><span class="pre">s</span></tt> if the string <tt class="docutils literal"><span class="pre">s</span></tt> does not hold valid UTF-8 data. Otherwise <tt class="docutils literal"><span class="pre">-1</span></tt> is returned.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#toUTF8,Rune">toUTF8 proc</a></li>
|
||
<li><a class="reference external" href="#$,Rune">$ proc</a> alias for <tt class="docutils literal"><span class="pre"><span class="Identifier">toUTF8</span></span></tt></li>
|
||
<li><a class="reference external" href="#fastToUTF8Copy.t,Rune,string,int">fastToUTF8Copy template</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1202" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1202" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
</dl>
|
||
</div>
|
||
<div class="section" id="15">
|
||
<h1><a class="toc-backref" href="#15">Iterators</a></h1>
|
||
<dl class="item">
|
||
<div id="runes-iterators-all">
|
||
<div id="runes.i,openArray[char]">
|
||
<dt><pre><span class="Keyword">iterator</span> <a href="#runes.i%2CopenArray%5Bchar%5D"><span class="Identifier">runes</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Iterates over any rune of the string <tt class="docutils literal"><span class="pre">s</span></tt> returning runes.
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L808" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L808" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="runes.i,string">
|
||
<dt><pre><span class="Keyword">iterator</span> <a href="#runes.i%2Cstring"><span class="Identifier">runes</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Iterates over any rune of the string <tt class="docutils literal"><span class="pre">s</span></tt> returning runes.
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1361" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1361" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="split-iterators-all">
|
||
<div id="split.i,openArray[char],Rune,int">
|
||
<dt><pre><span class="Keyword">iterator</span> <a href="#split.i%2CopenArray%5Bchar%5D%2CRune%2Cint"><span class="Identifier">split</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">sep</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">;</span> <span class="Identifier">maxsplit</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Other">=</span> <span class="DecNumber">-1</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.
|
||
<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Splits the unicode string <tt class="docutils literal"><span class="pre">s</span></tt> into substrings using a single separator. Substrings are separated by the rune <tt class="docutils literal"><span class="pre">sep</span></tt>.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">import</span> <span class="Identifier">std</span><span class="Operator">/</span><span class="Identifier">sequtils</span>
|
||
|
||
<span class="Identifier">assert</span> <span class="Identifier">toSeq</span><span class="Punctuation">(</span><span class="Identifier">split</span><span class="Punctuation">(</span><span class="StringLit">";;hÃllo;this;is;an;;example;;;是"</span><span class="Punctuation">,</span> <span class="StringLit">";"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span>
|
||
<span class="Operator">@</span><span class="Punctuation">[</span><span class="StringLit">""</span><span class="Punctuation">,</span> <span class="StringLit">""</span><span class="Punctuation">,</span> <span class="StringLit">"hÃllo"</span><span class="Punctuation">,</span> <span class="StringLit">"this"</span><span class="Punctuation">,</span> <span class="StringLit">"is"</span><span class="Punctuation">,</span> <span class="StringLit">"an"</span><span class="Punctuation">,</span> <span class="StringLit">""</span><span class="Punctuation">,</span> <span class="StringLit">"example"</span><span class="Punctuation">,</span> <span class="StringLit">""</span><span class="Punctuation">,</span> <span class="StringLit">""</span><span class="Punctuation">,</span> <span class="StringLit">"是"</span><span class="Punctuation">]</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1017" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1017" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="split.i,openArray[char],openArray[Rune],int">
|
||
<dt><pre><span class="Keyword">iterator</span> <a href="#split.i%2CopenArray%5Bchar%5D%2CopenArray%5BRune%5D%2Cint"><span class="Identifier">split</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">seps</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">]</span> <span class="Other">=</span> <span class="Identifier">unicodeSpaces</span><span class="Other">;</span>
|
||
<span class="Identifier">maxsplit</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Other">=</span> <span class="DecNumber">-1</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Splits the unicode string <tt class="docutils literal"><span class="pre">s</span></tt> into substrings using a group of separators.</p>
|
||
<p>Substrings are separated by a substring containing only <tt class="docutils literal"><span class="pre">seps</span></tt>.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">import</span> <span class="Identifier">std</span><span class="Operator">/</span><span class="Identifier">sequtils</span>
|
||
|
||
<span class="Identifier">assert</span> <span class="Identifier">toSeq</span><span class="Punctuation">(</span><span class="StringLit">"hÃllo</span><span class="EscapeSequence">\l</span><span class="StringLit">this</span><span class="EscapeSequence">\l</span><span class="StringLit">is an</span><span class="EscapeSequence">\t</span><span class="StringLit">example</span><span class="EscapeSequence">\l</span><span class="StringLit">是"</span><span class="Operator">.</span><span class="Identifier">split</span><span class="Punctuation">)</span> <span class="Operator">==</span>
|
||
<span class="Operator">@</span><span class="Punctuation">[</span><span class="StringLit">"hÃllo"</span><span class="Punctuation">,</span> <span class="StringLit">"this"</span><span class="Punctuation">,</span> <span class="StringLit">"is"</span><span class="Punctuation">,</span> <span class="StringLit">"an"</span><span class="Punctuation">,</span> <span class="StringLit">"example"</span><span class="Punctuation">,</span> <span class="StringLit">"是"</span><span class="Punctuation">]</span>
|
||
|
||
<span class="Comment"># And the following code splits the same string using a sequence of Runes.</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">toSeq</span><span class="Punctuation">(</span><span class="Identifier">split</span><span class="Punctuation">(</span><span class="StringLit">"añyóng:hÃllo;是$example"</span><span class="Punctuation">,</span> <span class="StringLit">";:$"</span><span class="Operator">.</span><span class="Identifier">toRunes</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span>
|
||
<span class="Operator">@</span><span class="Punctuation">[</span><span class="StringLit">"añyóng"</span><span class="Punctuation">,</span> <span class="StringLit">"hÃllo"</span><span class="Punctuation">,</span> <span class="StringLit">"是"</span><span class="Punctuation">,</span> <span class="StringLit">"example"</span><span class="Punctuation">]</span>
|
||
|
||
<span class="Comment"># example with a `Rune` separator and unused one `;`:</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">toSeq</span><span class="Punctuation">(</span><span class="Identifier">split</span><span class="Punctuation">(</span><span class="StringLit">"ab是de:f:"</span><span class="Punctuation">,</span> <span class="StringLit">";:是"</span><span class="Operator">.</span><span class="Identifier">toRunes</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Operator">@</span><span class="Punctuation">[</span><span class="StringLit">"ab"</span><span class="Punctuation">,</span> <span class="StringLit">"de"</span><span class="Punctuation">,</span> <span class="StringLit">"f"</span><span class="Punctuation">,</span> <span class="StringLit">""</span><span class="Punctuation">]</span>
|
||
|
||
<span class="Comment"># Another example that splits a string containing a date.</span>
|
||
<span class="Keyword">let</span> <span class="Identifier">date</span> <span class="Operator">=</span> <span class="StringLit">"2012-11-20T22:08:08.398990"</span>
|
||
|
||
<span class="Identifier">assert</span> <span class="Identifier">toSeq</span><span class="Punctuation">(</span><span class="Identifier">split</span><span class="Punctuation">(</span><span class="Identifier">date</span><span class="Punctuation">,</span> <span class="StringLit">" -:T"</span><span class="Operator">.</span><span class="Identifier">toRunes</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span>
|
||
<span class="Operator">@</span><span class="Punctuation">[</span><span class="StringLit">"2012"</span><span class="Punctuation">,</span> <span class="StringLit">"11"</span><span class="Punctuation">,</span> <span class="StringLit">"20"</span><span class="Punctuation">,</span> <span class="StringLit">"22"</span><span class="Punctuation">,</span> <span class="StringLit">"08"</span><span class="Punctuation">,</span> <span class="StringLit">"08.398990"</span><span class="Punctuation">]</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L977" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L977" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="split.i,string,Rune,int">
|
||
<dt><pre><span class="Keyword">iterator</span> <a href="#split.i%2Cstring%2CRune%2Cint"><span class="Identifier">split</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">sep</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">;</span> <span class="Identifier">maxsplit</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Other">=</span> <span class="DecNumber">-1</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Splits the unicode string <tt class="docutils literal"><span class="pre">s</span></tt> into substrings using a single separator. Substrings are separated by the rune <tt class="docutils literal"><span class="pre">sep</span></tt>.
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">import</span> <span class="Identifier">std</span><span class="Operator">/</span><span class="Identifier">sequtils</span>
|
||
|
||
<span class="Identifier">assert</span> <span class="Identifier">toSeq</span><span class="Punctuation">(</span><span class="Identifier">split</span><span class="Punctuation">(</span><span class="StringLit">";;hÃllo;this;is;an;;example;;;是"</span><span class="Punctuation">,</span> <span class="StringLit">";"</span><span class="Operator">.</span><span class="Identifier">runeAt</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span>
|
||
<span class="Operator">@</span><span class="Punctuation">[</span><span class="StringLit">""</span><span class="Punctuation">,</span> <span class="StringLit">""</span><span class="Punctuation">,</span> <span class="StringLit">"hÃllo"</span><span class="Punctuation">,</span> <span class="StringLit">"this"</span><span class="Punctuation">,</span> <span class="StringLit">"is"</span><span class="Punctuation">,</span> <span class="StringLit">"an"</span><span class="Punctuation">,</span> <span class="StringLit">""</span><span class="Punctuation">,</span> <span class="StringLit">"example"</span><span class="Punctuation">,</span> <span class="StringLit">""</span><span class="Punctuation">,</span> <span class="StringLit">""</span><span class="Punctuation">,</span> <span class="StringLit">"是"</span><span class="Punctuation">]</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1457" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1457" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="split.i,string,openArray[Rune],int">
|
||
<dt><pre><span class="Keyword">iterator</span> <a href="#split.i%2Cstring%2CopenArray%5BRune%5D%2Cint"><span class="Identifier">split</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">seps</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">]</span> <span class="Other">=</span> <span class="Identifier">unicodeSpaces</span><span class="Other">;</span>
|
||
<span class="Identifier">maxsplit</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Other">=</span> <span class="DecNumber">-1</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Splits the unicode string <tt class="docutils literal"><span class="pre">s</span></tt> into substrings using a group of separators.</p>
|
||
<p>Substrings are separated by a substring containing only <tt class="docutils literal"><span class="pre">seps</span></tt>.</p>
|
||
|
||
<p><strong class="examples_text">Example:</strong></p>
|
||
<pre class="listing"><span class="Keyword">import</span> <span class="Identifier">std</span><span class="Operator">/</span><span class="Identifier">sequtils</span>
|
||
|
||
<span class="Identifier">assert</span> <span class="Identifier">toSeq</span><span class="Punctuation">(</span><span class="StringLit">"hÃllo</span><span class="EscapeSequence">\l</span><span class="StringLit">this</span><span class="EscapeSequence">\l</span><span class="StringLit">is an</span><span class="EscapeSequence">\t</span><span class="StringLit">example</span><span class="EscapeSequence">\l</span><span class="StringLit">是"</span><span class="Operator">.</span><span class="Identifier">split</span><span class="Punctuation">)</span> <span class="Operator">==</span>
|
||
<span class="Operator">@</span><span class="Punctuation">[</span><span class="StringLit">"hÃllo"</span><span class="Punctuation">,</span> <span class="StringLit">"this"</span><span class="Punctuation">,</span> <span class="StringLit">"is"</span><span class="Punctuation">,</span> <span class="StringLit">"an"</span><span class="Punctuation">,</span> <span class="StringLit">"example"</span><span class="Punctuation">,</span> <span class="StringLit">"是"</span><span class="Punctuation">]</span>
|
||
|
||
<span class="Comment"># And the following code splits the same string using a sequence of Runes.</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">toSeq</span><span class="Punctuation">(</span><span class="Identifier">split</span><span class="Punctuation">(</span><span class="StringLit">"añyóng:hÃllo;是$example"</span><span class="Punctuation">,</span> <span class="StringLit">";:$"</span><span class="Operator">.</span><span class="Identifier">toRunes</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span>
|
||
<span class="Operator">@</span><span class="Punctuation">[</span><span class="StringLit">"añyóng"</span><span class="Punctuation">,</span> <span class="StringLit">"hÃllo"</span><span class="Punctuation">,</span> <span class="StringLit">"是"</span><span class="Punctuation">,</span> <span class="StringLit">"example"</span><span class="Punctuation">]</span>
|
||
|
||
<span class="Comment"># example with a `Rune` separator and unused one `;`:</span>
|
||
<span class="Identifier">assert</span> <span class="Identifier">toSeq</span><span class="Punctuation">(</span><span class="Identifier">split</span><span class="Punctuation">(</span><span class="StringLit">"ab是de:f:"</span><span class="Punctuation">,</span> <span class="StringLit">";:是"</span><span class="Operator">.</span><span class="Identifier">toRunes</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Operator">@</span><span class="Punctuation">[</span><span class="StringLit">"ab"</span><span class="Punctuation">,</span> <span class="StringLit">"de"</span><span class="Punctuation">,</span> <span class="StringLit">"f"</span><span class="Punctuation">,</span> <span class="StringLit">""</span><span class="Punctuation">]</span>
|
||
|
||
<span class="Comment"># Another example that splits a string containing a date.</span>
|
||
<span class="Keyword">let</span> <span class="Identifier">date</span> <span class="Operator">=</span> <span class="StringLit">"2012-11-20T22:08:08.398990"</span>
|
||
|
||
<span class="Identifier">assert</span> <span class="Identifier">toSeq</span><span class="Punctuation">(</span><span class="Identifier">split</span><span class="Punctuation">(</span><span class="Identifier">date</span><span class="Punctuation">,</span> <span class="StringLit">" -:T"</span><span class="Operator">.</span><span class="Identifier">toRunes</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span>
|
||
<span class="Operator">@</span><span class="Punctuation">[</span><span class="StringLit">"2012"</span><span class="Punctuation">,</span> <span class="StringLit">"11"</span><span class="Punctuation">,</span> <span class="StringLit">"20"</span><span class="Punctuation">,</span> <span class="StringLit">"22"</span><span class="Punctuation">,</span> <span class="StringLit">"08"</span><span class="Punctuation">,</span> <span class="StringLit">"08.398990"</span><span class="Punctuation">]</span></pre>
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1421" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1421" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="splitWhitespace-iterators-all">
|
||
<div id="splitWhitespace.i,openArray[char]">
|
||
<dt><pre><span class="Keyword">iterator</span> <a href="#splitWhitespace.i%2CopenArray%5Bchar%5D"><span class="Identifier">splitWhitespace</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
|
||
<span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Splits a unicode string at whitespace runes.
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1003" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1003" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="splitWhitespace.i,string">
|
||
<dt><pre><span class="Keyword">iterator</span> <a href="#splitWhitespace.i%2Cstring"><span class="Identifier">splitWhitespace</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
Splits a unicode string at whitespace runes.
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1447" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1447" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="utf8-iterators-all">
|
||
<div id="utf8.i,openArray[char]">
|
||
<dt><pre><span class="Keyword">iterator</span> <a href="#utf8.i%2CopenArray%5Bchar%5D"><span class="Identifier">utf8</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Iterates over any rune of the string <tt class="docutils literal"><span class="pre">s</span></tt> returning utf8 values.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#validateUtf8,string">validateUtf8 proc</a></li>
|
||
<li><a class="reference external" href="#toUTF8,Rune">toUTF8 proc</a></li>
|
||
<li><a class="reference external" href="#$,Rune">$ proc</a> alias for <tt class="docutils literal"><span class="pre"><span class="Identifier">toUTF8</span></span></tt></li>
|
||
<li><a class="reference external" href="#fastToUTF8Copy.t,Rune,string,int">fastToUTF8Copy template</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L817" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L817" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
<div id="utf8.i,string">
|
||
<dt><pre><span class="Keyword">iterator</span> <a href="#utf8.i%2Cstring"><span class="Identifier">utf8</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||
<dd>
|
||
|
||
<p>Iterates over any rune of the string <tt class="docutils literal"><span class="pre">s</span></tt> returning utf8 values.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#validateUtf8,string">validateUtf8 proc</a></li>
|
||
<li><a class="reference external" href="#toUTF8,Rune">toUTF8 proc</a></li>
|
||
<li><a class="reference external" href="#$,Rune">$ proc</a> alias for <tt class="docutils literal"><span class="pre"><span class="Identifier">toUTF8</span></span></tt></li>
|
||
<li><a class="reference external" href="#fastToUTF8Copy.t,Rune,string,int">fastToUTF8Copy template</a></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L1366" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L1366" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
</dl>
|
||
</div>
|
||
<div class="section" id="18">
|
||
<h1><a class="toc-backref" href="#18">Templates</a></h1>
|
||
<dl class="item">
|
||
<div id="fastRuneAt-templates-all">
|
||
<div id="fastRuneAt.t,,int,untyped">
|
||
<dt><pre><span class="Keyword">template</span> <a href="#fastRuneAt.t%2C%2Cint%2Cuntyped"><span class="Identifier">fastRuneAt</span></a><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <a href="system.html#openArray"><span class="Identifier">openArray</span></a><span class="Other">[</span><a href="system.html#char"><span class="Identifier">char</span></a><span class="Other">]</span> <span class="Keyword">or</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">i</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">;</span> <span class="Identifier">result</span><span class="Other">:</span> <a href="system.html#untyped"><span class="Identifier">untyped</span></a><span class="Other">;</span>
|
||
<span class="Identifier">doInc</span> <span class="Other">=</span> <span class="Identifier">true</span><span class="Other">)</span></pre></dt>
|
||
<dd>
|
||
|
||
<p>Returns the rune <tt class="docutils literal"><span class="pre">s[i]</span></tt> in <tt class="docutils literal"><span class="pre">result</span></tt>.</p>
|
||
<p>If <tt class="docutils literal"><span class="pre">doInc == true</span></tt> (default), <tt class="docutils literal"><span class="pre">i</span></tt> is incremented by the number of bytes that have been processed.</p>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L84" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L84" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
<div id="fastToUTF8Copy-templates-all">
|
||
<div id="fastToUTF8Copy.t,Rune,string,int">
|
||
<dt><pre><span class="Keyword">template</span> <a href="#fastToUTF8Copy.t%2CRune%2Cstring%2Cint"><span class="Identifier">fastToUTF8Copy</span></a><span class="Other">(</span><span class="Identifier">c</span><span class="Other">:</span> <a href="unicode.html#Rune"><span class="Identifier">Rune</span></a><span class="Other">;</span> <span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">pos</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">;</span> <span class="Identifier">doInc</span> <span class="Other">=</span> <span class="Identifier">true</span><span class="Other">)</span></pre></dt>
|
||
<dd>
|
||
|
||
<p>Copies UTF-8 representation of <tt class="docutils literal"><span class="pre">c</span></tt> into the preallocated string <tt class="docutils literal"><span class="pre">s</span></tt> starting at position <tt class="docutils literal"><span class="pre">pos</span></tt>.</p>
|
||
<p>If <tt class="docutils literal"><span class="pre">doInc == true</span></tt> (default), <tt class="docutils literal"><span class="pre">pos</span></tt> is incremented by the number of bytes that have been processed.</p>
|
||
<p>To be the most efficient, make sure <tt class="docutils literal"><span class="pre">s</span></tt> is preallocated with an additional amount equal to the byte length of <tt class="docutils literal"><span class="pre">c</span></tt>.</p>
|
||
<p>See also:</p>
|
||
<ul class="simple"><li><a class="reference external" href="#validateUtf8,string">validateUtf8 proc</a></li>
|
||
<li><a class="reference external" href="#toUTF8,Rune">toUTF8 proc</a></li>
|
||
<li><a class="reference external" href="#$,Rune">$ proc</a> alias for <tt class="docutils literal"><span class="pre"><span class="Identifier">toUTF8</span></span></tt></li>
|
||
</ul>
|
||
|
||
<a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/unicode.nim#L207" class="link-seesrc" target="_blank">Source</a>
|
||
<a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/unicode.nim#L207" class="link-seesrc" target="_blank" >Edit</a>
|
||
|
||
</dd>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
</dl>
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<div class="twelve-columns footer">
|
||
<span class="nim-sprite"></span>
|
||
<br>
|
||
<small style="color: var(--hint);">Made with Nim. Generated: 2025-12-28 15:55:04 UTC</small>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<script defer data-domain="nim-lang.org" src="https://plausible.io/js/plausible.js"></script>
|
||
|
||
</body>
|
||
</html>
|