12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413 |
- <?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/times</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/times</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" id="examples_toc" href="#examples">Examples</a></li>
- <li><a class="reference" id="parsing-and-formatting-dates_toc" href="#parsing-and-formatting-dates">Parsing and Formatting Dates</a></li>
- <li><a class="reference" id="duration-vs-timeinterval_toc" href="#duration-vs-timeinterval">Duration vs TimeInterval</a></li>
- <ul class="simple"><li><a class="reference" id="duration-vs-timeinterval-duration_toc" href="#duration-vs-timeinterval-duration">Duration</a></li>
- <li><a class="reference" id="duration-vs-timeinterval-timeinterval_toc" href="#duration-vs-timeinterval-timeinterval">TimeInterval</a></li>
- <li><a class="reference" id="duration-vs-timeinterval-how-long-is-a-dayqmark_toc" href="#duration-vs-timeinterval-how-long-is-a-dayqmark">How long is a day?</a></li>
- </ul><li><a class="reference" id="see-also_toc" href="#see-also">See also</a></li>
- <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="#DateTime" title="DateTime = object of RootObj">DateTime</a></li>
- <li><a class="reference" href="#DateTimeLocale" title="DateTimeLocale = object
- MMM*: array[mJan .. mDec, string]
- MMMM*: array[mJan .. mDec, string]
- ddd*: array[dMon .. dSun, string]
- dddd*: array[dMon .. dSun, string]">DateTimeLocale</a></li>
- <li><a class="reference" href="#Duration" title="Duration = object">Duration</a></li>
- <li><a class="reference" href="#DurationParts" title="DurationParts = array[FixedTimeUnit, int64]">DurationParts</a></li>
- <li><a class="reference" href="#FixedTimeUnit" title="FixedTimeUnit = range[Nanoseconds .. Weeks]">FixedTimeUnit</a></li>
- <li><a class="reference" href="#HourRange" title="HourRange = range[0 .. 23]">HourRange</a></li>
- <li><a class="reference" href="#IsoWeekRange" title="IsoWeekRange = range[1 .. 53]">IsoWeekRange</a></li>
- <li><a class="reference" href="#IsoYear" title="IsoYear = distinct int">IsoYear</a></li>
- <li><a class="reference" href="#MinuteRange" title="MinuteRange = range[0 .. 59]">MinuteRange</a></li>
- <li><a class="reference" href="#Month" title="Month = enum
- mJan = (1, "January"), mFeb = "February", mMar = "March", mApr = "April",
- mMay = "May", mJun = "June", mJul = "July", mAug = "August",
- mSep = "September", mOct = "October", mNov = "November", mDec = "December"">Month</a></li>
- <li><a class="reference" href="#MonthdayRange" title="MonthdayRange = range[1 .. 31]">MonthdayRange</a></li>
- <li><a class="reference" href="#NanosecondRange" title="NanosecondRange = range[0 .. 999999999]">NanosecondRange</a></li>
- <li><a class="reference" href="#SecondRange" title="SecondRange = range[0 .. 60]">SecondRange</a></li>
- <li><a class="reference" href="#Time" title="Time = object">Time</a></li>
- <li><a class="reference" href="#TimeFormat" title="TimeFormat = object
- ## \
- ## Contains the patterns encoded as bytes.
- ## Literal values are encoded in a special way.
- ## They start with `Lit.byte`, then the length of the literal, then the
- ## raw char values of the literal. For example, the literal `foo` would
- ## be encoded as `@[Lit.byte, 3.byte, 'f'.byte, 'o'.byte, 'o'.byte]`.">TimeFormat</a></li>
- <li><a class="reference" href="#TimeFormatParseError" title="TimeFormatParseError = object of ValueError">TimeFormatParseError</a></li>
- <li><a class="reference" href="#TimeInterval" title="TimeInterval = object
- nanoseconds*: int ## The number of nanoseconds
- microseconds*: int ## The number of microseconds
- milliseconds*: int ## The number of milliseconds
- seconds*: int ## The number of seconds
- minutes*: int ## The number of minutes
- hours*: int ## The number of hours
- days*: int ## The number of days
- weeks*: int ## The number of weeks
- months*: int ## The number of months
- years*: int ## The number of years">TimeInterval</a></li>
- <li><a class="reference" href="#TimeIntervalParts" title="TimeIntervalParts = array[TimeUnit, int]">TimeIntervalParts</a></li>
- <li><a class="reference" href="#TimeParseError" title="TimeParseError = object of ValueError">TimeParseError</a></li>
- <li><a class="reference" href="#TimeUnit" title="TimeUnit = enum
- Nanoseconds, Microseconds, Milliseconds, Seconds, Minutes, Hours, Days, Weeks,
- Months, Years">TimeUnit</a></li>
- <li><a class="reference" href="#Timezone" title="Timezone = ref object">Timezone</a></li>
- <li><a class="reference" href="#WeekDay" title="WeekDay = enum
- dMon = "Monday", dTue = "Tuesday", dWed = "Wednesday", dThu = "Thursday",
- dFri = "Friday", dSat = "Saturday", dSun = "Sunday"">WeekDay</a></li>
- <li><a class="reference" href="#YeardayRange" title="YeardayRange = range[0 .. 365]">YeardayRange</a></li>
- <li><a class="reference" href="#ZonedTime" title="ZonedTime = object
- time*: Time ## The point in time being represented.
- utcOffset*: int ## The offset in seconds west of UTC,
- ## including any offset due to DST.
- isDst*: bool ## Determines whether DST is in effect.">ZonedTime</a></li>
- </ul>
- </details>
- </li>
- <li>
- <details open>
- <summary><a class="reference reference-toplevel" href="#10" id="60">Consts</a></summary>
- <ul class="simple simple-toc-section">
- <li><a class="reference" href="#DefaultLocale" title="DefaultLocale = (MMM: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug",
- "Sep", "Oct", "Nov", "Dec"], MMMM: ["January",
- "February", "March", "April", "May", "June", "July", "August", "September",
- "October", "November", "December"],
- ddd: ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"], dddd: [
- "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"])">DefaultLocale</a></li>
- <li><a class="reference" href="#DurationZero" title="DurationZero = (seconds: 0, nanosecond: 0)">DurationZero</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%2CDateTime" title="`$`(dt: DateTime): string">`$`(dt: DateTime): string</a></li>
- <li><a class="reference" href="#%24%2CDuration" title="`$`(dur: Duration): string">`$`(dur: Duration): string</a></li>
- <li><a class="reference" href="#%24%2CTimeFormat" title="`$`(f: TimeFormat): string">`$`(f: TimeFormat): string</a></li>
- <li><a class="reference" href="#%24%2CIsoYear" title="`$`(p: IsoYear): string">`$`(p: IsoYear): string</a></li>
- <li><a class="reference" href="#%24%2CTimeInterval" title="`$`(ti: TimeInterval): string">`$`(ti: TimeInterval): string</a></li>
- <li><a class="reference" href="#%24%2CTime" title="`$`(time: Time): string">`$`(time: Time): string</a></li>
- <li><a class="reference" href="#%24%2CTimezone" title="`$`(zone: Timezone): string">`$`(zone: Timezone): string</a></li>
- </ul>
- <ul class="simple nested-toc-section">*
- <li><a class="reference" href="#%2A%2CDuration%2Cint64" title="`*`(a: Duration; b: int64): Duration">`*`(a: Duration; b: int64): Duration</a></li>
- <li><a class="reference" href="#%2A%2Cint64%2CDuration" title="`*`(a: int64; b: Duration): Duration">`*`(a: int64; b: Duration): Duration</a></li>
- </ul>
- <ul class="simple nested-toc-section">*=
- <li><a class="reference" href="#%2A%3D%2CDuration%2Cint" title="`*=`(a: var Duration; b: int)">`*=`(a: var Duration; b: int)</a></li>
- </ul>
- <ul class="simple nested-toc-section">+
- <li><a class="reference" href="#%2B%2CDuration%2CDuration" title="`+`(a, b: Duration): Duration">`+`(a, b: Duration): Duration</a></li>
- <li><a class="reference" href="#%2B%2CTime%2CDuration" title="`+`(a: Time; b: Duration): Time">`+`(a: Time; b: Duration): Time</a></li>
- <li><a class="reference" href="#%2B%2CDateTime%2CDuration" title="`+`(dt: DateTime; dur: Duration): DateTime">`+`(dt: DateTime; dur: Duration): DateTime</a></li>
- <li><a class="reference" href="#%2B%2CDateTime%2CTimeInterval" title="`+`(dt: DateTime; interval: TimeInterval): DateTime">`+`(dt: DateTime; interval: TimeInterval): DateTime</a></li>
- <li><a class="reference" href="#%2B%2CTimeInterval%2CTimeInterval" title="`+`(ti1, ti2: TimeInterval): TimeInterval">`+`(ti1, ti2: TimeInterval): TimeInterval</a></li>
- <li><a class="reference" href="#%2B%2CTime%2CTimeInterval" title="`+`(time: Time; interval: TimeInterval): Time">`+`(time: Time; interval: TimeInterval): Time</a></li>
- </ul>
- <ul class="simple nested-toc-section">+=
- <li><a class="reference" href="#%2B%3D%2CDateTime%2CDuration" title="`+=`(a: var DateTime; b: Duration)">`+=`(a: var DateTime; b: Duration)</a></li>
- <li><a class="reference" href="#%2B%3D%2CDateTime%2CTimeInterval" title="`+=`(a: var DateTime; b: TimeInterval)">`+=`(a: var DateTime; b: TimeInterval)</a></li>
- <li><a class="reference" href="#%2B%3D%2CTimeInterval%2CTimeInterval" title="`+=`(a: var TimeInterval; b: TimeInterval)">`+=`(a: var TimeInterval; b: TimeInterval)</a></li>
- <li><a class="reference" href="#%2B%3D%2CDuration%2CDuration" title="`+=`(d1: var Duration; d2: Duration)">`+=`(d1: var Duration; d2: Duration)</a></li>
- <li><a class="reference" href="#%2B%3D%2CTime%2CDuration" title="`+=`(t: var Time; b: Duration)">`+=`(t: var Time; b: Duration)</a></li>
- <li><a class="reference" href="#%2B%3D%2CTime%2CTimeInterval" title="`+=`(t: var Time; b: TimeInterval)">`+=`(t: var Time; b: TimeInterval)</a></li>
- </ul>
- <ul class="simple nested-toc-section">-
- <li><a class="reference" href="#-%2CDuration%2CDuration" title="`-`(a, b: Duration): Duration">`-`(a, b: Duration): Duration</a></li>
- <li><a class="reference" href="#-%2CTime%2CTime" title="`-`(a, b: Time): Duration">`-`(a, b: Time): Duration</a></li>
- <li><a class="reference" href="#-%2CDuration" title="`-`(a: Duration): Duration">`-`(a: Duration): Duration</a></li>
- <li><a class="reference" href="#-%2CTime%2CDuration" title="`-`(a: Time; b: Duration): Time">`-`(a: Time; b: Duration): Time</a></li>
- <li><a class="reference" href="#-%2CDateTime%2CDateTime" title="`-`(dt1, dt2: DateTime): Duration">`-`(dt1, dt2: DateTime): Duration</a></li>
- <li><a class="reference" href="#-%2CDateTime%2CDuration" title="`-`(dt: DateTime; dur: Duration): DateTime">`-`(dt: DateTime; dur: Duration): DateTime</a></li>
- <li><a class="reference" href="#-%2CDateTime%2CTimeInterval" title="`-`(dt: DateTime; interval: TimeInterval): DateTime">`-`(dt: DateTime; interval: TimeInterval): DateTime</a></li>
- <li><a class="reference" href="#-%2CTimeInterval%2CTimeInterval" title="`-`(ti1, ti2: TimeInterval): TimeInterval">`-`(ti1, ti2: TimeInterval): TimeInterval</a></li>
- <li><a class="reference" href="#-%2CTimeInterval" title="`-`(ti: TimeInterval): TimeInterval">`-`(ti: TimeInterval): TimeInterval</a></li>
- <li><a class="reference" href="#-%2CTime%2CTimeInterval" title="`-`(time: Time; interval: TimeInterval): Time">`-`(time: Time; interval: TimeInterval): Time</a></li>
- </ul>
- <ul class="simple nested-toc-section">-=
- <li><a class="reference" href="#-%3D%2CDateTime%2CDuration" title="`-=`(a: var DateTime; b: Duration)">`-=`(a: var DateTime; b: Duration)</a></li>
- <li><a class="reference" href="#-%3D%2CDateTime%2CTimeInterval" title="`-=`(a: var DateTime; b: TimeInterval)">`-=`(a: var DateTime; b: TimeInterval)</a></li>
- <li><a class="reference" href="#-%3D%2CTimeInterval%2CTimeInterval" title="`-=`(a: var TimeInterval; b: TimeInterval)">`-=`(a: var TimeInterval; b: TimeInterval)</a></li>
- <li><a class="reference" href="#-%3D%2CDuration%2CDuration" title="`-=`(dt: var Duration; ti: Duration)">`-=`(dt: var Duration; ti: Duration)</a></li>
- <li><a class="reference" href="#-%3D%2CTime%2CDuration" title="`-=`(t: var Time; b: Duration)">`-=`(t: var Time; b: Duration)</a></li>
- <li><a class="reference" href="#-%3D%2CTime%2CTimeInterval" title="`-=`(t: var Time; b: TimeInterval)">`-=`(t: var Time; b: TimeInterval)</a></li>
- </ul>
- <ul class="simple nested-toc-section"><
- <li><a class="reference" href="#%3C%2CDateTime%2CDateTime" title="`<`(a, b: DateTime): bool">`<`(a, b: DateTime): bool</a></li>
- <li><a class="reference" href="#%3C%2CDuration%2CDuration" title="`<`(a, b: Duration): bool">`<`(a, b: Duration): bool</a></li>
- <li><a class="reference" href="#%3C%2CTime%2CTime" title="`<`(a, b: Time): bool">`<`(a, b: Time): bool</a></li>
- </ul>
- <ul class="simple nested-toc-section"><=
- <li><a class="reference" href="#%3C%3D%2CDateTime%2CDateTime" title="`<=`(a, b: DateTime): bool">`<=`(a, b: DateTime): bool</a></li>
- <li><a class="reference" href="#%3C%3D%2CDuration%2CDuration" title="`<=`(a, b: Duration): bool">`<=`(a, b: Duration): bool</a></li>
- <li><a class="reference" href="#%3C%3D%2CTime%2CTime" title="`<=`(a, b: Time): bool">`<=`(a, b: Time): bool</a></li>
- </ul>
- <ul class="simple nested-toc-section">==
- <li><a class="reference" href="#%3D%3D%2CDateTime%2CDateTime" title="`==`(a, b: DateTime): bool">`==`(a, b: DateTime): bool</a></li>
- <li><a class="reference" href="#%3D%3D%2CDuration%2CDuration" title="`==`(a, b: Duration): bool">`==`(a, b: Duration): bool</a></li>
- <li><a class="reference" href="#%3D%3D%2CIsoYear%2CIsoYear" title="`==`(a, b: IsoYear): bool">`==`(a, b: IsoYear): bool</a></li>
- <li><a class="reference" href="#%3D%3D%2CTime%2CTime" title="`==`(a, b: Time): bool">`==`(a, b: Time): bool</a></li>
- <li><a class="reference" href="#%3D%3D%2CTimezone%2CTimezone" title="`==`(zone1, zone2: Timezone): bool">`==`(zone1, zone2: Timezone): bool</a></li>
- </ul>
- <ul class="simple nested-toc-section">abs
- <li><a class="reference" href="#abs%2CDuration" title="abs(a: Duration): Duration">abs(a: Duration): Duration</a></li>
- </ul>
- <ul class="simple nested-toc-section">between
- <li><a class="reference" href="#between%2CDateTime%2CDateTime" title="between(startDt, endDt: DateTime): TimeInterval">between(startDt, endDt: DateTime): TimeInterval</a></li>
- </ul>
- <ul class="simple nested-toc-section">convert
- <li><a class="reference" href="#convert%2CFixedTimeUnit%2CFixedTimeUnit%2CT" title="convert[T: SomeInteger](unitFrom, unitTo: FixedTimeUnit; quantity: T): T">convert[T: SomeInteger](unitFrom, unitTo: FixedTimeUnit; quantity: T): T</a></li>
- </ul>
- <ul class="simple nested-toc-section">cpuTime
- <li><a class="reference" href="#cpuTime" title="cpuTime(): float">cpuTime(): float</a></li>
- </ul>
- <ul class="simple nested-toc-section">dateTime
- <li><a class="reference" href="#dateTime%2Cint%2CMonth%2CMonthdayRange%2CHourRange%2CMinuteRange%2CSecondRange%2CNanosecondRange%2CTimezone" title="dateTime(year: int; month: Month; monthday: MonthdayRange; hour: HourRange = 0;
- minute: MinuteRange = 0; second: SecondRange = 0;
- nanosecond: NanosecondRange = 0; zone: Timezone = local()): DateTime">dateTime(year: int; month: Month; monthday: MonthdayRange; hour: HourRange = 0;
- minute: MinuteRange = 0; second: SecondRange = 0;
- nanosecond: NanosecondRange = 0; zone: Timezone = local()): DateTime</a></li>
- </ul>
- <ul class="simple nested-toc-section">days
- <li><a class="reference" href="#days%2Cint" title="days(d: int): TimeInterval">days(d: int): TimeInterval</a></li>
- </ul>
- <ul class="simple nested-toc-section">div
- <li><a class="reference" href="#div%2CDuration%2Cint64" title="`div`(a: Duration; b: int64): Duration">`div`(a: Duration; b: int64): Duration</a></li>
- </ul>
- <ul class="simple nested-toc-section">epochTime
- <li><a class="reference" href="#epochTime" title="epochTime(): float">epochTime(): float</a></li>
- </ul>
- <ul class="simple nested-toc-section">format
- <li><a class="reference" href="#format%2CDateTime%2Cstatic%5Bstring%5D" title="format(dt: DateTime; f: static[string]): string">format(dt: DateTime; f: static[string]): string</a></li>
- <li><a class="reference" href="#format%2CDateTime%2Cstring%2CDateTimeLocale" title="format(dt: DateTime; f: string; loc: DateTimeLocale = DefaultLocale): string">format(dt: DateTime; f: string; loc: DateTimeLocale = DefaultLocale): string</a></li>
- <li><a class="reference" href="#format%2CDateTime%2CTimeFormat%2CDateTimeLocale" title="format(dt: DateTime; f: TimeFormat; loc: DateTimeLocale = DefaultLocale): string">format(dt: DateTime; f: TimeFormat; loc: DateTimeLocale = DefaultLocale): string</a></li>
- <li><a class="reference" href="#format%2CTime%2Cstatic%5Bstring%5D%2CTimezone" title="format(time: Time; f: static[string]; zone: Timezone = local()): string">format(time: Time; f: static[string]; zone: Timezone = local()): string</a></li>
- <li><a class="reference" href="#format%2CTime%2Cstring%2CTimezone" title="format(time: Time; f: string; zone: Timezone = local()): string">format(time: Time; f: string; zone: Timezone = local()): string</a></li>
- </ul>
- <ul class="simple nested-toc-section">formatValue
- <li><a class="reference" href="#formatValue%2Cstring%2C%2Cstring" title="formatValue(result: var string; value: DateTime | Time; specifier: string)">formatValue(result: var string; value: DateTime | Time; specifier: string)</a></li>
- </ul>
- <ul class="simple nested-toc-section">fromUnix
- <li><a class="reference" href="#fromUnix%2Cint64" title="fromUnix(unix: int64): Time">fromUnix(unix: int64): Time</a></li>
- </ul>
- <ul class="simple nested-toc-section">fromUnixFloat
- <li><a class="reference" href="#fromUnixFloat%2Cfloat" title="fromUnixFloat(seconds: float): Time">fromUnixFloat(seconds: float): Time</a></li>
- </ul>
- <ul class="simple nested-toc-section">fromWinTime
- <li><a class="reference" href="#fromWinTime%2Cint64" title="fromWinTime(win: int64): Time">fromWinTime(win: int64): Time</a></li>
- </ul>
- <ul class="simple nested-toc-section">getClockStr
- <li><a class="reference" href="#getClockStr" title="getClockStr(dt = now()): string">getClockStr(dt = now()): string</a></li>
- </ul>
- <ul class="simple nested-toc-section">getDateStr
- <li><a class="reference" href="#getDateStr" title="getDateStr(dt = now()): string">getDateStr(dt = now()): string</a></li>
- </ul>
- <ul class="simple nested-toc-section">getDayOfWeek
- <li><a class="reference" href="#getDayOfWeek%2CMonthdayRange%2CMonth%2Cint" title="getDayOfWeek(monthday: MonthdayRange; month: Month; year: int): WeekDay">getDayOfWeek(monthday: MonthdayRange; month: Month; year: int): WeekDay</a></li>
- </ul>
- <ul class="simple nested-toc-section">getDayOfYear
- <li><a class="reference" href="#getDayOfYear%2CMonthdayRange%2CMonth%2Cint" title="getDayOfYear(monthday: MonthdayRange; month: Month; year: int): YeardayRange">getDayOfYear(monthday: MonthdayRange; month: Month; year: int): YeardayRange</a></li>
- </ul>
- <ul class="simple nested-toc-section">getDaysInMonth
- <li><a class="reference" href="#getDaysInMonth%2CMonth%2Cint" title="getDaysInMonth(month: Month; year: int): int">getDaysInMonth(month: Month; year: int): int</a></li>
- </ul>
- <ul class="simple nested-toc-section">getDaysInYear
- <li><a class="reference" href="#getDaysInYear%2Cint" title="getDaysInYear(year: int): int">getDaysInYear(year: int): int</a></li>
- </ul>
- <ul class="simple nested-toc-section">getIsoWeekAndYear
- <li><a class="reference" href="#getIsoWeekAndYear%2CDateTime" title="getIsoWeekAndYear(dt: DateTime): tuple[isoweek: IsoWeekRange, isoyear: IsoYear]">getIsoWeekAndYear(dt: DateTime): tuple[isoweek: IsoWeekRange, isoyear: IsoYear]</a></li>
- </ul>
- <ul class="simple nested-toc-section">getTime
- <li><a class="reference" href="#getTime" title="getTime(): Time">getTime(): Time</a></li>
- </ul>
- <ul class="simple nested-toc-section">getWeeksInIsoYear
- <li><a class="reference" href="#getWeeksInIsoYear%2CIsoYear" title="getWeeksInIsoYear(y: IsoYear): IsoWeekRange">getWeeksInIsoYear(y: IsoYear): IsoWeekRange</a></li>
- </ul>
- <ul class="simple nested-toc-section">high
- <li><a class="reference" href="#high%2Ctypedesc%5BDuration%5D" title="high(typ: typedesc[Duration]): Duration">high(typ: typedesc[Duration]): Duration</a></li>
- <li><a class="reference" href="#high%2Ctypedesc%5BTime%5D" title="high(typ: typedesc[Time]): Time">high(typ: typedesc[Time]): Time</a></li>
- </ul>
- <ul class="simple nested-toc-section">hour
- <li><a class="reference" href="#hour%2CDateTime" title="hour(dt: DateTime): HourRange">hour(dt: DateTime): HourRange</a></li>
- </ul>
- <ul class="simple nested-toc-section">hour=
- <li><a class="reference" href="#hour%3D%2CDateTime%2CHourRange" title="hour=(dt: var DateTime; value: HourRange)">hour=(dt: var DateTime; value: HourRange)</a></li>
- </ul>
- <ul class="simple nested-toc-section">hours
- <li><a class="reference" href="#hours%2Cint" title="hours(h: int): TimeInterval">hours(h: int): TimeInterval</a></li>
- </ul>
- <ul class="simple nested-toc-section">inDays
- <li><a class="reference" href="#inDays%2CDuration" title="inDays(dur: Duration): int64">inDays(dur: Duration): int64</a></li>
- </ul>
- <ul class="simple nested-toc-section">inHours
- <li><a class="reference" href="#inHours%2CDuration" title="inHours(dur: Duration): int64">inHours(dur: Duration): int64</a></li>
- </ul>
- <ul class="simple nested-toc-section">initDateTime
- <li><a class="reference" href="#initDateTime%2CMonthdayRange%2CMonth%2Cint%2CHourRange%2CMinuteRange%2CSecondRange%2CNanosecondRange%2CTimezone" title="initDateTime(monthday: MonthdayRange; month: Month; year: int; hour: HourRange;
- minute: MinuteRange; second: SecondRange;
- nanosecond: NanosecondRange; zone: Timezone = local()): DateTime">initDateTime(monthday: MonthdayRange; month: Month; year: int; hour: HourRange;
- minute: MinuteRange; second: SecondRange;
- nanosecond: NanosecondRange; zone: Timezone = local()): DateTime</a></li>
- <li><a class="reference" href="#initDateTime%2CMonthdayRange%2CMonth%2Cint%2CHourRange%2CMinuteRange%2CSecondRange%2CTimezone" title="initDateTime(monthday: MonthdayRange; month: Month; year: int; hour: HourRange;
- minute: MinuteRange; second: SecondRange; zone: Timezone = local()): DateTime">initDateTime(monthday: MonthdayRange; month: Month; year: int; hour: HourRange;
- minute: MinuteRange; second: SecondRange; zone: Timezone = local()): DateTime</a></li>
- <li><a class="reference" href="#initDateTime%2CWeekDay%2CIsoWeekRange%2CIsoYear%2CHourRange%2CMinuteRange%2CSecondRange%2CNanosecondRange%2CTimezone" title="initDateTime(weekday: WeekDay; isoweek: IsoWeekRange; isoyear: IsoYear;
- hour: HourRange; minute: MinuteRange; second: SecondRange;
- nanosecond: NanosecondRange; zone: Timezone = local()): DateTime">initDateTime(weekday: WeekDay; isoweek: IsoWeekRange; isoyear: IsoYear;
- hour: HourRange; minute: MinuteRange; second: SecondRange;
- nanosecond: NanosecondRange; zone: Timezone = local()): DateTime</a></li>
- <li><a class="reference" href="#initDateTime%2CWeekDay%2CIsoWeekRange%2CIsoYear%2CHourRange%2CMinuteRange%2CSecondRange%2CTimezone" title="initDateTime(weekday: WeekDay; isoweek: IsoWeekRange; isoyear: IsoYear;
- hour: HourRange; minute: MinuteRange; second: SecondRange;
- zone: Timezone = local()): DateTime">initDateTime(weekday: WeekDay; isoweek: IsoWeekRange; isoyear: IsoYear;
- hour: HourRange; minute: MinuteRange; second: SecondRange;
- zone: Timezone = local()): DateTime</a></li>
- </ul>
- <ul class="simple nested-toc-section">initDuration
- <li><a class="reference" href="#initDuration%2Cint64%2Cint64%2Cint64%2Cint64%2Cint64%2Cint64%2Cint64%2Cint64" title="initDuration(nanoseconds, microseconds, milliseconds, seconds, minutes, hours,
- days, weeks: int64 = 0): Duration">initDuration(nanoseconds, microseconds, milliseconds, seconds, minutes, hours,
- days, weeks: int64 = 0): Duration</a></li>
- </ul>
- <ul class="simple nested-toc-section">initTime
- <li><a class="reference" href="#initTime%2Cint64%2CNanosecondRange" title="initTime(unix: int64; nanosecond: NanosecondRange): Time">initTime(unix: int64; nanosecond: NanosecondRange): Time</a></li>
- </ul>
- <ul class="simple nested-toc-section">initTimeFormat
- <li><a class="reference" href="#initTimeFormat%2Cstring" title="initTimeFormat(format: string): TimeFormat">initTimeFormat(format: string): TimeFormat</a></li>
- </ul>
- <ul class="simple nested-toc-section">initTimeInterval
- <li><a class="reference" href="#initTimeInterval%2Cint%2Cint%2Cint%2Cint%2Cint%2Cint%2Cint%2Cint%2Cint%2Cint" title="initTimeInterval(nanoseconds = 0; microseconds = 0; milliseconds = 0;
- seconds = 0; minutes = 0; hours = 0; days = 0; weeks = 0;
- months = 0; years = 0): TimeInterval">initTimeInterval(nanoseconds = 0; microseconds = 0; milliseconds = 0;
- seconds = 0; minutes = 0; hours = 0; days = 0; weeks = 0;
- months = 0; years = 0): TimeInterval</a></li>
- </ul>
- <ul class="simple nested-toc-section">inMicroseconds
- <li><a class="reference" href="#inMicroseconds%2CDuration" title="inMicroseconds(dur: Duration): int64">inMicroseconds(dur: Duration): int64</a></li>
- </ul>
- <ul class="simple nested-toc-section">inMilliseconds
- <li><a class="reference" href="#inMilliseconds%2CDuration" title="inMilliseconds(dur: Duration): int64">inMilliseconds(dur: Duration): int64</a></li>
- </ul>
- <ul class="simple nested-toc-section">inMinutes
- <li><a class="reference" href="#inMinutes%2CDuration" title="inMinutes(dur: Duration): int64">inMinutes(dur: Duration): int64</a></li>
- </ul>
- <ul class="simple nested-toc-section">inNanoseconds
- <li><a class="reference" href="#inNanoseconds%2CDuration" title="inNanoseconds(dur: Duration): int64">inNanoseconds(dur: Duration): int64</a></li>
- </ul>
- <ul class="simple nested-toc-section">inSeconds
- <li><a class="reference" href="#inSeconds%2CDuration" title="inSeconds(dur: Duration): int64">inSeconds(dur: Duration): int64</a></li>
- </ul>
- <ul class="simple nested-toc-section">inWeeks
- <li><a class="reference" href="#inWeeks%2CDuration" title="inWeeks(dur: Duration): int64">inWeeks(dur: Duration): int64</a></li>
- </ul>
- <ul class="simple nested-toc-section">inZone
- <li><a class="reference" href="#inZone%2CDateTime%2CTimezone" title="inZone(dt: DateTime; zone: Timezone): DateTime">inZone(dt: DateTime; zone: Timezone): DateTime</a></li>
- <li><a class="reference" href="#inZone%2CTime%2CTimezone" title="inZone(time: Time; zone: Timezone): DateTime">inZone(time: Time; zone: Timezone): DateTime</a></li>
- </ul>
- <ul class="simple nested-toc-section">isDst
- <li><a class="reference" href="#isDst%2CDateTime" title="isDst(dt: DateTime): bool">isDst(dt: DateTime): bool</a></li>
- </ul>
- <ul class="simple nested-toc-section">isDst=
- <li><a class="reference" href="#isDst%3D%2CDateTime%2Cbool" title="isDst=(dt: var DateTime; value: bool)">isDst=(dt: var DateTime; value: bool)</a></li>
- </ul>
- <ul class="simple nested-toc-section">isInitialized
- <li><a class="reference" href="#isInitialized%2CDateTime" title="isInitialized(dt: DateTime): bool">isInitialized(dt: DateTime): bool</a></li>
- </ul>
- <ul class="simple nested-toc-section">isLeapDay
- <li><a class="reference" href="#isLeapDay%2CDateTime" title="isLeapDay(dt: DateTime): bool">isLeapDay(dt: DateTime): bool</a></li>
- </ul>
- <ul class="simple nested-toc-section">isLeapYear
- <li><a class="reference" href="#isLeapYear%2Cint" title="isLeapYear(year: int): bool">isLeapYear(year: int): bool</a></li>
- </ul>
- <ul class="simple nested-toc-section">local
- <li><a class="reference" href="#local" title="local(): Timezone">local(): Timezone</a></li>
- <li><a class="reference" href="#local%2CDateTime" title="local(dt: DateTime): DateTime">local(dt: DateTime): DateTime</a></li>
- <li><a class="reference" href="#local%2CTime" title="local(t: Time): DateTime">local(t: Time): DateTime</a></li>
- </ul>
- <ul class="simple nested-toc-section">low
- <li><a class="reference" href="#low%2Ctypedesc%5BDuration%5D" title="low(typ: typedesc[Duration]): Duration">low(typ: typedesc[Duration]): Duration</a></li>
- <li><a class="reference" href="#low%2Ctypedesc%5BTime%5D" title="low(typ: typedesc[Time]): Time">low(typ: typedesc[Time]): Time</a></li>
- </ul>
- <ul class="simple nested-toc-section">microseconds
- <li><a class="reference" href="#microseconds%2Cint" title="microseconds(micros: int): TimeInterval">microseconds(micros: int): TimeInterval</a></li>
- </ul>
- <ul class="simple nested-toc-section">milliseconds
- <li><a class="reference" href="#milliseconds%2Cint" title="milliseconds(ms: int): TimeInterval">milliseconds(ms: int): TimeInterval</a></li>
- </ul>
- <ul class="simple nested-toc-section">minute
- <li><a class="reference" href="#minute%2CDateTime" title="minute(dt: DateTime): MinuteRange">minute(dt: DateTime): MinuteRange</a></li>
- </ul>
- <ul class="simple nested-toc-section">minute=
- <li><a class="reference" href="#minute%3D%2CDateTime%2CMinuteRange" title="minute=(dt: var DateTime; value: MinuteRange)">minute=(dt: var DateTime; value: MinuteRange)</a></li>
- </ul>
- <ul class="simple nested-toc-section">minutes
- <li><a class="reference" href="#minutes%2Cint" title="minutes(m: int): TimeInterval">minutes(m: int): TimeInterval</a></li>
- </ul>
- <ul class="simple nested-toc-section">month
- <li><a class="reference" href="#month%2CDateTime" title="month(dt: DateTime): Month">month(dt: DateTime): Month</a></li>
- </ul>
- <ul class="simple nested-toc-section">monthday
- <li><a class="reference" href="#monthday%2CDateTime" title="monthday(dt: DateTime): MonthdayRange">monthday(dt: DateTime): MonthdayRange</a></li>
- </ul>
- <ul class="simple nested-toc-section">monthdayZero=
- <li><a class="reference" href="#monthdayZero%3D%2CDateTime%2Cint" title="monthdayZero=(dt: var DateTime; value: int)">monthdayZero=(dt: var DateTime; value: int)</a></li>
- </ul>
- <ul class="simple nested-toc-section">months
- <li><a class="reference" href="#months%2Cint" title="months(m: int): TimeInterval">months(m: int): TimeInterval</a></li>
- </ul>
- <ul class="simple nested-toc-section">monthZero=
- <li><a class="reference" href="#monthZero%3D%2CDateTime%2Cint" title="monthZero=(dt: var DateTime; value: int)">monthZero=(dt: var DateTime; value: int)</a></li>
- </ul>
- <ul class="simple nested-toc-section">name
- <li><a class="reference" href="#name%2CTimezone" title="name(zone: Timezone): string">name(zone: Timezone): string</a></li>
- </ul>
- <ul class="simple nested-toc-section">nanosecond
- <li><a class="reference" href="#nanosecond%2CDateTime" title="nanosecond(dt: DateTime): NanosecondRange">nanosecond(dt: DateTime): NanosecondRange</a></li>
- <li><a class="reference" href="#nanosecond%2CTime" title="nanosecond(time: Time): NanosecondRange">nanosecond(time: Time): NanosecondRange</a></li>
- </ul>
- <ul class="simple nested-toc-section">nanosecond=
- <li><a class="reference" href="#nanosecond%3D%2CDateTime%2CNanosecondRange" title="nanosecond=(dt: var DateTime; value: NanosecondRange)">nanosecond=(dt: var DateTime; value: NanosecondRange)</a></li>
- </ul>
- <ul class="simple nested-toc-section">nanoseconds
- <li><a class="reference" href="#nanoseconds%2Cint" title="nanoseconds(nanos: int): TimeInterval">nanoseconds(nanos: int): TimeInterval</a></li>
- </ul>
- <ul class="simple nested-toc-section">newTimezone
- <li><a class="reference" href="#newTimezone%2Cstring%2Cproc%28Time%29%2Cproc%28Time%29" title="newTimezone(name: string; zonedTimeFromTimeImpl: proc (time: Time): ZonedTime {.
- tags: [], raises: [], gcsafe.}; zonedTimeFromAdjTimeImpl: proc (
- adjTime: Time): ZonedTime {.tags: [], raises: [], gcsafe.}): owned Timezone">newTimezone(name: string; zonedTimeFromTimeImpl: proc (time: Time): ZonedTime {.
- tags: [], raises: [], gcsafe.}; zonedTimeFromAdjTimeImpl: proc (
- adjTime: Time): ZonedTime {.tags: [], raises: [], gcsafe.}): owned Timezone</a></li>
- </ul>
- <ul class="simple nested-toc-section">now
- <li><a class="reference" href="#now" title="now(): DateTime">now(): DateTime</a></li>
- </ul>
- <ul class="simple nested-toc-section">parse
- <li><a class="reference" href="#parse%2Cstring%2Cstring%2CTimezone%2CDateTimeLocale" title="parse(input, f: string; tz: Timezone = local();
- loc: DateTimeLocale = DefaultLocale): DateTime">parse(input, f: string; tz: Timezone = local();
- loc: DateTimeLocale = DefaultLocale): DateTime</a></li>
- <li><a class="reference" href="#parse%2Cstring%2Cstatic%5Bstring%5D%2CTimezone%2CDateTimeLocale" title="parse(input: string; f: static[string]; zone: Timezone = local();
- loc: DateTimeLocale = DefaultLocale): DateTime">parse(input: string; f: static[string]; zone: Timezone = local();
- loc: DateTimeLocale = DefaultLocale): DateTime</a></li>
- <li><a class="reference" href="#parse%2Cstring%2CTimeFormat%2CTimezone%2CDateTimeLocale" title="parse(input: string; f: TimeFormat; zone: Timezone = local();
- loc: DateTimeLocale = DefaultLocale): DateTime">parse(input: string; f: TimeFormat; zone: Timezone = local();
- loc: DateTimeLocale = DefaultLocale): DateTime</a></li>
- </ul>
- <ul class="simple nested-toc-section">parseTime
- <li><a class="reference" href="#parseTime%2Cstring%2Cstring%2CTimezone" title="parseTime(input, f: string; zone: Timezone): Time">parseTime(input, f: string; zone: Timezone): Time</a></li>
- <li><a class="reference" href="#parseTime%2Cstring%2Cstatic%5Bstring%5D%2CTimezone" title="parseTime(input: string; f: static[string]; zone: Timezone): Time">parseTime(input: string; f: static[string]; zone: Timezone): Time</a></li>
- </ul>
- <ul class="simple nested-toc-section">second
- <li><a class="reference" href="#second%2CDateTime" title="second(dt: DateTime): SecondRange">second(dt: DateTime): SecondRange</a></li>
- </ul>
- <ul class="simple nested-toc-section">second=
- <li><a class="reference" href="#second%3D%2CDateTime%2CSecondRange" title="second=(dt: var DateTime; value: SecondRange)">second=(dt: var DateTime; value: SecondRange)</a></li>
- </ul>
- <ul class="simple nested-toc-section">seconds
- <li><a class="reference" href="#seconds%2Cint" title="seconds(s: int): TimeInterval">seconds(s: int): TimeInterval</a></li>
- </ul>
- <ul class="simple nested-toc-section">timezone
- <li><a class="reference" href="#timezone%2CDateTime" title="timezone(dt: DateTime): Timezone">timezone(dt: DateTime): Timezone</a></li>
- </ul>
- <ul class="simple nested-toc-section">timezone=
- <li><a class="reference" href="#timezone%3D%2CDateTime%2CTimezone" title="timezone=(dt: var DateTime; value: Timezone)">timezone=(dt: var DateTime; value: Timezone)</a></li>
- </ul>
- <ul class="simple nested-toc-section">toParts
- <li><a class="reference" href="#toParts%2CDuration" title="toParts(dur: Duration): DurationParts">toParts(dur: Duration): DurationParts</a></li>
- <li><a class="reference" href="#toParts%2CTimeInterval" title="toParts(ti: TimeInterval): TimeIntervalParts">toParts(ti: TimeInterval): TimeIntervalParts</a></li>
- </ul>
- <ul class="simple nested-toc-section">toTime
- <li><a class="reference" href="#toTime%2CDateTime" title="toTime(dt: DateTime): Time">toTime(dt: DateTime): Time</a></li>
- </ul>
- <ul class="simple nested-toc-section">toUnix
- <li><a class="reference" href="#toUnix%2CTime" title="toUnix(t: Time): int64">toUnix(t: Time): int64</a></li>
- </ul>
- <ul class="simple nested-toc-section">toUnixFloat
- <li><a class="reference" href="#toUnixFloat%2CTime" title="toUnixFloat(t: Time): float">toUnixFloat(t: Time): float</a></li>
- </ul>
- <ul class="simple nested-toc-section">toWinTime
- <li><a class="reference" href="#toWinTime%2CTime" title="toWinTime(t: Time): int64">toWinTime(t: Time): int64</a></li>
- </ul>
- <ul class="simple nested-toc-section">utc
- <li><a class="reference" href="#utc" title="utc(): Timezone">utc(): Timezone</a></li>
- <li><a class="reference" href="#utc%2CDateTime" title="utc(dt: DateTime): DateTime">utc(dt: DateTime): DateTime</a></li>
- <li><a class="reference" href="#utc%2CTime" title="utc(t: Time): DateTime">utc(t: Time): DateTime</a></li>
- </ul>
- <ul class="simple nested-toc-section">utcOffset
- <li><a class="reference" href="#utcOffset%2CDateTime" title="utcOffset(dt: DateTime): int">utcOffset(dt: DateTime): int</a></li>
- </ul>
- <ul class="simple nested-toc-section">utcOffset=
- <li><a class="reference" href="#utcOffset%3D%2CDateTime%2Cint" title="utcOffset=(dt: var DateTime; value: int)">utcOffset=(dt: var DateTime; value: int)</a></li>
- </ul>
- <ul class="simple nested-toc-section">weekday
- <li><a class="reference" href="#weekday%2CDateTime" title="weekday(dt: DateTime): WeekDay">weekday(dt: DateTime): WeekDay</a></li>
- </ul>
- <ul class="simple nested-toc-section">weekday=
- <li><a class="reference" href="#weekday%3D%2CDateTime%2CWeekDay" title="weekday=(dt: var DateTime; value: WeekDay)">weekday=(dt: var DateTime; value: WeekDay)</a></li>
- </ul>
- <ul class="simple nested-toc-section">weeks
- <li><a class="reference" href="#weeks%2Cint" title="weeks(w: int): TimeInterval">weeks(w: int): TimeInterval</a></li>
- </ul>
- <ul class="simple nested-toc-section">year
- <li><a class="reference" href="#year%2CDateTime" title="year(dt: DateTime): int">year(dt: DateTime): int</a></li>
- </ul>
- <ul class="simple nested-toc-section">year=
- <li><a class="reference" href="#year%3D%2CDateTime%2Cint" title="year=(dt: var DateTime; value: int)">year=(dt: var DateTime; value: int)</a></li>
- </ul>
- <ul class="simple nested-toc-section">yearday
- <li><a class="reference" href="#yearday%2CDateTime" title="yearday(dt: DateTime): YeardayRange">yearday(dt: DateTime): YeardayRange</a></li>
- </ul>
- <ul class="simple nested-toc-section">yearday=
- <li><a class="reference" href="#yearday%3D%2CDateTime%2CYeardayRange" title="yearday=(dt: var DateTime; value: YeardayRange)">yearday=(dt: var DateTime; value: YeardayRange)</a></li>
- </ul>
- <ul class="simple nested-toc-section">years
- <li><a class="reference" href="#years%2Cint" title="years(y: int): TimeInterval">years(y: int): TimeInterval</a></li>
- </ul>
- <ul class="simple nested-toc-section">zonedTimeFromAdjTime
- <li><a class="reference" href="#zonedTimeFromAdjTime%2CTimezone%2CTime" title="zonedTimeFromAdjTime(zone: Timezone; adjTime: Time): ZonedTime">zonedTimeFromAdjTime(zone: Timezone; adjTime: Time): ZonedTime</a></li>
- </ul>
- <ul class="simple nested-toc-section">zonedTimeFromTime
- <li><a class="reference" href="#zonedTimeFromTime%2CTimezone%2CTime" title="zonedTimeFromTime(zone: Timezone; time: Time): ZonedTime">zonedTimeFromTime(zone: Timezone; time: Time): ZonedTime</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/times.nim#L1" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1" class="link-seesrc" target="_blank" >Edit</a>
- <div id="tocRoot"></div>
-
- <p class="module-desc"><p>The <tt class="docutils literal"><span class="pre"><span class="Identifier">times</span></span></tt> module contains routines and types for dealing with time using the <a class="reference external" href="https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar">proleptic Gregorian calendar</a>. It's also available for the <a class="reference external" href="backends.html#backends-the-javascript-target">JavaScript target</a>.</p>
- <p>Although the <tt class="docutils literal"><span class="pre"><span class="Identifier">times</span></span></tt> module supports nanosecond time resolution, the resolution used by <tt class="docutils literal"><span class="pre"><span class="Identifier">getTime</span><span class="Punctuation">(</span><span class="Punctuation">)</span></span></tt> depends on the platform and backend (JS is limited to millisecond precision).</p>
- <h1><a class="toc-backref" id="examples" href="#examples">Examples</a></h1><p><pre class="listing"><span class="Keyword">import</span> <span class="Identifier">std</span><span class="Operator">/</span><span class="Punctuation">[</span><span class="Identifier">times</span><span class="Punctuation">,</span> <span class="Identifier">os</span><span class="Punctuation">]</span>
- <span class="Comment"># Simple benchmarking</span>
- <span class="Keyword">let</span> <span class="Identifier">time</span> <span class="Operator">=</span> <span class="Identifier">cpuTime</span><span class="Punctuation">(</span><span class="Punctuation">)</span>
- <span class="Identifier">sleep</span><span class="Punctuation">(</span><span class="DecNumber">100</span><span class="Punctuation">)</span> <span class="Comment"># Replace this with something to be timed</span>
- <span class="Identifier">echo</span> <span class="StringLit">"Time taken: "</span><span class="Punctuation">,</span> <span class="Identifier">cpuTime</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">-</span> <span class="Identifier">time</span>
- <span class="Comment"># Current date & time</span>
- <span class="Keyword">let</span> <span class="Identifier">now1</span> <span class="Operator">=</span> <span class="Identifier">now</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Comment"># Current timestamp as a DateTime in local time</span>
- <span class="Keyword">let</span> <span class="Identifier">now2</span> <span class="Operator">=</span> <span class="Identifier">now</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">utc</span> <span class="Comment"># Current timestamp as a DateTime in UTC</span>
- <span class="Keyword">let</span> <span class="Identifier">now3</span> <span class="Operator">=</span> <span class="Identifier">getTime</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Comment"># Current timestamp as a Time</span>
- <span class="Comment"># Arithmetic using Duration</span>
- <span class="Identifier">echo</span> <span class="StringLit">"One hour from now : "</span><span class="Punctuation">,</span> <span class="Identifier">now</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">+</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">hours</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span>
- <span class="Comment"># Arithmetic using TimeInterval</span>
- <span class="Identifier">echo</span> <span class="StringLit">"One year from now : "</span><span class="Punctuation">,</span> <span class="Identifier">now</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">+</span> <span class="FloatNumber">1.</span><span class="Identifier">years</span>
- <span class="Identifier">echo</span> <span class="StringLit">"One month from now : "</span><span class="Punctuation">,</span> <span class="Identifier">now</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">+</span> <span class="FloatNumber">1.</span><span class="Identifier">months</span></pre></p>
- <h1><a class="toc-backref" id="parsing-and-formatting-dates" href="#parsing-and-formatting-dates">Parsing and Formatting Dates</a></h1><p>The <tt class="docutils literal"><span class="pre"><span class="Identifier">DateTime</span></span></tt> type can be parsed and formatted using the different <tt class="docutils literal"><span class="pre"><span class="Identifier">parse</span></span></tt> and <tt class="docutils literal"><span class="pre"><span class="Identifier">format</span></span></tt> procedures.</p>
- <p><pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dt</span> <span class="Operator">=</span> <span class="Identifier">parse</span><span class="Punctuation">(</span><span class="StringLit">"2000-01-01"</span><span class="Punctuation">,</span> <span class="StringLit">"yyyy-MM-dd"</span><span class="Punctuation">)</span>
- <span class="Identifier">echo</span> <span class="Identifier">dt</span><span class="Operator">.</span><span class="Identifier">format</span><span class="Punctuation">(</span><span class="StringLit">"yyyy-MM-dd"</span><span class="Punctuation">)</span></pre></p>
- <p>The different format patterns that are supported are documented below.</p>
- <table border="1" class="docutils"><tr><th>Pattern</th><th>Description</th><th>Example</th></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">d</span></span></tt></td><td>Numeric value representing the day of the month, it will be either one or two digits long.</td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">1</span><span class="Operator">/</span><span class="DecNumber">04</span><span class="Operator">/</span><span class="DecNumber">2012</span> <span class="Operator">-></span> <span class="DecNumber">1</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">21</span><span class="Operator">/</span><span class="DecNumber">04</span><span class="Operator">/</span><span class="DecNumber">2012</span> <span class="Operator">-></span> <span class="DecNumber">21</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">dd</span></span></tt></td><td>Same as above, but is always two digits. </td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">1</span><span class="Operator">/</span><span class="DecNumber">04</span><span class="Operator">/</span><span class="DecNumber">2012</span> <span class="Operator">-></span> <span class="DecNumber">01</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">21</span><span class="Operator">/</span><span class="DecNumber">04</span><span class="Operator">/</span><span class="DecNumber">2012</span> <span class="Operator">-></span> <span class="DecNumber">21</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">ddd</span></span></tt></td><td>Three letter string which indicates the day of the week. </td><td><p><tt class="docutils literal"><span class="pre"><span class="Identifier">Saturday</span> <span class="Operator">-></span> <span class="Identifier">Sat</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="Identifier">Monday</span> <span class="Operator">-></span> <span class="Identifier">Mon</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">dddd</span></span></tt></td><td>Full string for the day of the week. </td><td><p><tt class="docutils literal"><span class="pre"><span class="Identifier">Saturday</span> <span class="Operator">-></span> <span class="Identifier">Saturday</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="Identifier">Monday</span> <span class="Operator">-></span> <span class="Identifier">Monday</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">GG</span></span></tt></td><td>The last two digits of the Iso Week-Year</td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">30</span><span class="Operator">/</span><span class="DecNumber">12</span><span class="Operator">/</span><span class="DecNumber">2012</span> <span class="Operator">-></span> <span class="DecNumber">13</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">GGGG</span></span></tt></td><td>The Iso week-calendar year padded to four digits</td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">30</span><span class="Operator">/</span><span class="DecNumber">12</span><span class="Operator">/</span><span class="DecNumber">2012</span> <span class="Operator">-></span> <span class="DecNumber">2013</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">h</span></span></tt></td><td>The hours in one digit if possible. Ranging from 1-12. </td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">5</span><span class="Identifier">pm</span> <span class="Operator">-></span> <span class="DecNumber">5</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">2</span><span class="Identifier">am</span> <span class="Operator">-></span> <span class="DecNumber">2</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">hh</span></span></tt></td><td>The hours in two digits always. If the hour is one digit, 0 is prepended. </td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">5</span><span class="Identifier">pm</span> <span class="Operator">-></span> <span class="DecNumber">05</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">11</span><span class="Identifier">am</span> <span class="Operator">-></span> <span class="DecNumber">11</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">H</span></span></tt></td><td>The hours in one digit if possible, ranging from 0-23. </td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">5</span><span class="Identifier">pm</span> <span class="Operator">-></span> <span class="DecNumber">17</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">2</span><span class="Identifier">am</span> <span class="Operator">-></span> <span class="DecNumber">2</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">HH</span></span></tt></td><td>The hours in two digits always. 0 is prepended if the hour is one digit. </td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">5</span><span class="Identifier">pm</span> <span class="Operator">-></span> <span class="DecNumber">17</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">2</span><span class="Identifier">am</span> <span class="Operator">-></span> <span class="DecNumber">02</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">m</span></span></tt></td><td>The minutes in one digit if possible. </td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">5</span><span class="Punctuation">:</span><span class="DecNumber">30</span> <span class="Operator">-></span> <span class="DecNumber">30</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">2</span><span class="Punctuation">:</span><span class="DecNumber">01</span> <span class="Operator">-></span> <span class="DecNumber">1</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">mm</span></span></tt></td><td>Same as above but always two digits, 0 is prepended if the minute is one digit. </td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">5</span><span class="Punctuation">:</span><span class="DecNumber">30</span> <span class="Operator">-></span> <span class="DecNumber">30</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">2</span><span class="Punctuation">:</span><span class="DecNumber">01</span> <span class="Operator">-></span> <span class="DecNumber">01</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">M</span></span></tt></td><td>The month in one digit if possible. </td><td><p><tt class="docutils literal"><span class="pre"><span class="Identifier">September</span> <span class="Operator">-></span> <span class="DecNumber">9</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="Identifier">December</span> <span class="Operator">-></span> <span class="DecNumber">12</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">MM</span></span></tt></td><td>The month in two digits always. 0 is prepended if the month value is one digit. </td><td><p><tt class="docutils literal"><span class="pre"><span class="Identifier">September</span> <span class="Operator">-></span> <span class="DecNumber">09</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="Identifier">December</span> <span class="Operator">-></span> <span class="DecNumber">12</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">MMM</span></span></tt></td><td>Abbreviated three-letter form of the month. </td><td><p><tt class="docutils literal"><span class="pre"><span class="Identifier">September</span> <span class="Operator">-></span> <span class="Identifier">Sep</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="Identifier">December</span> <span class="Operator">-></span> <span class="Identifier">Dec</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">MMMM</span></span></tt></td><td>Full month string, properly capitalized.</td><td><p><tt class="docutils literal"><span class="pre"><span class="Identifier">September</span> <span class="Operator">-></span> <span class="Identifier">September</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">s</span></span></tt></td><td>Seconds as one digit if possible.</td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">00</span><span class="Punctuation">:</span><span class="DecNumber">00</span><span class="Punctuation">:</span><span class="DecNumber">06</span> <span class="Operator">-></span> <span class="DecNumber">6</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">ss</span></span></tt></td><td>Same as above but always two digits. 0 is prepended if the second is one digit.</td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">00</span><span class="Punctuation">:</span><span class="DecNumber">00</span><span class="Punctuation">:</span><span class="DecNumber">06</span> <span class="Operator">-></span> <span class="DecNumber">06</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">t</span></span></tt></td><td><tt class="docutils literal"><span class="pre"><span class="Identifier">A</span></span></tt> when time is in the AM. <tt class="docutils literal"><span class="pre"><span class="Identifier">P</span></span></tt> when time is in the PM. </td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">5</span><span class="Identifier">pm</span> <span class="Operator">-></span> <span class="Identifier">P</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">2</span><span class="Identifier">am</span> <span class="Operator">-></span> <span class="Identifier">A</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">tt</span></span></tt></td><td>Same as above, but <tt class="docutils literal"><span class="pre"><span class="Identifier">AM</span></span></tt> and <tt class="docutils literal"><span class="pre"><span class="Identifier">PM</span></span></tt> instead of <tt class="docutils literal"><span class="pre"><span class="Identifier">A</span></span></tt> and <tt class="docutils literal"><span class="pre"><span class="Identifier">P</span></span></tt> respectively. </td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">5</span><span class="Identifier">pm</span> <span class="Operator">-></span> <span class="Identifier">PM</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">2</span><span class="Identifier">am</span> <span class="Operator">-></span> <span class="Identifier">AM</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">yy</span></span></tt></td><td>The last two digits of the year. When parsing, the current century is assumed.</td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">2012</span> <span class="Identifier">AD</span> <span class="Operator">-></span> <span class="DecNumber">12</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">yyyy</span></span></tt></td><td>The year, padded to at least four digits. Is always positive, even when the year is BC. When the year is more than four digits, '+' is prepended. </td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">2012</span> <span class="Identifier">AD</span> <span class="Operator">-></span> <span class="DecNumber">2012</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">24</span> <span class="Identifier">AD</span> <span class="Operator">-></span> <span class="DecNumber">0024</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">24</span> <span class="Identifier">BC</span> <span class="Operator">-></span> <span class="DecNumber">00024</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">12345</span> <span class="Identifier">AD</span> <span class="Operator">-></span> <span class="Operator">+</span><span class="DecNumber">12345</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">YYYY</span></span></tt></td><td>The year without any padding. Is always positive, even when the year is BC.</td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">2012</span> <span class="Identifier">AD</span> <span class="Operator">-></span> <span class="DecNumber">2012</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">24</span> <span class="Identifier">AD</span> <span class="Operator">-></span> <span class="DecNumber">24</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">24</span> <span class="Identifier">BC</span> <span class="Operator">-></span> <span class="DecNumber">24</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">12345</span> <span class="Identifier">AD</span> <span class="Operator">-></span> <span class="DecNumber">12345</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">uuuu</span></span></tt></td><td>The year, padded to at least four digits. Will be negative when the year is BC. When the year is more than four digits, '+' is prepended unless the year is BC.</td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">2012</span> <span class="Identifier">AD</span> <span class="Operator">-></span> <span class="DecNumber">2012</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">24</span> <span class="Identifier">AD</span> <span class="Operator">-></span> <span class="DecNumber">0024</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">24</span> <span class="Identifier">BC</span> <span class="Operator">-></span> <span class="Operator">-</span><span class="DecNumber">0023</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">12345</span> <span class="Identifier">AD</span> <span class="Operator">-></span> <span class="Operator">+</span><span class="DecNumber">12345</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">UUUU</span></span></tt></td><td>The year without any padding. Will be negative when the year is BC.</td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">2012</span> <span class="Identifier">AD</span> <span class="Operator">-></span> <span class="DecNumber">2012</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">24</span> <span class="Identifier">AD</span> <span class="Operator">-></span> <span class="DecNumber">24</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">24</span> <span class="Identifier">BC</span> <span class="Operator">-></span> <span class="Operator">-</span><span class="DecNumber">23</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">12345</span> <span class="Identifier">AD</span> <span class="Operator">-></span> <span class="DecNumber">12345</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">V</span></span></tt></td><td>The Iso Week-Number as one or two digits </td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">3</span><span class="Operator">/</span><span class="DecNumber">2</span><span class="Operator">/</span><span class="DecNumber">2012</span> <span class="Operator">-></span> <span class="DecNumber">5</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">1</span><span class="Operator">/</span><span class="DecNumber">4</span><span class="Operator">/</span><span class="DecNumber">2012</span> <span class="Operator">-></span> <span class="DecNumber">13</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">VV</span></span></tt></td><td>The Iso Week-Number as two digits always. 0 is prepended if one digit. </td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">3</span><span class="Operator">/</span><span class="DecNumber">2</span><span class="Operator">/</span><span class="DecNumber">2012</span> <span class="Operator">-></span> <span class="DecNumber">05</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">1</span><span class="Operator">/</span><span class="DecNumber">4</span><span class="Operator">/</span><span class="DecNumber">2012</span> <span class="Operator">-></span> <span class="DecNumber">13</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">z</span></span></tt></td><td>Displays the timezone offset from UTC. </td><td><p><tt class="docutils literal"><span class="pre"><span class="Identifier">UTC</span><span class="Operator">+</span><span class="DecNumber">7</span> <span class="Operator">-></span> <span class="Operator">+</span><span class="DecNumber">7</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="Identifier">UTC</span><span class="Operator">-</span><span class="DecNumber">5</span> <span class="Operator">-></span> <span class="Operator">-</span><span class="DecNumber">5</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">zz</span></span></tt></td><td>Same as above but with leading 0. </td><td><p><tt class="docutils literal"><span class="pre"><span class="Identifier">UTC</span><span class="Operator">+</span><span class="DecNumber">7</span> <span class="Operator">-></span> <span class="Operator">+</span><span class="DecNumber">07</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="Identifier">UTC</span><span class="Operator">-</span><span class="DecNumber">5</span> <span class="Operator">-></span> <span class="Operator">-</span><span class="DecNumber">05</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">zzz</span></span></tt></td><td>Same as above but with <tt class="docutils literal"><span class="pre"><span class="Punctuation">:</span><span class="Identifier">mm</span></span></tt> where <em>mm</em> represents minutes. </td><td><p><tt class="docutils literal"><span class="pre"><span class="Identifier">UTC</span><span class="Operator">+</span><span class="DecNumber">7</span> <span class="Operator">-></span> <span class="Operator">+</span><span class="DecNumber">07</span><span class="Punctuation">:</span><span class="DecNumber">00</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="Identifier">UTC</span><span class="Operator">-</span><span class="DecNumber">5</span> <span class="Operator">-></span> <span class="Operator">-</span><span class="DecNumber">05</span><span class="Punctuation">:</span><span class="DecNumber">00</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">ZZZ</span></span></tt></td><td>Same as above but with <tt class="docutils literal"><span class="pre"><span class="Identifier">mm</span></span></tt> where <em>mm</em> represents minutes. </td><td><p><tt class="docutils literal"><span class="pre"><span class="Identifier">UTC</span><span class="Operator">+</span><span class="DecNumber">7</span> <span class="Operator">-></span> <span class="Operator">+</span><span class="DecNumber">0700</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="Identifier">UTC</span><span class="Operator">-</span><span class="DecNumber">5</span> <span class="Operator">-></span> <span class="Operator">-</span><span class="DecNumber">0500</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">zzzz</span></span></tt></td><td>Same as above but with <tt class="docutils literal"><span class="pre"><span class="Punctuation">:</span><span class="Identifier">ss</span></span></tt> where <em>ss</em> represents seconds. </td><td><p><tt class="docutils literal"><span class="pre"><span class="Identifier">UTC</span><span class="Operator">+</span><span class="DecNumber">7</span> <span class="Operator">-></span> <span class="Operator">+</span><span class="DecNumber">07</span><span class="Punctuation">:</span><span class="DecNumber">00</span><span class="Punctuation">:</span><span class="DecNumber">00</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="Identifier">UTC</span><span class="Operator">-</span><span class="DecNumber">5</span> <span class="Operator">-></span> <span class="Operator">-</span><span class="DecNumber">05</span><span class="Punctuation">:</span><span class="DecNumber">00</span><span class="Punctuation">:</span><span class="DecNumber">00</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">ZZZZ</span></span></tt></td><td>Same as above but with <tt class="docutils literal"><span class="pre"><span class="Identifier">ss</span></span></tt> where <em>ss</em> represents seconds. </td><td><p><tt class="docutils literal"><span class="pre"><span class="Identifier">UTC</span><span class="Operator">+</span><span class="DecNumber">7</span> <span class="Operator">-></span> <span class="Operator">+</span><span class="DecNumber">070000</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="Identifier">UTC</span><span class="Operator">-</span><span class="DecNumber">5</span> <span class="Operator">-></span> <span class="Operator">-</span><span class="DecNumber">050000</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">g</span></span></tt></td><td>Era: AD or BC </td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">300</span> <span class="Identifier">AD</span> <span class="Operator">-></span> <span class="Identifier">AD</span></span></tt><br/><tt class="docutils literal"><span class="pre"><span class="DecNumber">300</span> <span class="Identifier">BC</span> <span class="Operator">-></span> <span class="Identifier">BC</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">fff</span></span></tt></td><td>Milliseconds display</td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">1000000</span> <span class="Identifier">nanoseconds</span> <span class="Operator">-></span> <span class="DecNumber">1</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">ffffff</span></span></tt></td><td>Microseconds display</td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">1000000</span> <span class="Identifier">nanoseconds</span> <span class="Operator">-></span> <span class="DecNumber">1000</span></span></tt><br/></p></td></tr>
- <tr><td><tt class="docutils literal"><span class="pre"><span class="Identifier">fffffffff</span></span></tt></td><td>Nanoseconds display</td><td><p><tt class="docutils literal"><span class="pre"><span class="DecNumber">1000000</span> <span class="Identifier">nanoseconds</span> <span class="Operator">-></span> <span class="DecNumber">1000000</span></span></tt><br/></p></td></tr>
- </table><p>Other strings can be inserted by putting them in <tt class="docutils literal"><span class="pre"><span class="CharLit">''</span></span></tt>. For example <tt class="docutils literal"><span class="pre"><span class="Identifier">hh</span><span class="CharLit">'->'</span><span class="Identifier">mm</span></span></tt> will give <tt class="docutils literal"><span class="pre"><span class="DecNumber">01</span><span class="Operator">-></span><span class="DecNumber">56</span></span></tt>. In addition to spaces, the following characters can be inserted without quoting them: <tt class="docutils literal"><span class="pre"><span class="Punctuation">:</span></span></tt> <tt class="docutils literal"><span class="pre"><span class="Operator">-</span></span></tt> <tt class="docutils literal"><span class="pre"><span class="Punctuation">,</span></span></tt> <tt class="docutils literal"><span class="pre"><span class="Operator">.</span></span></tt> <tt class="docutils literal"><span class="pre"><span class="Punctuation">(</span></span></tt> <tt class="docutils literal"><span class="pre"><span class="Punctuation">)</span></span></tt> <tt class="docutils literal"><span class="pre"><span class="Operator">/</span></span></tt> <tt class="docutils literal"><span class="pre"><span class="Punctuation">[</span></span></tt> <tt class="docutils literal"><span class="pre"><span class="Punctuation">]</span></span></tt>. A literal <tt class="docutils literal"><span class="pre"><span class="CharLit">'</span></span></tt> can be specified with <tt class="docutils literal"><span class="pre"><span class="CharLit">''</span></span></tt>.</p>
- <p>However you don't need to necessarily separate format patterns, as an unambiguous format string like <tt class="docutils literal"><span class="pre"><span class="Identifier">yyyyMMddhhmmss</span></span></tt> is also valid (although only for years in the range 1..9999).</p>
- <h1><a class="toc-backref" id="duration-vs-timeinterval" href="#duration-vs-timeinterval">Duration vs TimeInterval</a></h1><p>The <tt class="docutils literal"><span class="pre"><span class="Identifier">times</span></span></tt> module exports two similar types that are both used to represent some amount of time: <a class="reference external" href="#Duration">Duration</a> and <a class="reference external" href="#TimeInterval">TimeInterval</a>. This section explains how they differ and when one should be preferred over the other (short answer: use <tt class="docutils literal"><span class="pre"><span class="Identifier">Duration</span></span></tt> unless support for months and years is needed).</p>
- <h2><a class="toc-backref" id="duration-vs-timeinterval-duration" href="#duration-vs-timeinterval-duration">Duration</a></h2><p>A <tt class="docutils literal"><span class="pre"><span class="Identifier">Duration</span></span></tt> represents a duration of time stored as seconds and nanoseconds. A <tt class="docutils literal"><span class="pre"><span class="Identifier">Duration</span></span></tt> is always fully normalized, so <tt class="docutils literal"><span class="pre"><span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">hours</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span></span></tt> and <tt class="docutils literal"><span class="pre"><span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">minutes</span> <span class="Operator">=</span> <span class="DecNumber">60</span><span class="Punctuation">)</span></span></tt> are equivalent.</p>
- <p>Arithmetic with a <tt class="docutils literal"><span class="pre"><span class="Identifier">Duration</span></span></tt> is very fast, especially when used with the <tt class="docutils literal"><span class="pre"><span class="Identifier">Time</span></span></tt> type, since it only involves basic arithmetic. Because <tt class="docutils literal"><span class="pre"><span class="Identifier">Duration</span></span></tt> is more performant and easier to understand it should generally preferred.</p>
- <h2><a class="toc-backref" id="duration-vs-timeinterval-timeinterval" href="#duration-vs-timeinterval-timeinterval">TimeInterval</a></h2><p>A <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeInterval</span></span></tt> represents an amount of time expressed in calendar units, for example "1 year and 2 days". Since some units cannot be normalized (the length of a year is different for leap years for example), the <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeInterval</span></span></tt> type uses separate fields for every unit. The <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeInterval</span></span></tt>'s returned from this module generally don't normalize <strong>anything</strong>, so even units that could be normalized (like seconds, milliseconds and so on) are left untouched.</p>
- <p>Arithmetic with a <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeInterval</span></span></tt> can be very slow, because it requires timezone information.</p>
- <p>Since it's slower and more complex, the <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeInterval</span></span></tt> type should be avoided unless the program explicitly needs the features it offers that <tt class="docutils literal"><span class="pre"><span class="Identifier">Duration</span></span></tt> doesn't have.</p>
- <h2><a class="toc-backref" id="duration-vs-timeinterval-how-long-is-a-dayqmark" href="#duration-vs-timeinterval-how-long-is-a-dayqmark">How long is a day?</a></h2><p>It should be especially noted that the handling of days differs between <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeInterval</span></span></tt> and <tt class="docutils literal"><span class="pre"><span class="Identifier">Duration</span></span></tt>. The <tt class="docutils literal"><span class="pre"><span class="Identifier">Duration</span></span></tt> type always treats a day as exactly 86400 seconds. For <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeInterval</span></span></tt>, it's more complex.</p>
- <p>As an example, consider the amount of time between these two timestamps, both in the same timezone:</p>
- <ul class="simple"><li>2018-03-25T12:00+02:00</li>
- <li>2018-03-26T12:00+01:00</li>
- </ul>
- <p>If only the date & time is considered, it appears that exactly one day has passed. However, the UTC offsets are different, which means that the UTC offset was changed somewhere in between. This happens twice each year for timezones that use daylight savings time. Because of this change, the amount of time that has passed is actually 25 hours.</p>
- <p>The <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeInterval</span></span></tt> type uses calendar units, and will say that exactly one day has passed. The <tt class="docutils literal"><span class="pre"><span class="Identifier">Duration</span></span></tt> type on the other hand normalizes everything to seconds, and will therefore say that 90000 seconds has passed, which is the same as 25 hours.</p>
- <h1><a class="toc-backref" id="see-also" href="#see-also">See also</a></h1><ul class="simple"><li><a class="reference external" href="monotimes.html">monotimes 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="strutils.html">strutils</a>, <a class="reference external" href="math.html">math</a>, <a class="reference external" href="options.html">options</a>, <a class="reference external" href="since.html">since</a>, <a class="reference external" href="assertions.html">assertions</a>, <a class="reference external" href="posix.html">posix</a>
- </dl>
- </div>
- <div class="section" id="7">
- <h1><a class="toc-backref" href="#7">Types</a></h1>
- <dl class="item">
- <div id="DateTime">
- <dt><pre><a href="times.html#DateTime"><span class="Identifier">DateTime</span></a> <span class="Other">=</span> <span class="Keyword">object</span> <span class="Keyword">of</span> <a href="system.html#RootObj"><span class="Identifier">RootObj</span></a></pre></dt>
- <dd>
-
-
- Represents a time in different parts. Although this type can represent leap seconds, they are generally not supported in this module. They are not ignored, but the <tt class="docutils literal"><span class="pre"><span class="Identifier">DateTime</span></span></tt>'s returned by procedures in this module will never have a leap second.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L316" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L316" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="DateTimeLocale">
- <dt><pre><a href="times.html#DateTimeLocale"><span class="Identifier">DateTimeLocale</span></a> <span class="Other">=</span> <span class="Keyword">object</span>
- <span class="Identifier">MMM</span><span class="Operator">*</span><span class="Other">:</span> <a href="system.html#array"><span class="Identifier">array</span></a><span class="Other">[</span><span class="Identifier">mJan</span> <span class="Operator">..</span> <span class="Identifier">mDec</span><span class="Other">,</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">]</span>
- <span class="Identifier">MMMM</span><span class="Operator">*</span><span class="Other">:</span> <a href="system.html#array"><span class="Identifier">array</span></a><span class="Other">[</span><span class="Identifier">mJan</span> <span class="Operator">..</span> <span class="Identifier">mDec</span><span class="Other">,</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">]</span>
- <span class="Identifier">ddd</span><span class="Operator">*</span><span class="Other">:</span> <a href="system.html#array"><span class="Identifier">array</span></a><span class="Other">[</span><span class="Identifier">dMon</span> <span class="Operator">..</span> <span class="Identifier">dSun</span><span class="Other">,</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">]</span>
- <span class="Identifier">dddd</span><span class="Operator">*</span><span class="Other">:</span> <a href="system.html#array"><span class="Identifier">array</span></a><span class="Other">[</span><span class="Identifier">dMon</span> <span class="Operator">..</span> <span class="Identifier">dSun</span><span class="Other">,</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">]</span></pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1548" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1548" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="Duration">
- <dt><pre><a href="times.html#Duration"><span class="Identifier">Duration</span></a> <span class="Other">=</span> <span class="Keyword">object</span></pre></dt>
- <dd>
-
- <p>Represents a fixed duration of time, meaning a duration that has constant length independent of the context.</p>
- <p>To create a new <tt class="docutils literal"><span class="pre"><span class="Identifier">Duration</span></span></tt>, use <a class="reference external" href="#initDuration,int64,int64,int64,int64,int64,int64,int64,int64">initDuration</a>. Instead of trying to access the private attributes, use <a class="reference external" href="#inSeconds,Duration">inSeconds</a> for converting to seconds and <a class="reference external" href="#inNanoseconds,Duration">inNanoseconds</a> for converting to nanoseconds.</p>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L334" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L334" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="DurationParts">
- <dt><pre><a href="times.html#DurationParts"><span class="Identifier">DurationParts</span></a> <span class="Other">=</span> <a href="system.html#array"><span class="Identifier">array</span></a><span class="Other">[</span><span class="Identifier">FixedTimeUnit</span><span class="Other">,</span> <a href="system.html#int64"><span class="Identifier">int64</span></a><span class="Other">]</span></pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L398" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L398" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="FixedTimeUnit">
- <dt><pre><a href="times.html#FixedTimeUnit"><span class="Identifier">FixedTimeUnit</span></a> <span class="Other">=</span> <a href="system.html#range"><span class="Identifier">range</span></a><span class="Other">[</span><span class="Identifier">Nanoseconds</span> <span class="Operator">..</span> <span class="Identifier">Weeks</span><span class="Other">]</span></pre></dt>
- <dd>
-
-
- Subrange of <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeUnit</span></span></tt> that only includes units of fixed duration. These are the units that can be represented by a <tt class="docutils literal"><span class="pre"><span class="Identifier">Duration</span></span></tt>.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L349" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L349" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="HourRange">
- <dt><pre><a href="times.html#HourRange"><span class="Identifier">HourRange</span></a> <span class="Other">=</span> <a href="system.html#range"><span class="Identifier">range</span></a><span class="Other">[</span><span class="DecNumber">0</span> <span class="Operator">..</span> <span class="DecNumber">23</span><span class="Other">]</span></pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L297" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L297" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="IsoWeekRange">
- <dt><pre><a href="times.html#IsoWeekRange"><span class="Identifier">IsoWeekRange</span></a> <span class="Other">=</span> <a href="system.html#range"><span class="Identifier">range</span></a><span class="Other">[</span><span class="DecNumber">1</span> <span class="Operator">..</span> <span class="DecNumber">53</span><span class="Other">]</span></pre></dt>
- <dd>
-
- An ISO 8601 calendar week number.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L305" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L305" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="IsoYear">
- <dt><pre><a href="times.html#IsoYear"><span class="Identifier">IsoYear</span></a> <span class="Other">=</span> <span class="Keyword">distinct</span> <a href="system.html#int"><span class="Identifier">int</span></a></pre></dt>
- <dd>
-
- An ISO 8601 calendar year number.<div class="admonition admonition-warning"><span class="admonition-warning-text"><b>Warning:</b></span>
- The ISO week-based year can correspond to the following or previous year from 29 December to January 3.</div>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L307" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L307" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="MinuteRange">
- <dt><pre><a href="times.html#MinuteRange"><span class="Identifier">MinuteRange</span></a> <span class="Other">=</span> <a href="system.html#range"><span class="Identifier">range</span></a><span class="Other">[</span><span class="DecNumber">0</span> <span class="Operator">..</span> <span class="DecNumber">59</span><span class="Other">]</span></pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L298" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L298" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="Month">
- <dt><pre><a href="times.html#Month"><span class="Identifier">Month</span></a> <span class="Other">=</span> <span class="Keyword">enum</span>
- <span class="Identifier">mJan</span> <span class="Other">=</span> <span class="Other">(</span><span class="DecNumber">1</span><span class="Other">,</span> <span class="StringLit">"January"</span><span class="Other">)</span><span class="Other">,</span> <span class="Identifier">mFeb</span> <span class="Other">=</span> <span class="StringLit">"February"</span><span class="Other">,</span> <span class="Identifier">mMar</span> <span class="Other">=</span> <span class="StringLit">"March"</span><span class="Other">,</span> <span class="Identifier">mApr</span> <span class="Other">=</span> <span class="StringLit">"April"</span><span class="Other">,</span>
- <span class="Identifier">mMay</span> <span class="Other">=</span> <span class="StringLit">"May"</span><span class="Other">,</span> <span class="Identifier">mJun</span> <span class="Other">=</span> <span class="StringLit">"June"</span><span class="Other">,</span> <span class="Identifier">mJul</span> <span class="Other">=</span> <span class="StringLit">"July"</span><span class="Other">,</span> <span class="Identifier">mAug</span> <span class="Other">=</span> <span class="StringLit">"August"</span><span class="Other">,</span>
- <span class="Identifier">mSep</span> <span class="Other">=</span> <span class="StringLit">"September"</span><span class="Other">,</span> <span class="Identifier">mOct</span> <span class="Other">=</span> <span class="StringLit">"October"</span><span class="Other">,</span> <span class="Identifier">mNov</span> <span class="Other">=</span> <span class="StringLit">"November"</span><span class="Other">,</span> <span class="Identifier">mDec</span> <span class="Other">=</span> <span class="StringLit">"December"</span></pre></dt>
- <dd>
-
- Represents a month. Note that the enum starts at <tt class="docutils literal"><span class="pre"><span class="DecNumber">1</span></span></tt>, so <tt class="docutils literal"><span class="pre"><span class="Identifier">ord</span><span class="Punctuation">(</span><span class="Identifier">month</span><span class="Punctuation">)</span></span></tt> will give the month number in the range <tt class="docutils literal"><span class="pre"><span class="FloatNumber">1.</span><span class="Operator">.</span><span class="DecNumber">12</span></span></tt>.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L270" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L270" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="MonthdayRange">
- <dt><pre><a href="times.html#MonthdayRange"><span class="Identifier">MonthdayRange</span></a> <span class="Other">=</span> <a href="system.html#range"><span class="Identifier">range</span></a><span class="Other">[</span><span class="DecNumber">1</span> <span class="Operator">..</span> <span class="DecNumber">31</span><span class="Other">]</span></pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L296" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L296" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="NanosecondRange">
- <dt><pre><a href="times.html#NanosecondRange"><span class="Identifier">NanosecondRange</span></a> <span class="Other">=</span> <a href="system.html#range"><span class="Identifier">range</span></a><span class="Other">[</span><span class="DecNumber">0</span> <span class="Operator">..</span> <span class="DecNumber">999999999</span><span class="Other">]</span></pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L303" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L303" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="SecondRange">
- <dt><pre><a href="times.html#SecondRange"><span class="Identifier">SecondRange</span></a> <span class="Other">=</span> <a href="system.html#range"><span class="Identifier">range</span></a><span class="Other">[</span><span class="DecNumber">0</span> <span class="Operator">..</span> <span class="DecNumber">60</span><span class="Other">]</span></pre></dt>
- <dd>
-
-
- Includes the value 60 to allow for a leap second. Note however that the <tt class="docutils literal"><span class="pre"><span class="Identifier">second</span></span></tt> of a <tt class="docutils literal"><span class="pre"><span class="Identifier">DateTime</span></span></tt> will never be a leap second.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L299" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L299" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="Time">
- <dt><pre><a href="times.html#Time"><span class="Identifier">Time</span></a> <span class="Other">=</span> <span class="Keyword">object</span></pre></dt>
- <dd>
-
- Represents a point in time.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L312" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L312" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="TimeFormat">
- <dt><pre><a href="times.html#TimeFormat"><span class="Identifier">TimeFormat</span></a> <span class="Other">=</span> <span class="Keyword">object</span>
- <span class="Comment">## \</span>
- <span class="Comment">## Contains the patterns encoded as bytes.</span>
- <span class="Comment">## Literal values are encoded in a special way.</span>
- <span class="Comment">## They start with `Lit.byte`, then the length of the literal, then the</span>
- <span class="Comment">## raw char values of the literal. For example, the literal `foo` would</span>
- <span class="Comment">## be encoded as `@[Lit.byte, 3.byte, 'f'.byte, 'o'.byte, 'o'.byte]`.</span></pre></dt>
- <dd>
-
- <p>Represents a format for parsing and printing time types.</p>
- <p>To create a new <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeFormat</span></span></tt> use <a class="reference external" href="#initTimeFormat,string">initTimeFormat proc</a>.</p>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1606" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1606" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="TimeFormatParseError">
- <dt><pre><a href="times.html#TimeFormatParseError"><span class="Identifier">TimeFormatParseError</span></a> <span class="Other">=</span> <span class="Keyword">object</span> <span class="Keyword">of</span> <a href="exceptions.html#ValueError"><span class="Identifier">ValueError</span></a></pre></dt>
- <dd>
-
-
- Raised when parsing a <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeFormat</span></span></tt> string fails.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1622" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1622" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="TimeInterval">
- <dt><pre><a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</span></a> <span class="Other">=</span> <span class="Keyword">object</span>
- <span class="Identifier">nanoseconds</span><span class="Operator">*</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Comment">## The number of nanoseconds</span>
- <span class="Identifier">microseconds</span><span class="Operator">*</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Comment">## The number of microseconds</span>
- <span class="Identifier">milliseconds</span><span class="Operator">*</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Comment">## The number of milliseconds</span>
- <span class="Identifier">seconds</span><span class="Operator">*</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Comment">## The number of seconds</span>
- <span class="Identifier">minutes</span><span class="Operator">*</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Comment">## The number of minutes</span>
- <span class="Identifier">hours</span><span class="Operator">*</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Comment">## The number of hours</span>
- <span class="Identifier">days</span><span class="Operator">*</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Comment">## The number of days</span>
- <span class="Identifier">weeks</span><span class="Operator">*</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Comment">## The number of weeks</span>
- <span class="Identifier">months</span><span class="Operator">*</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Comment">## The number of months</span>
- <span class="Identifier">years</span><span class="Operator">*</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Comment">## The number of years</span></pre></dt>
- <dd>
-
- <p>
- Represents a non-fixed duration of time. Can be used to add and subtract non-fixed time units from a <a class="reference external" href="#DateTime">DateTime</a> or <a class="reference external" href="#Time">Time</a>.</p>
- <p>Create a new <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeInterval</span></span></tt> with <a class="reference external" href="#initTimeInterval,int,int,int,int,int,int,int,int,int,int">initTimeInterval proc</a>.</p>
- <p>Note that <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeInterval</span></span></tt> doesn't represent a fixed duration of time, since the duration of some units depend on the context (e.g a year can be either 365 or 366 days long). The non-fixed time units are years, months, days and week.</p>
- <p>Note that <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeInterval</span></span></tt>'s returned from the <tt class="docutils literal"><span class="pre"><span class="Identifier">times</span></span></tt> module are never normalized. If you want to normalize a time unit, <a class="reference external" href="#Duration">Duration</a> should be used instead.</p>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L353" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L353" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="TimeIntervalParts">
- <dt><pre><a href="times.html#TimeIntervalParts"><span class="Identifier">TimeIntervalParts</span></a> <span class="Other">=</span> <a href="system.html#array"><span class="Identifier">array</span></a><span class="Other">[</span><span class="Identifier">TimeUnit</span><span class="Other">,</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">]</span></pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L399" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L399" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="TimeParseError">
- <dt><pre><a href="times.html#TimeParseError"><span class="Identifier">TimeParseError</span></a> <span class="Other">=</span> <span class="Keyword">object</span> <span class="Keyword">of</span> <a href="exceptions.html#ValueError"><span class="Identifier">ValueError</span></a></pre></dt>
- <dd>
-
-
- Raised when parsing input using a <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeFormat</span></span></tt> fails.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1619" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1619" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="TimeUnit">
- <dt><pre><a href="times.html#TimeUnit"><span class="Identifier">TimeUnit</span></a> <span class="Other">=</span> <span class="Keyword">enum</span>
- <span class="Identifier">Nanoseconds</span><span class="Other">,</span> <span class="Identifier">Microseconds</span><span class="Other">,</span> <span class="Identifier">Milliseconds</span><span class="Other">,</span> <span class="Identifier">Seconds</span><span class="Other">,</span> <span class="Identifier">Minutes</span><span class="Other">,</span> <span class="Identifier">Hours</span><span class="Other">,</span> <span class="Identifier">Days</span><span class="Other">,</span> <span class="Identifier">Weeks</span><span class="Other">,</span>
- <span class="Identifier">Months</span><span class="Other">,</span> <span class="Identifier">Years</span></pre></dt>
- <dd>
-
- Different units of time.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L345" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L345" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="Timezone">
- <dt><pre><a href="times.html#Timezone"><span class="Identifier">Timezone</span></a> <span class="Other">=</span> <span class="Keyword">ref</span> <span class="Keyword">object</span></pre></dt>
- <dd>
-
-
- Timezone interface for supporting <a class="reference external" href="#DateTime">DateTime</a>s of arbitrary timezones. The <tt class="docutils literal"><span class="pre"><span class="Identifier">times</span></span></tt> module only supplies implementations for the system's local time and UTC.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L380" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L380" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="WeekDay">
- <dt><pre><a href="times.html#WeekDay"><span class="Identifier">WeekDay</span></a> <span class="Other">=</span> <span class="Keyword">enum</span>
- <span class="Identifier">dMon</span> <span class="Other">=</span> <span class="StringLit">"Monday"</span><span class="Other">,</span> <span class="Identifier">dTue</span> <span class="Other">=</span> <span class="StringLit">"Tuesday"</span><span class="Other">,</span> <span class="Identifier">dWed</span> <span class="Other">=</span> <span class="StringLit">"Wednesday"</span><span class="Other">,</span> <span class="Identifier">dThu</span> <span class="Other">=</span> <span class="StringLit">"Thursday"</span><span class="Other">,</span>
- <span class="Identifier">dFri</span> <span class="Other">=</span> <span class="StringLit">"Friday"</span><span class="Other">,</span> <span class="Identifier">dSat</span> <span class="Other">=</span> <span class="StringLit">"Saturday"</span><span class="Other">,</span> <span class="Identifier">dSun</span> <span class="Other">=</span> <span class="StringLit">"Sunday"</span></pre></dt>
- <dd>
-
- Represents a weekday.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L286" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L286" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="YeardayRange">
- <dt><pre><a href="times.html#YeardayRange"><span class="Identifier">YeardayRange</span></a> <span class="Other">=</span> <a href="system.html#range"><span class="Identifier">range</span></a><span class="Other">[</span><span class="DecNumber">0</span> <span class="Operator">..</span> <span class="DecNumber">365</span><span class="Other">]</span></pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L302" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L302" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="ZonedTime">
- <dt><pre><a href="times.html#ZonedTime"><span class="Identifier">ZonedTime</span></a> <span class="Other">=</span> <span class="Keyword">object</span>
- <span class="Identifier">time</span><span class="Operator">*</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a> <span class="Comment">## The point in time being represented.</span>
- <span class="Identifier">utcOffset</span><span class="Operator">*</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a> <span class="Comment">## The offset in seconds west of UTC,</span>
- <span class="Comment">## including any offset due to DST.</span>
- <span class="Identifier">isDst</span><span class="Operator">*</span><span class="Other">:</span> <a href="system.html#bool"><span class="Identifier">bool</span></a> <span class="Comment">## Determines whether DST is in effect.</span></pre></dt>
- <dd>
-
- Represents a point in time with an associated UTC offset and DST flag. This type is only used for implementing timezones.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L390" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L390" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </dl>
- </div>
- <div class="section" id="10">
- <h1><a class="toc-backref" href="#10">Consts</a></h1>
- <dl class="item">
- <div id="DefaultLocale">
- <dt><pre><a href="times.html#DefaultLocale"><span class="Identifier">DefaultLocale</span></a> <span class="Other">=</span> <span class="Other">(</span><span class="Identifier">MMM</span><span class="Other">:</span> <span class="Other">[</span><span class="StringLit">"Jan"</span><span class="Other">,</span> <span class="StringLit">"Feb"</span><span class="Other">,</span> <span class="StringLit">"Mar"</span><span class="Other">,</span> <span class="StringLit">"Apr"</span><span class="Other">,</span> <span class="StringLit">"May"</span><span class="Other">,</span> <span class="StringLit">"Jun"</span><span class="Other">,</span> <span class="StringLit">"Jul"</span><span class="Other">,</span> <span class="StringLit">"Aug"</span><span class="Other">,</span>
- <span class="StringLit">"Sep"</span><span class="Other">,</span> <span class="StringLit">"Oct"</span><span class="Other">,</span> <span class="StringLit">"Nov"</span><span class="Other">,</span> <span class="StringLit">"Dec"</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">MMMM</span><span class="Other">:</span> <span class="Other">[</span><span class="StringLit">"January"</span><span class="Other">,</span>
- <span class="StringLit">"February"</span><span class="Other">,</span> <span class="StringLit">"March"</span><span class="Other">,</span> <span class="StringLit">"April"</span><span class="Other">,</span> <span class="StringLit">"May"</span><span class="Other">,</span> <span class="StringLit">"June"</span><span class="Other">,</span> <span class="StringLit">"July"</span><span class="Other">,</span> <span class="StringLit">"August"</span><span class="Other">,</span> <span class="StringLit">"September"</span><span class="Other">,</span>
- <span class="StringLit">"October"</span><span class="Other">,</span> <span class="StringLit">"November"</span><span class="Other">,</span> <span class="StringLit">"December"</span><span class="Other">]</span><span class="Other">,</span>
- <span class="Identifier">ddd</span><span class="Other">:</span> <span class="Other">[</span><span class="StringLit">"Mon"</span><span class="Other">,</span> <span class="StringLit">"Tue"</span><span class="Other">,</span> <span class="StringLit">"Wed"</span><span class="Other">,</span> <span class="StringLit">"Thu"</span><span class="Other">,</span> <span class="StringLit">"Fri"</span><span class="Other">,</span> <span class="StringLit">"Sat"</span><span class="Other">,</span> <span class="StringLit">"Sun"</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">dddd</span><span class="Other">:</span> <span class="Other">[</span>
- <span class="StringLit">"Monday"</span><span class="Other">,</span> <span class="StringLit">"Tuesday"</span><span class="Other">,</span> <span class="StringLit">"Wednesday"</span><span class="Other">,</span> <span class="StringLit">"Thursday"</span><span class="Other">,</span> <span class="StringLit">"Friday"</span><span class="Other">,</span> <span class="StringLit">"Saturday"</span><span class="Other">,</span> <span class="StringLit">"Sunday"</span><span class="Other">]</span><span class="Other">)</span></pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1626" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1626" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="DurationZero">
- <dt><pre><a href="times.html#DurationZero"><span class="Identifier">DurationZero</span></a> <span class="Other">=</span> <span class="Other">(</span><span class="Identifier">seconds</span><span class="Other">:</span> <span class="DecNumber">0</span><span class="Other">,</span> <span class="Identifier">nanosecond</span><span class="Other">:</span> <span class="DecNumber">0</span><span class="Other">)</span></pre></dt>
- <dd>
-
- <p>
- Zero value for durations. Useful for comparisons.</p>
- <p><pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">></span> <span class="Identifier">DurationZero</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">0</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Identifier">DurationZero</span></pre></p>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L658" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L658" 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="$,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#%24%2CDateTime"><span class="Identifier">`$`</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</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">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</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">gcsafe</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 a <tt class="docutils literal"><span class="pre"><span class="Identifier">DateTime</span></span></tt> object to a string representation. It uses the format <tt class="docutils literal"><span class="pre"><span class="Identifier">yyyy</span><span class="Operator">-</span><span class="Identifier">MM</span><span class="Operator">-</span><span class="Identifier">dd</span><span class="CharLit">'T'</span><span class="Identifier">HH</span><span class="Punctuation">:</span><span class="Identifier">mm</span><span class="Punctuation">:</span><span class="Identifier">sszzz</span></span></tt>.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dt</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2000</span><span class="Punctuation">,</span> <span class="Identifier">mJan</span><span class="Punctuation">,</span> <span class="DecNumber">01</span><span class="Punctuation">,</span> <span class="DecNumber">12</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Identifier">dt</span> <span class="Operator">==</span> <span class="StringLit">"2000-01-01T12:00:00Z"</span>
- <span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Identifier">default</span><span class="Punctuation">(</span><span class="Identifier">DateTime</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"Uninitialized DateTime"</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2331" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2331" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="$,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#%24%2CDuration"><span class="Identifier">`$`</span></a><span class="Other">(</span><span class="Identifier">dur</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</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>
-
- Human friendly string representation of a <tt class="docutils literal"><span class="pre"><span class="Identifier">Duration</span></span></tt>.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">2</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"2 seconds"</span>
- <span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">weeks</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">,</span> <span class="Identifier">days</span> <span class="Operator">=</span> <span class="DecNumber">2</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"1 week and 2 days"</span>
- <span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">hours</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">,</span> <span class="Identifier">minutes</span> <span class="Operator">=</span> <span class="DecNumber">2</span><span class="Punctuation">,</span> <span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">3</span><span class="Punctuation">)</span> <span class="Operator">==</span>
- <span class="StringLit">"1 hour, 2 minutes, and 3 seconds"</span>
- <span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">milliseconds</span> <span class="Operator">=</span> <span class="Operator">-</span><span class="DecNumber">1500</span><span class="Punctuation">)</span> <span class="Operator">==</span>
- <span class="StringLit">"-1 second and -500 milliseconds"</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L797" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L797" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="$,TimeFormat">
- <dt><pre><span class="Keyword">proc</span> <a href="#%24%2CTimeFormat"><span class="Identifier">`$`</span></a><span class="Other">(</span><span class="Identifier">f</span><span class="Other">:</span> <a href="times.html#TimeFormat"><span class="Identifier">TimeFormat</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>
-
- Returns the format string that was used to construct <tt class="docutils literal"><span class="pre"><span class="Identifier">f</span></span></tt>.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">f</span> <span class="Operator">=</span> <span class="Identifier">initTimeFormat</span><span class="Punctuation">(</span><span class="StringLit">"yyyy-MM-dd"</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Identifier">f</span> <span class="Operator">==</span> <span class="StringLit">"yyyy-MM-dd"</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1638" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1638" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="$,IsoYear">
- <dt><pre><span class="Keyword">proc</span> <a href="#%24%2CIsoYear"><span class="Identifier">`$`</span></a><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <a href="times.html#IsoYear"><span class="Identifier">IsoYear</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a> {.<span class="Identifier">borrow</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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L565" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L565" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="$,TimeInterval">
- <dt><pre><span class="Keyword">proc</span> <a href="#%24%2CTimeInterval"><span class="Identifier">`$`</span></a><span class="Other">(</span><span class="Identifier">ti</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>
-
- Get string representation of <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeInterval</span></span></tt>.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Identifier">initTimeInterval</span><span class="Punctuation">(</span><span class="Identifier">years</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">,</span> <span class="Identifier">nanoseconds</span> <span class="Operator">=</span> <span class="DecNumber">123</span><span class="Punctuation">)</span> <span class="Operator">==</span>
- <span class="StringLit">"1 year and 123 nanoseconds"</span>
- <span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Identifier">initTimeInterval</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"0 nanoseconds"</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2571" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2571" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="$,Time">
- <dt><pre><span class="Keyword">proc</span> <a href="#%24%2CTime"><span class="Identifier">`$`</span></a><span class="Other">(</span><span class="Identifier">time</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</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">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</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">gcsafe</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 a <tt class="docutils literal"><span class="pre"><span class="Identifier">Time</span></span></tt> value to a string representation. It will use the local time zone and use the format <tt class="docutils literal"><span class="pre"><span class="Identifier">yyyy</span><span class="Operator">-</span><span class="Identifier">MM</span><span class="Operator">-</span><span class="Identifier">dd</span><span class="CharLit">'T'</span><span class="Identifier">HH</span><span class="Punctuation">:</span><span class="Identifier">mm</span><span class="Punctuation">:</span><span class="Identifier">sszzz</span></span></tt>.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dt</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">1970</span><span class="Punctuation">,</span> <span class="Identifier">mJan</span><span class="Punctuation">,</span> <span class="DecNumber">01</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">local</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Keyword">let</span> <span class="Identifier">tm</span> <span class="Operator">=</span> <span class="Identifier">dt</span><span class="Operator">.</span><span class="Identifier">toTime</span><span class="Punctuation">(</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Identifier">tm</span> <span class="Operator">==</span> <span class="StringLit">"1970-01-01T00:00:00"</span> <span class="Operator">&</span> <span class="Identifier">format</span><span class="Punctuation">(</span><span class="Identifier">dt</span><span class="Punctuation">,</span> <span class="StringLit">"zzz"</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2343" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2343" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="$,Timezone">
- <dt><pre><span class="Keyword">proc</span> <a href="#%24%2CTimezone"><span class="Identifier">`$`</span></a><span class="Other">(</span><span class="Identifier">zone</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</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>
-
- Returns the name of the timezone.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1249" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1249" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="*-procs-all">
- <div id="*,Duration,int64">
- <dt><pre><span class="Keyword">proc</span> <a href="#%2A%2CDuration%2Cint64"><span class="Identifier">`*`</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">;</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="system.html#int64"><span class="Identifier">int64</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> </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">"ntMulDuration"</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>
-
- Multiply a duration by some scalar.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">*</span> <span class="DecNumber">5</span> <span class="Operator">==</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">5</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">minutes</span> <span class="Operator">=</span> <span class="DecNumber">45</span><span class="Punctuation">)</span> <span class="Operator">*</span> <span class="DecNumber">3</span> <span class="Operator">==</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">hours</span> <span class="Operator">=</span> <span class="DecNumber">2</span><span class="Punctuation">,</span> <span class="Identifier">minutes</span> <span class="Operator">=</span> <span class="DecNumber">15</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L867" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L867" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="*,int64,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#%2A%2Cint64%2CDuration"><span class="Identifier">`*`</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">:</span> <a href="system.html#int64"><span class="Identifier">int64</span></a><span class="Other">;</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> </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">"ntMulInt64Duration"</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>
-
- Multiply a duration by some scalar.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="DecNumber">5</span> <span class="Operator">*</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">5</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="DecNumber">3</span> <span class="Operator">*</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">minutes</span> <span class="Operator">=</span> <span class="DecNumber">45</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">hours</span> <span class="Operator">=</span> <span class="DecNumber">2</span><span class="Punctuation">,</span> <span class="Identifier">minutes</span> <span class="Operator">=</span> <span class="DecNumber">15</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L859" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L859" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="*=-procs-all">
- <div id="*=,Duration,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#%2A%3D%2CDuration%2Cint"><span class="Identifier">`*=`</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">;</span> <span class="Identifier">b</span><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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L881" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L881" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="+-procs-all">
- <div id="+,Duration,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#%2B%2CDuration%2CDuration"><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="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> </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">"ntAddDuration"</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>
-
- Add two durations together.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">+</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">days</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">==</span>
- <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">,</span> <span class="Identifier">days</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L816" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L816" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="+,Time,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#%2B%2CTime%2CDuration"><span class="Identifier">`+`</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">;</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> </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">"ntAddTime"</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>
-
- Add a duration of time to a <tt class="docutils literal"><span class="pre"><span class="Identifier">Time</span></span></tt>.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Punctuation">(</span><span class="Identifier">fromUnix</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span> <span class="Operator">+</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Identifier">fromUnix</span><span class="Punctuation">(</span><span class="DecNumber">1</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1010" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1010" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="+,DateTime,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#%2B%2CDateTime%2CDuration"><span class="Identifier">`+`</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">dur</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</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><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dt</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2017</span><span class="Punctuation">,</span> <span class="Identifier">mMar</span><span class="Punctuation">,</span> <span class="DecNumber">30</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Keyword">let</span> <span class="Identifier">dur</span> <span class="Operator">=</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">hours</span> <span class="Operator">=</span> <span class="DecNumber">5</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Punctuation">(</span><span class="Identifier">dt</span> <span class="Operator">+</span> <span class="Identifier">dur</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"2017-03-30T05:00:00Z"</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1456" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1456" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="+,DateTime,TimeInterval">
- <dt><pre><span class="Keyword">proc</span> <a href="#%2B%2CDateTime%2CTimeInterval"><span class="Identifier">`+`</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">interval</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</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>Adds <tt class="docutils literal"><span class="pre"><span class="Identifier">interval</span></span></tt> to <tt class="docutils literal"><span class="pre"><span class="Identifier">dt</span></span></tt>. Components from <tt class="docutils literal"><span class="pre"><span class="Identifier">interval</span></span></tt> are added in the order of their size, i.e. first the <tt class="docutils literal"><span class="pre"><span class="Identifier">years</span></span></tt> component, then the <tt class="docutils literal"><span class="pre"><span class="Identifier">months</span></span></tt> component and so on. The returned <tt class="docutils literal"><span class="pre"><span class="Identifier">DateTime</span></span></tt> will have the same timezone as the input.</p>
- <p>Note that when adding months, monthday overflow is allowed. This means that if the resulting month doesn't have enough days it, the month will be incremented and the monthday will be set to the number of days overflowed. So adding one month to <tt class="docutils literal"><span class="pre"><span class="DecNumber">31</span> <span class="Identifier">October</span></span></tt> will result in <tt class="docutils literal"><span class="pre"><span class="DecNumber">31</span> <span class="Identifier">November</span></span></tt>, which will overflow and result in <tt class="docutils literal"><span class="pre"><span class="DecNumber">1</span> <span class="Identifier">December</span></span></tt>.</p>
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dt</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2017</span><span class="Punctuation">,</span> <span class="Identifier">mMar</span><span class="Punctuation">,</span> <span class="DecNumber">30</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Punctuation">(</span><span class="Identifier">dt</span> <span class="Operator">+</span> <span class="FloatNumber">1.</span><span class="Identifier">months</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"2017-04-30T00:00:00Z"</span>
- <span class="Comment"># This is correct and happens due to monthday overflow.</span>
- <span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Punctuation">(</span><span class="Identifier">dt</span> <span class="Operator">-</span> <span class="FloatNumber">1.</span><span class="Identifier">months</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"2017-03-02T00:00:00Z"</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2681" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2681" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="+,TimeInterval,TimeInterval">
- <dt><pre><span class="Keyword">proc</span> <a href="#%2B%2CTimeInterval%2CTimeInterval"><span class="Identifier">`+`</span></a><span class="Other">(</span><span class="Identifier">ti1</span><span class="Other">,</span> <span class="Identifier">ti2</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>
-
- Adds two <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeInterval</span></span></tt> objects together.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2385" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2385" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="+,Time,TimeInterval">
- <dt><pre><span class="Keyword">proc</span> <a href="#%2B%2CTime%2CTimeInterval"><span class="Identifier">`+`</span></a><span class="Other">(</span><span class="Identifier">time</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">;</span> <span class="Identifier">interval</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</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>
-
- Adds <tt class="docutils literal"><span class="pre"><span class="Identifier">interval</span></span></tt> to <tt class="docutils literal"><span class="pre"><span class="Identifier">time</span></span></tt>. If <tt class="docutils literal"><span class="pre"><span class="Identifier">interval</span></span></tt> contains any years, months, weeks or days the operation is performed in the local timezone.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">tm</span> <span class="Operator">=</span> <span class="Identifier">fromUnix</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">tm</span> <span class="Operator">+</span> <span class="FloatNumber">5.</span><span class="Identifier">seconds</span> <span class="Operator">==</span> <span class="Identifier">fromUnix</span><span class="Punctuation">(</span><span class="DecNumber">5</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2721" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2721" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="+=-procs-all">
- <div id="+=,DateTime,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#%2B%3D%2CDateTime%2CDuration"><span class="Identifier">`+=`</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1496" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1496" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="+=,DateTime,TimeInterval">
- <dt><pre><span class="Keyword">proc</span> <a href="#%2B%3D%2CDateTime%2CTimeInterval"><span class="Identifier">`+=`</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2747" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2747" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="+=,TimeInterval,TimeInterval">
- <dt><pre><span class="Keyword">proc</span> <a href="#%2B%3D%2CTimeInterval%2CTimeInterval"><span class="Identifier">`+=`</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</span></a><span class="Other">;</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2430" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2430" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="+=,Duration,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#%2B%3D%2CDuration%2CDuration"><span class="Identifier">`+=`</span></a><span class="Other">(</span><span class="Identifier">d1</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">;</span> <span class="Identifier">d2</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L875" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L875" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="+=,Time,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#%2B%3D%2CTime%2CDuration"><span class="Identifier">`+=`</span></a><span class="Other">(</span><span class="Identifier">t</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">;</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1036" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1036" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="+=,Time,TimeInterval">
- <dt><pre><span class="Keyword">proc</span> <a href="#%2B%3D%2CTime%2CTimeInterval"><span class="Identifier">`+=`</span></a><span class="Other">(</span><span class="Identifier">t</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">;</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2753" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2753" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="--procs-all">
- <div id="-,Duration,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#-%2CDuration%2CDuration"><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="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> </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">"ntSubDuration"</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>
-
- Subtract a duration from another.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">,</span> <span class="Identifier">days</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">-</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">==</span>
- <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">days</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L823" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L823" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="-,Time,Time">
- <dt><pre><span class="Keyword">proc</span> <a href="#-%2CTime%2CTime"><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="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> </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">"ntDiffTime"</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>
-
- Computes the duration between two points in time.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">initTime</span><span class="Punctuation">(</span><span class="DecNumber">1000</span><span class="Punctuation">,</span> <span class="DecNumber">100</span><span class="Punctuation">)</span> <span class="Operator">-</span> <span class="Identifier">initTime</span><span class="Punctuation">(</span><span class="DecNumber">500</span><span class="Punctuation">,</span> <span class="DecNumber">20</span><span class="Punctuation">)</span> <span class="Operator">==</span>
- <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">minutes</span> <span class="Operator">=</span> <span class="DecNumber">8</span><span class="Punctuation">,</span> <span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">20</span><span class="Punctuation">,</span> <span class="Identifier">nanoseconds</span> <span class="Operator">=</span> <span class="DecNumber">80</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1003" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1003" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="-,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#-%2CDuration"><span class="Identifier">`-`</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> </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">"ntReverseDuration"</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>
-
- Reverse a duration.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Operator">-</span><span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="Operator">-</span><span class="DecNumber">1</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L830" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L830" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="-,Time,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#-%2CTime%2CDuration"><span class="Identifier">`-`</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">;</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> </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">"ntSubTime"</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>
-
- Subtracts a duration of time from a <tt class="docutils literal"><span class="pre"><span class="Identifier">Time</span></span></tt>.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Punctuation">(</span><span class="Identifier">fromUnix</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span> <span class="Operator">-</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Identifier">fromUnix</span><span class="Punctuation">(</span><span class="Operator">-</span><span class="DecNumber">1</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1016" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1016" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="-,DateTime,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#-%2CDateTime%2CDateTime"><span class="Identifier">`-`</span></a><span class="Other">(</span><span class="Identifier">dt1</span><span class="Other">,</span> <span class="Identifier">dt2</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</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>
-
- Compute the duration between <tt class="docutils literal"><span class="pre"><span class="Identifier">dt1</span></span></tt> and <tt class="docutils literal"><span class="pre"><span class="Identifier">dt2</span></span></tt>.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dt1</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2017</span><span class="Punctuation">,</span> <span class="Identifier">mMar</span><span class="Punctuation">,</span> <span class="DecNumber">30</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Keyword">let</span> <span class="Identifier">dt2</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2017</span><span class="Punctuation">,</span> <span class="Identifier">mMar</span><span class="Punctuation">,</span> <span class="DecNumber">25</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dt1</span> <span class="Operator">-</span> <span class="Identifier">dt2</span> <span class="Operator">==</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">days</span> <span class="Operator">=</span> <span class="DecNumber">5</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1472" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1472" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="-,DateTime,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#-%2CDateTime%2CDuration"><span class="Identifier">`-`</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">dur</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</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><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dt</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2017</span><span class="Punctuation">,</span> <span class="Identifier">mMar</span><span class="Punctuation">,</span> <span class="DecNumber">30</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Keyword">let</span> <span class="Identifier">dur</span> <span class="Operator">=</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">days</span> <span class="Operator">=</span> <span class="DecNumber">5</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Punctuation">(</span><span class="Identifier">dt</span> <span class="Operator">-</span> <span class="Identifier">dur</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"2017-03-25T00:00:00Z"</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1464" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1464" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="-,DateTime,TimeInterval">
- <dt><pre><span class="Keyword">proc</span> <a href="#-%2CDateTime%2CTimeInterval"><span class="Identifier">`-`</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">interval</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</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>
-
- Subtract <tt class="docutils literal"><span class="pre"><span class="Identifier">interval</span></span></tt> from <tt class="docutils literal"><span class="pre"><span class="Identifier">dt</span></span></tt>. Components from <tt class="docutils literal"><span class="pre"><span class="Identifier">interval</span></span></tt> are subtracted in the order of their size, i.e. first the <tt class="docutils literal"><span class="pre"><span class="Identifier">years</span></span></tt> component, then the <tt class="docutils literal"><span class="pre"><span class="Identifier">months</span></span></tt> component and so on. The returned <tt class="docutils literal"><span class="pre"><span class="Identifier">DateTime</span></span></tt> will have the same timezone as the input.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dt</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2017</span><span class="Punctuation">,</span> <span class="Identifier">mMar</span><span class="Punctuation">,</span> <span class="DecNumber">30</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Punctuation">(</span><span class="Identifier">dt</span> <span class="Operator">-</span> <span class="FloatNumber">5.</span><span class="Identifier">days</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"2017-03-25T00:00:00Z"</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2710" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2710" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="-,TimeInterval,TimeInterval">
- <dt><pre><span class="Keyword">proc</span> <a href="#-%2CTimeInterval%2CTimeInterval"><span class="Identifier">`-`</span></a><span class="Other">(</span><span class="Identifier">ti1</span><span class="Other">,</span> <span class="Identifier">ti2</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>Subtracts TimeInterval <tt class="docutils literal"><span class="pre"><span class="Identifier">ti1</span></span></tt> from <tt class="docutils literal"><span class="pre"><span class="Identifier">ti2</span></span></tt>.</p>
- <p>Time components are subtracted one-by-one, see output:</p>
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">ti1</span> <span class="Operator">=</span> <span class="Identifier">initTimeInterval</span><span class="Punctuation">(</span><span class="Identifier">hours</span> <span class="Operator">=</span> <span class="DecNumber">24</span><span class="Punctuation">)</span>
- <span class="Keyword">let</span> <span class="Identifier">ti2</span> <span class="Operator">=</span> <span class="Identifier">initTimeInterval</span><span class="Punctuation">(</span><span class="Identifier">hours</span> <span class="Operator">=</span> <span class="DecNumber">4</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Punctuation">(</span><span class="Identifier">ti1</span> <span class="Operator">-</span> <span class="Identifier">ti2</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Identifier">initTimeInterval</span><span class="Punctuation">(</span><span class="Identifier">hours</span> <span class="Operator">=</span> <span class="DecNumber">20</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2419" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2419" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="-,TimeInterval">
- <dt><pre><span class="Keyword">proc</span> <a href="#-%2CTimeInterval"><span class="Identifier">`-`</span></a><span class="Other">(</span><span class="Identifier">ti</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>
-
- Reverses a time interval
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">day</span> <span class="Operator">=</span> <span class="Operator">-</span><span class="Identifier">initTimeInterval</span><span class="Punctuation">(</span><span class="Identifier">hours</span> <span class="Operator">=</span> <span class="DecNumber">24</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">day</span><span class="Operator">.</span><span class="Identifier">hours</span> <span class="Operator">==</span> <span class="Operator">-</span><span class="DecNumber">24</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2400" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2400" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="-,Time,TimeInterval">
- <dt><pre><span class="Keyword">proc</span> <a href="#-%2CTime%2CTimeInterval"><span class="Identifier">`-`</span></a><span class="Other">(</span><span class="Identifier">time</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">;</span> <span class="Identifier">interval</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</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>
-
- Subtracts <tt class="docutils literal"><span class="pre"><span class="Identifier">interval</span></span></tt> from Time <tt class="docutils literal"><span class="pre"><span class="Identifier">time</span></span></tt>. If <tt class="docutils literal"><span class="pre"><span class="Identifier">interval</span></span></tt> contains any years, months, weeks or days the operation is performed in the local timezone.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">tm</span> <span class="Operator">=</span> <span class="Identifier">fromUnix</span><span class="Punctuation">(</span><span class="DecNumber">5</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">tm</span> <span class="Operator">-</span> <span class="FloatNumber">5.</span><span class="Identifier">seconds</span> <span class="Operator">==</span> <span class="Identifier">fromUnix</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/times.nim#L2734" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2734" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="-=-procs-all">
- <div id="-=,DateTime,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#-%3D%2CDateTime%2CDuration"><span class="Identifier">`-=`</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1499" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1499" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="-=,DateTime,TimeInterval">
- <dt><pre><span class="Keyword">proc</span> <a href="#-%3D%2CDateTime%2CTimeInterval"><span class="Identifier">`-=`</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2750" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2750" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="-=,TimeInterval,TimeInterval">
- <dt><pre><span class="Keyword">proc</span> <a href="#-%3D%2CTimeInterval%2CTimeInterval"><span class="Identifier">`-=`</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</span></a><span class="Other">;</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2433" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2433" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="-=,Duration,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#-%3D%2CDuration%2CDuration"><span class="Identifier">`-=`</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">;</span> <span class="Identifier">ti</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L878" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L878" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="-=,Time,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#-%3D%2CTime%2CDuration"><span class="Identifier">`-=`</span></a><span class="Other">(</span><span class="Identifier">t</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">;</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1039" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1039" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="-=,Time,TimeInterval">
- <dt><pre><span class="Keyword">proc</span> <a href="#-%3D%2CTime%2CTimeInterval"><span class="Identifier">`-=`</span></a><span class="Other">(</span><span class="Identifier">t</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">;</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2756" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2756" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="<-procs-all">
- <div id="<,DateTime,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#%3C%2CDateTime%2CDateTime"><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="times.html#DateTime"><span class="Identifier">DateTime</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>
-
- Returns true if <tt class="docutils literal"><span class="pre"><span class="Identifier">a</span></span></tt> happened before <tt class="docutils literal"><span class="pre"><span class="Identifier">b</span></span></tt>.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1482" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1482" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="<,Duration,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#%3C%2CDuration%2CDuration"><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="times.html#Duration"><span class="Identifier">Duration</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><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">"ntLtDuration"</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>
-
- Note that a duration can be negative, so even if <tt class="docutils literal"><span class="pre"><span class="Identifier">a</span> <span class="Operator"><</span> <span class="Identifier">b</span></span></tt> is true <tt class="docutils literal"><span class="pre"><span class="Identifier">a</span></span></tt> might represent a larger absolute duration. Use <tt class="docutils literal"><span class="pre"><span class="Identifier">abs</span><span class="Punctuation">(</span><span class="Identifier">a</span><span class="Punctuation">)</span> <span class="Operator"><</span> <span class="Identifier">abs</span><span class="Punctuation">(</span><span class="Identifier">b</span><span class="Punctuation">)</span></span></tt> to compare the absolute duration.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator"><</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">2</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="Operator">-</span><span class="DecNumber">2</span><span class="Punctuation">)</span> <span class="Operator"><</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="Operator">-</span><span class="DecNumber">2</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">abs</span> <span class="Operator"><</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">abs</span> <span class="Operator">==</span> <span class="Identifier">false</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L836" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L836" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="<,Time,Time">
- <dt><pre><span class="Keyword">proc</span> <a href="#%3C%2CTime%2CTime"><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="times.html#Time"><span class="Identifier">Time</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><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">"ntLtTime"</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"><span class="Identifier">a</span> <span class="Operator"><</span> <span class="Identifier">b</span></span></tt>, that is if <tt class="docutils literal"><span class="pre"><span class="Identifier">a</span></span></tt> happened before <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="Identifier">doAssert</span> <span class="Identifier">initTime</span><span class="Punctuation">(</span><span class="DecNumber">50</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">)</span> <span class="Operator"><</span> <span class="Identifier">initTime</span><span class="Punctuation">(</span><span class="DecNumber">99</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/times.nim#L1022" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1022" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="<=-procs-all">
- <div id="<=,DateTime,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#%3C%3D%2CDateTime%2CDateTime"><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="times.html#DateTime"><span class="Identifier">DateTime</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>
-
- Returns true if <tt class="docutils literal"><span class="pre"><span class="Identifier">a</span></span></tt> happened before or at the same time as <tt class="docutils literal"><span class="pre"><span class="Identifier">b</span></span></tt>.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1486" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1486" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="<=,Duration,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#%3C%3D%2CDuration%2CDuration"><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="times.html#Duration"><span class="Identifier">Duration</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><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">"ntLeDuration"</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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L848" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L848" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="<=,Time,Time">
- <dt><pre><span class="Keyword">proc</span> <a href="#%3C%3D%2CTime%2CTime"><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="times.html#Time"><span class="Identifier">Time</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><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">"ntLeTime"</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"><span class="Identifier">a</span> <span class="Operator"><=</span> <span class="Identifier">b</span></span></tt>.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1028" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1028" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="==-procs-all">
- <div id="==,DateTime,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#%3D%3D%2CDateTime%2CDateTime"><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="times.html#DateTime"><span class="Identifier">DateTime</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>
-
- Returns true if <tt class="docutils literal"><span class="pre"><span class="Identifier">a</span></span></tt> and <tt class="docutils literal"><span class="pre"><span class="Identifier">b</span></span></tt> represent the same point in time.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1490" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1490" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="==,Duration,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#%3D%3D%2CDuration%2CDuration"><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="times.html#Duration"><span class="Identifier">Duration</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><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">"ntEqDuration"</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><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span>
- <span class="Identifier">d1</span> <span class="Operator">=</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">weeks</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span>
- <span class="Identifier">d2</span> <span class="Operator">=</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">days</span> <span class="Operator">=</span> <span class="DecNumber">7</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">d1</span> <span class="Operator">==</span> <span class="Identifier">d2</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L851" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L851" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="==,IsoYear,IsoYear">
- <dt><pre><span class="Keyword">proc</span> <a href="#%3D%3D%2CIsoYear%2CIsoYear"><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="times.html#IsoYear"><span class="Identifier">IsoYear</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#bool"><span class="Identifier">bool</span></a> {.<span class="Identifier">borrow</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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L564" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L564" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="==,Time,Time">
- <dt><pre><span class="Keyword">proc</span> <a href="#%3D%3D%2CTime%2CTime"><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="times.html#Time"><span class="Identifier">Time</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><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">"ntEqTime"</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"><span class="Identifier">a</span> <span class="Operator">==</span> <span class="Identifier">b</span></span></tt>, that is if both times represent the same point in time.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1032" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1032" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="==,Timezone,Timezone">
- <dt><pre><span class="Keyword">proc</span> <a href="#%3D%3D%2CTimezone%2CTimezone"><span class="Identifier">`==`</span></a><span class="Other">(</span><span class="Identifier">zone1</span><span class="Other">,</span> <span class="Identifier">zone2</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</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>
-
- Two <tt class="docutils literal"><span class="pre"><span class="Identifier">Timezone</span></span></tt>'s are considered equal if their name is equal.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">local</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Identifier">local</span><span class="Punctuation">(</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">local</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">!=</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1254" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1254" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="abs-procs-all">
- <div id="abs,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#abs%2CDuration"><span class="Identifier">abs</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</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><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">milliseconds</span> <span class="Operator">=</span> <span class="Operator">-</span><span class="DecNumber">1500</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">abs</span> <span class="Operator">==</span>
- <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">milliseconds</span> <span class="Operator">=</span> <span class="DecNumber">1500</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L905" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L905" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="between-procs-all">
- <div id="between,DateTime,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#between%2CDateTime%2CDateTime"><span class="Identifier">between</span></a><span class="Other">(</span><span class="Identifier">startDt</span><span class="Other">,</span> <span class="Identifier">endDt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>
-
- Gives the difference between <tt class="docutils literal"><span class="pre"><span class="Identifier">startDt</span></span></tt> and <tt class="docutils literal"><span class="pre"><span class="Identifier">endDt</span></span></tt> as a <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeInterval</span></span></tt>. The following guarantees about the result is given:<ul class="simple"><li>All fields will have the same sign.</li>
- <li>If <tt class="docutils literal"><span class="pre"><span class="Identifier">startDt</span><span class="Operator">.</span><span class="Identifier">timezone</span> <span class="Operator">==</span> <span class="Identifier">endDt</span><span class="Operator">.</span><span class="Identifier">timezone</span></span></tt>, it is guaranteed that <tt class="docutils literal"><span class="pre"><span class="Identifier">startDt</span> <span class="Operator">+</span> <span class="Identifier">between</span><span class="Punctuation">(</span><span class="Identifier">startDt</span><span class="Punctuation">,</span> <span class="Identifier">endDt</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Identifier">endDt</span></span></tt>.</li>
- <li>If <tt class="docutils literal"><span class="pre"><span class="Identifier">startDt</span><span class="Operator">.</span><span class="Identifier">timezone</span> <span class="Operator">!=</span> <span class="Identifier">endDt</span><span class="Operator">.</span><span class="Identifier">timezone</span></span></tt>, then the result will be equivalent to <tt class="docutils literal"><span class="pre"><span class="Identifier">between</span><span class="Punctuation">(</span><span class="Identifier">startDt</span><span class="Operator">.</span><span class="Identifier">utc</span><span class="Punctuation">,</span> <span class="Identifier">endDt</span><span class="Operator">.</span><span class="Identifier">utc</span><span class="Punctuation">)</span></span></tt>.</li>
- </ul>
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">var</span> <span class="Identifier">a</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2015</span><span class="Punctuation">,</span> <span class="Identifier">mMar</span><span class="Punctuation">,</span> <span class="DecNumber">25</span><span class="Punctuation">,</span> <span class="DecNumber">12</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Keyword">var</span> <span class="Identifier">b</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2017</span><span class="Punctuation">,</span> <span class="Identifier">mApr</span><span class="Punctuation">,</span> <span class="DecNumber">1</span><span class="Punctuation">,</span> <span class="DecNumber">15</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">,</span> <span class="DecNumber">15</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Keyword">var</span> <span class="Identifier">ti</span> <span class="Operator">=</span> <span class="Identifier">initTimeInterval</span><span class="Punctuation">(</span><span class="Identifier">years</span> <span class="Operator">=</span> <span class="DecNumber">2</span><span class="Punctuation">,</span> <span class="Identifier">weeks</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">,</span> <span class="Identifier">hours</span> <span class="Operator">=</span> <span class="DecNumber">3</span><span class="Punctuation">,</span> <span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">15</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">between</span><span class="Punctuation">(</span><span class="Identifier">a</span><span class="Punctuation">,</span> <span class="Identifier">b</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Identifier">ti</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">between</span><span class="Punctuation">(</span><span class="Identifier">a</span><span class="Punctuation">,</span> <span class="Identifier">b</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Operator">-</span><span class="Identifier">between</span><span class="Punctuation">(</span><span class="Identifier">b</span><span class="Punctuation">,</span> <span class="Identifier">a</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2449" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2449" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="convert-procs-all">
- <div id="convert,FixedTimeUnit,FixedTimeUnit,T">
- <dt><pre><span class="Keyword">proc</span> <a href="#convert%2CFixedTimeUnit%2CFixedTimeUnit%2CT"><span class="Identifier">convert</span></a><span class="Other">[</span><span class="Identifier">T</span><span class="Other">:</span> <a href="system.html#SomeInteger"><span class="Identifier">SomeInteger</span></a><span class="Other">]</span><span class="Other">(</span><span class="Identifier">unitFrom</span><span class="Other">,</span> <span class="Identifier">unitTo</span><span class="Other">:</span> <a href="times.html#FixedTimeUnit"><span class="Identifier">FixedTimeUnit</span></a><span class="Other">;</span> <span class="Identifier">quantity</span><span class="Other">:</span> <span class="Identifier">T</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">T</span> {.
- <span class="Identifier">inline</span>.}</pre></dt>
- <dd>
-
- Convert a quantity of some duration unit to another duration unit. This proc only deals with integers, so the result might be truncated.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">convert</span><span class="Punctuation">(</span><span class="Identifier">Days</span><span class="Punctuation">,</span> <span class="Identifier">Hours</span><span class="Punctuation">,</span> <span class="DecNumber">2</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">48</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">convert</span><span class="Punctuation">(</span><span class="Identifier">Days</span><span class="Punctuation">,</span> <span class="Identifier">Weeks</span><span class="Punctuation">,</span> <span class="DecNumber">13</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">1</span> <span class="Comment"># Truncated</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">convert</span><span class="Punctuation">(</span><span class="Identifier">Seconds</span><span class="Punctuation">,</span> <span class="Identifier">Milliseconds</span><span class="Punctuation">,</span> <span class="Operator">-</span><span class="DecNumber">1</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Operator">-</span><span class="DecNumber">1000</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L437" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L437" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="cpuTime-procs-all">
- <div id="cpuTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#cpuTime"><span class="Identifier">cpuTime</span></a><span class="Other">(</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#float"><span class="Identifier">float</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><a href="exceptions.html#TimeEffect"><span class="Identifier">TimeEffect</span></a><span class="Other">]</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">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
- <dd>
-
- Gets time spent that the CPU spent to run the current process in seconds. This may be more useful for benchmarking than <tt class="docutils literal"><span class="pre"><span class="Identifier">epochTime</span></span></tt>. However, it may measure the real time instead (depending on the OS). The value of the result has no meaning. To generate useful timing values, take the difference between the results of two <tt class="docutils literal"><span class="pre"><span class="Identifier">cpuTime</span></span></tt> calls:
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">var</span> <span class="Identifier">t0</span> <span class="Operator">=</span> <span class="Identifier">cpuTime</span><span class="Punctuation">(</span><span class="Punctuation">)</span>
- <span class="Comment"># some useless work here (calculate fibonacci)</span>
- <span class="Keyword">var</span> <span class="Identifier">fib</span> <span class="Operator">=</span> <span class="Operator">@</span><span class="Punctuation">[</span><span class="DecNumber">0</span><span class="Punctuation">,</span> <span class="DecNumber">1</span><span class="Punctuation">,</span> <span class="DecNumber">1</span><span class="Punctuation">]</span>
- <span class="Keyword">for</span> <span class="Identifier">i</span> <span class="Keyword">in</span> <span class="FloatNumber">1.</span><span class="Operator">.</span><span class="DecNumber">10</span><span class="Punctuation">:</span>
- <span class="Identifier">fib</span><span class="Operator">.</span><span class="Identifier">add</span><span class="Punctuation">(</span><span class="Identifier">fib</span><span class="Punctuation">[</span><span class="Operator">^</span><span class="DecNumber">1</span><span class="Punctuation">]</span> <span class="Operator">+</span> <span class="Identifier">fib</span><span class="Punctuation">[</span><span class="Operator">^</span><span class="DecNumber">2</span><span class="Punctuation">]</span><span class="Punctuation">)</span>
- <span class="Identifier">echo</span> <span class="StringLit">"CPU time [s] "</span><span class="Punctuation">,</span> <span class="Identifier">cpuTime</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">-</span> <span class="Identifier">t0</span>
- <span class="Identifier">echo</span> <span class="StringLit">"Fib is [s] "</span><span class="Punctuation">,</span> <span class="Identifier">fib</span></pre>When the flag <tt class="docutils literal"><span class="pre"><span class="Operator">--</span><span class="Identifier">benchmarkVM</span></span></tt> is passed to the compiler, this proc is also available at compile time
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2831" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2831" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="dateTime-procs-all">
- <div id="dateTime,int,Month,MonthdayRange,HourRange,MinuteRange,SecondRange,NanosecondRange,Timezone">
- <dt><pre><span class="Keyword">proc</span> <a href="#dateTime%2Cint%2CMonth%2CMonthdayRange%2CHourRange%2CMinuteRange%2CSecondRange%2CNanosecondRange%2CTimezone"><span class="Identifier">dateTime</span></a><span class="Other">(</span><span class="Identifier">year</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">;</span> <span class="Identifier">month</span><span class="Other">:</span> <a href="times.html#Month"><span class="Identifier">Month</span></a><span class="Other">;</span> <span class="Identifier">monthday</span><span class="Other">:</span> <a href="times.html#MonthdayRange"><span class="Identifier">MonthdayRange</span></a><span class="Other">;</span>
- <span class="Identifier">hour</span><span class="Other">:</span> <a href="times.html#HourRange"><span class="Identifier">HourRange</span></a> <span class="Other">=</span> <span class="DecNumber">0</span><span class="Other">;</span> <span class="Identifier">minute</span><span class="Other">:</span> <a href="times.html#MinuteRange"><span class="Identifier">MinuteRange</span></a> <span class="Other">=</span> <span class="DecNumber">0</span><span class="Other">;</span>
- <span class="Identifier">second</span><span class="Other">:</span> <a href="times.html#SecondRange"><span class="Identifier">SecondRange</span></a> <span class="Other">=</span> <span class="DecNumber">0</span><span class="Other">;</span> <span class="Identifier">nanosecond</span><span class="Other">:</span> <a href="times.html#NanosecondRange"><span class="Identifier">NanosecondRange</span></a> <span class="Other">=</span> <span class="DecNumber">0</span><span class="Other">;</span>
- <span class="Identifier">zone</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</span></a> <span class="Other">=</span> <span class="Identifier">local</span><span class="Other">(</span><span class="Other">)</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</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>
-
- Create a new <a class="reference external" href="#DateTime">DateTime</a> in the specified timezone.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">assert</span> <span class="Operator">$</span><span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2017</span><span class="Punctuation">,</span> <span class="Identifier">mMar</span><span class="Punctuation">,</span> <span class="DecNumber">30</span><span class="Punctuation">,</span> <span class="Identifier">zone</span> <span class="Operator">=</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"2017-03-30T00:00:00Z"</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1419" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1419" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="days-procs-all">
- <div id="days,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#days%2Cint"><span class="Identifier">days</span></a><span class="Other">(</span><span class="Identifier">d</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="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>TimeInterval of <tt class="docutils literal"><span class="pre"><span class="Identifier">d</span></span></tt> days.</p>
- <p><tt class="docutils literal"><span class="pre"><span class="Identifier">echo</span> <span class="Identifier">getTime</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">+</span> <span class="FloatNumber">2.</span><span class="Identifier">days</span></span></tt></p>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2616" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2616" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="div-procs-all">
- <div id="div,Duration,int64">
- <dt><pre><span class="Keyword">proc</span> <a href="#div%2CDuration%2Cint64"><span class="Identifier">`div`</span></a><span class="Other">(</span><span class="Identifier">a</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">;</span> <span class="Identifier">b</span><span class="Other">:</span> <a href="system.html#int64"><span class="Identifier">int64</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</span><span class="Other">,</span> </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">"ntDivDuration"</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>
-
- Integer division for durations.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">3</span><span class="Punctuation">)</span> <span class="Keyword">div</span> <span class="DecNumber">2</span> <span class="Operator">==</span>
- <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">milliseconds</span> <span class="Operator">=</span> <span class="DecNumber">1500</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">minutes</span> <span class="Operator">=</span> <span class="DecNumber">45</span><span class="Punctuation">)</span> <span class="Keyword">div</span> <span class="DecNumber">30</span> <span class="Operator">==</span>
- <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">minutes</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">,</span> <span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">30</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">nanoseconds</span> <span class="Operator">=</span> <span class="DecNumber">3</span><span class="Punctuation">)</span> <span class="Keyword">div</span> <span class="DecNumber">2</span> <span class="Operator">==</span>
- <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">nanoseconds</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L884" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L884" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="epochTime-procs-all">
- <div id="epochTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#epochTime"><span class="Identifier">epochTime</span></a><span class="Other">(</span><span class="Other">)</span><span class="Other">:</span> <a href="system.html#float"><span class="Identifier">float</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><a href="exceptions.html#TimeEffect"><span class="Identifier">TimeEffect</span></a><span class="Other">]</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">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
- <dd>
-
- <p>Gets time after the UNIX epoch (1970) in seconds. It is a float because sub-second resolution is likely to be supported (depending on the hardware/OS).</p>
- <p><tt class="docutils literal"><span class="pre"><span class="Identifier">getTime</span></span></tt> should generally be preferred over this proc.</p>
- <div class="admonition admonition-warning"><span class="admonition-warning-text"><b>Warning:</b></span>
- Unsuitable for benchmarking (but still better than <tt class="docutils literal"><span class="pre"><span class="Identifier">now</span></span></tt>), use <tt class="docutils literal"><span class="pre"><span class="Identifier">monotimes</span><span class="Operator">.</span><span class="Identifier">getMonoTime</span></span></tt> or <tt class="docutils literal"><span class="pre"><span class="Identifier">cpuTime</span></span></tt> instead, depending on the use case.</div>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2790" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2790" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="format-procs-all">
- <div id="format,DateTime,static[string]">
- <dt><pre><span class="Keyword">proc</span> <a href="#format%2CDateTime%2Cstatic%5Bstring%5D"><span class="Identifier">format</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">f</span><span class="Other">:</span> <a href="system.html#static"><span class="Identifier">static</span></a><span class="Other">[</span><a href="system.html#string"><span class="Identifier">string</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>.}</pre></dt>
- <dd>
-
- Overload that validates <tt class="docutils literal"><span class="pre"><span class="Identifier">format</span></span></tt> at compile time.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2217" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2217" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="format,DateTime,string,DateTimeLocale">
- <dt><pre><span class="Keyword">proc</span> <a href="#format%2CDateTime%2Cstring%2CDateTimeLocale"><span class="Identifier">format</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">f</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">loc</span><span class="Other">:</span> <a href="times.html#DateTimeLocale"><span class="Identifier">DateTimeLocale</span></a> <span class="Other">=</span> <span class="Identifier">DefaultLocale</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><a href="times.html#TimeFormatParseError"><span class="Identifier">TimeFormatParseError</span></a><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>Shorthand for constructing a <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeFormat</span></span></tt> and using it to format <tt class="docutils literal"><span class="pre"><span class="Identifier">dt</span></span></tt>.</p>
- <p>See <a class="reference internal" href="#parsing-and-formatting-dates">Parsing and formatting dates</a> for documentation of the <tt class="docutils literal"><span class="pre"><span class="Identifier">format</span></span></tt> argument.</p>
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dt</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2000</span><span class="Punctuation">,</span> <span class="Identifier">mJan</span><span class="Punctuation">,</span> <span class="DecNumber">01</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="StringLit">"2000-01-01"</span> <span class="Operator">==</span> <span class="Identifier">format</span><span class="Punctuation">(</span><span class="Identifier">dt</span><span class="Punctuation">,</span> <span class="StringLit">"yyyy-MM-dd"</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2205" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2205" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="format,DateTime,TimeFormat,DateTimeLocale">
- <dt><pre><span class="Keyword">proc</span> <a href="#format%2CDateTime%2CTimeFormat%2CDateTimeLocale"><span class="Identifier">format</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">f</span><span class="Other">:</span> <a href="times.html#TimeFormat"><span class="Identifier">TimeFormat</span></a><span class="Other">;</span> <span class="Identifier">loc</span><span class="Other">:</span> <a href="times.html#DateTimeLocale"><span class="Identifier">DateTimeLocale</span></a> <span class="Other">=</span> <span class="Identifier">DefaultLocale</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>
-
- Format <tt class="docutils literal"><span class="pre"><span class="Identifier">dt</span></span></tt> using the format specified by <tt class="docutils literal"><span class="pre"><span class="Identifier">f</span></span></tt>.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">f</span> <span class="Operator">=</span> <span class="Identifier">initTimeFormat</span><span class="Punctuation">(</span><span class="StringLit">"yyyy-MM-dd"</span><span class="Punctuation">)</span>
- <span class="Keyword">let</span> <span class="Identifier">dt</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2000</span><span class="Punctuation">,</span> <span class="Identifier">mJan</span><span class="Punctuation">,</span> <span class="DecNumber">01</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="StringLit">"2000-01-01"</span> <span class="Operator">==</span> <span class="Identifier">dt</span><span class="Operator">.</span><span class="Identifier">format</span><span class="Punctuation">(</span><span class="Identifier">f</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2182" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2182" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="format,Time,static[string],Timezone">
- <dt><pre><span class="Keyword">proc</span> <a href="#format%2CTime%2Cstatic%5Bstring%5D%2CTimezone"><span class="Identifier">format</span></a><span class="Other">(</span><span class="Identifier">time</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">;</span> <span class="Identifier">f</span><span class="Other">:</span> <a href="system.html#static"><span class="Identifier">static</span></a><span class="Other">[</span><a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">zone</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</span></a> <span class="Other">=</span> <span class="Identifier">local</span><span class="Other">(</span><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>.}</pre></dt>
- <dd>
-
- Overload that validates <tt class="docutils literal"><span class="pre"><span class="Identifier">f</span></span></tt> at compile time.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2240" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2240" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="format,Time,string,Timezone">
- <dt><pre><span class="Keyword">proc</span> <a href="#format%2CTime%2Cstring%2CTimezone"><span class="Identifier">format</span></a><span class="Other">(</span><span class="Identifier">time</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">;</span> <span class="Identifier">f</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">zone</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</span></a> <span class="Other">=</span> <span class="Identifier">local</span><span class="Other">(</span><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><a href="times.html#TimeFormatParseError"><span class="Identifier">TimeFormatParseError</span></a><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>Shorthand for constructing a <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeFormat</span></span></tt> and using it to format <tt class="docutils literal"><span class="pre"><span class="Identifier">time</span></span></tt>. Will use the timezone specified by <tt class="docutils literal"><span class="pre"><span class="Identifier">zone</span></span></tt>.</p>
- <p>See <a class="reference internal" href="#parsing-and-formatting-dates">Parsing and formatting dates</a> for documentation of the <tt class="docutils literal"><span class="pre"><span class="Identifier">f</span></span></tt> argument.</p>
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">var</span> <span class="Identifier">dt</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">1970</span><span class="Punctuation">,</span> <span class="Identifier">mJan</span><span class="Punctuation">,</span> <span class="DecNumber">01</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Keyword">var</span> <span class="Identifier">tm</span> <span class="Operator">=</span> <span class="Identifier">dt</span><span class="Operator">.</span><span class="Identifier">toTime</span><span class="Punctuation">(</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">format</span><span class="Punctuation">(</span><span class="Identifier">tm</span><span class="Punctuation">,</span> <span class="StringLit">"yyyy-MM-dd'T'HH:mm:ss"</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"1970-01-01T00:00:00"</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2227" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2227" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="formatValue-procs-all">
- <div id="formatValue,string,,string">
- <dt><pre><span class="Keyword">proc</span> <a href="#formatValue%2Cstring%2C%2Cstring"><span class="Identifier">formatValue</span></a><span class="Other">(</span><span class="Identifier">result</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">value</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a> <span class="Operator">|</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">;</span> <span class="Identifier">specifier</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">)</span></pre></dt>
- <dd>
-
- adapter for strformat. Not intended to be called directly.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2222" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2222" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="fromUnix-procs-all">
- <div id="fromUnix,int64">
- <dt><pre><span class="Keyword">proc</span> <a href="#fromUnix%2Cint64"><span class="Identifier">fromUnix</span></a><span class="Other">(</span><span class="Identifier">unix</span><span class="Other">:</span> <a href="system.html#int64"><span class="Identifier">int64</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</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">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> </span><span class="Identifier">noSideEffect</span><span class="Other">,</span>
- <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
- <dd>
-
- Convert a unix timestamp (seconds since <tt class="docutils literal"><span class="pre"><span class="DecNumber">1970</span><span class="Operator">-</span><span class="DecNumber">01</span><span class="Operator">-</span><span class="DecNumber">01</span><span class="Identifier">T00</span><span class="Punctuation">:</span><span class="DecNumber">00</span><span class="Punctuation">:</span><span class="DecNumber">00</span><span class="Identifier">Z</span></span></tt>) to a <tt class="docutils literal"><span class="pre"><span class="Identifier">Time</span></span></tt>.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Identifier">fromUnix</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">utc</span> <span class="Operator">==</span> <span class="StringLit">"1970-01-01T00:00:00Z"</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L924" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L924" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="fromUnixFloat-procs-all">
- <div id="fromUnixFloat,float">
- <dt><pre><span class="Keyword">proc</span> <a href="#fromUnixFloat%2Cfloat"><span class="Identifier">fromUnixFloat</span></a><span class="Other">(</span><span class="Identifier">seconds</span><span class="Other">:</span> <a href="system.html#float"><span class="Identifier">float</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</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">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
- </span><span class="Identifier">noSideEffect</span><span class="Other">,</span> <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
- <dd>
-
- Convert a unix timestamp in seconds to a <tt class="docutils literal"><span class="pre"><span class="Identifier">Time</span></span></tt>; same as <tt class="docutils literal"><span class="pre"><span class="Identifier">fromUnix</span></span></tt> but with subsecond resolution.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">fromUnixFloat</span><span class="Punctuation">(</span><span class="FloatNumber">123456.0</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Identifier">fromUnixFloat</span><span class="Punctuation">(</span><span class="DecNumber">123456</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">fromUnixFloat</span><span class="Punctuation">(</span><span class="Operator">-</span><span class="FloatNumber">123456.0</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Identifier">fromUnixFloat</span><span class="Punctuation">(</span><span class="Operator">-</span><span class="DecNumber">123456</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L939" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L939" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="fromWinTime-procs-all">
- <div id="fromWinTime,int64">
- <dt><pre><span class="Keyword">proc</span> <a href="#fromWinTime%2Cint64"><span class="Identifier">fromWinTime</span></a><span class="Other">(</span><span class="Identifier">win</span><span class="Other">:</span> <a href="system.html#int64"><span class="Identifier">int64</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</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>
-
- Convert a Windows file time (100-nanosecond intervals since <tt class="docutils literal"><span class="pre"><span class="DecNumber">1601</span><span class="Operator">-</span><span class="DecNumber">01</span><span class="Operator">-</span><span class="DecNumber">01</span><span class="Identifier">T00</span><span class="Punctuation">:</span><span class="DecNumber">00</span><span class="Punctuation">:</span><span class="DecNumber">00</span><span class="Identifier">Z</span></span></tt>) to a <tt class="docutils literal"><span class="pre"><span class="Identifier">Time</span></span></tt>.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L962" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L962" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="getClockStr-procs-all">
- <div id="getClockStr">
- <dt><pre><span class="Keyword">proc</span> <a href="#getClockStr"><span class="Identifier">getClockStr</span></a><span class="Other">(</span><span class="Identifier">dt</span> <span class="Other">=</span> <span class="Identifier">now</span><span class="Other">(</span><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">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nt$1"</span><span class="Other">,</span>
- <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><a href="exceptions.html#TimeEffect"><span class="Identifier">TimeEffect</span></a><span class="Other">]</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">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
- <dd>
-
- Gets the current local clock time as a string of the format <tt class="docutils literal"><span class="pre"><span class="Identifier">HH</span><span class="Punctuation">:</span><span class="Identifier">mm</span><span class="Punctuation">:</span><span class="Identifier">ss</span></span></tt>.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">echo</span> <span class="Identifier">getClockStr</span><span class="Punctuation">(</span><span class="Identifier">now</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">-</span> <span class="FloatNumber">1.</span><span class="Identifier">hours</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1514" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1514" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="getDateStr-procs-all">
- <div id="getDateStr">
- <dt><pre><span class="Keyword">proc</span> <a href="#getDateStr"><span class="Identifier">getDateStr</span></a><span class="Other">(</span><span class="Identifier">dt</span> <span class="Other">=</span> <span class="Identifier">now</span><span class="Other">(</span><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">gcsafe</span><span class="Other">,</span> <span class="Identifier">extern</span><span class="Other">:</span> <span class="StringLit">"nt$1"</span><span class="Other">,</span>
- <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><a href="exceptions.html#TimeEffect"><span class="Identifier">TimeEffect</span></a><span class="Other">]</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">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
- <dd>
-
- Gets the current local date as a string of the format <tt class="docutils literal"><span class="pre"><span class="Identifier">YYYY</span><span class="Operator">-</span><span class="Identifier">MM</span><span class="Operator">-</span><span class="Identifier">dd</span></span></tt>.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">echo</span> <span class="Identifier">getDateStr</span><span class="Punctuation">(</span><span class="Identifier">now</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">-</span> <span class="FloatNumber">1.</span><span class="Identifier">months</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1502" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1502" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="getDayOfWeek-procs-all">
- <div id="getDayOfWeek,MonthdayRange,Month,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#getDayOfWeek%2CMonthdayRange%2CMonth%2Cint"><span class="Identifier">getDayOfWeek</span></a><span class="Other">(</span><span class="Identifier">monthday</span><span class="Other">:</span> <a href="times.html#MonthdayRange"><span class="Identifier">MonthdayRange</span></a><span class="Other">;</span> <span class="Identifier">month</span><span class="Other">:</span> <a href="times.html#Month"><span class="Identifier">Month</span></a><span class="Other">;</span> <span class="Identifier">year</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="times.html#WeekDay"><span class="Identifier">WeekDay</span></a> {.
- <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</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">gcsafe</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 day of the week enum from day, month and year. Equivalent with <tt class="docutils literal"><span class="pre"><span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="Identifier">year</span><span class="Punctuation">,</span> <span class="Identifier">month</span><span class="Punctuation">,</span> <span class="Identifier">monthday</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">weekday</span></span></tt>.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">getDayOfWeek</span><span class="Punctuation">(</span><span class="DecNumber">13</span><span class="Punctuation">,</span> <span class="Identifier">mJun</span><span class="Punctuation">,</span> <span class="DecNumber">1990</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Identifier">dWed</span>
- <span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Identifier">getDayOfWeek</span><span class="Punctuation">(</span><span class="DecNumber">13</span><span class="Punctuation">,</span> <span class="Identifier">mJun</span><span class="Punctuation">,</span> <span class="DecNumber">1990</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"Wednesday"</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L540" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L540" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="getDayOfYear-procs-all">
- <div id="getDayOfYear,MonthdayRange,Month,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#getDayOfYear%2CMonthdayRange%2CMonth%2Cint"><span class="Identifier">getDayOfYear</span></a><span class="Other">(</span><span class="Identifier">monthday</span><span class="Other">:</span> <a href="times.html#MonthdayRange"><span class="Identifier">MonthdayRange</span></a><span class="Other">;</span> <span class="Identifier">month</span><span class="Other">:</span> <a href="times.html#Month"><span class="Identifier">Month</span></a><span class="Other">;</span> <span class="Identifier">year</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="times.html#YeardayRange"><span class="Identifier">YeardayRange</span></a> {.
- <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</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">gcsafe</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 day of the year. Equivalent with <tt class="docutils literal"><span class="pre"><span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="Identifier">year</span><span class="Punctuation">,</span> <span class="Identifier">month</span><span class="Punctuation">,</span> <span class="Identifier">monthday</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">,</span> <span class="DecNumber">0</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">yearday</span></span></tt>.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">getDayOfYear</span><span class="Punctuation">(</span><span class="DecNumber">1</span><span class="Punctuation">,</span> <span class="Identifier">mJan</span><span class="Punctuation">,</span> <span class="DecNumber">2000</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">0</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">getDayOfYear</span><span class="Punctuation">(</span><span class="DecNumber">10</span><span class="Punctuation">,</span> <span class="Identifier">mJan</span><span class="Punctuation">,</span> <span class="DecNumber">2000</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">9</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">getDayOfYear</span><span class="Punctuation">(</span><span class="DecNumber">10</span><span class="Punctuation">,</span> <span class="Identifier">mFeb</span><span class="Punctuation">,</span> <span class="DecNumber">2000</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">40</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L520" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L520" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="getDaysInMonth-procs-all">
- <div id="getDaysInMonth,Month,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#getDaysInMonth%2CMonth%2Cint"><span class="Identifier">getDaysInMonth</span></a><span class="Other">(</span><span class="Identifier">month</span><span class="Other">:</span> <a href="times.html#Month"><span class="Identifier">Month</span></a><span class="Other">;</span> <span class="Identifier">year</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="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>
-
- Get the number of days in <tt class="docutils literal"><span class="pre"><span class="Identifier">month</span></span></tt> of <tt class="docutils literal"><span class="pre"><span class="Identifier">year</span></span></tt>.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">getDaysInMonth</span><span class="Punctuation">(</span><span class="Identifier">mFeb</span><span class="Punctuation">,</span> <span class="DecNumber">2000</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">29</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">getDaysInMonth</span><span class="Punctuation">(</span><span class="Identifier">mFeb</span><span class="Punctuation">,</span> <span class="DecNumber">2001</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">28</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L469" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L469" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="getDaysInYear-procs-all">
- <div id="getDaysInYear,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#getDaysInYear%2Cint"><span class="Identifier">getDaysInYear</span></a><span class="Other">(</span><span class="Identifier">year</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="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>
-
- Get the number of days in a <tt class="docutils literal"><span class="pre"><span class="Identifier">year</span></span></tt>
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">getDaysInYear</span><span class="Punctuation">(</span><span class="DecNumber">2000</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">366</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">getDaysInYear</span><span class="Punctuation">(</span><span class="DecNumber">2001</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">365</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L557" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L557" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="getIsoWeekAndYear-procs-all">
- <div id="getIsoWeekAndYear,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#getIsoWeekAndYear%2CDateTime"><span class="Identifier">getIsoWeekAndYear</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">)</span><span class="Other">:</span> <span class="Keyword">tuple</span><span class="Other">[</span><span class="Identifier">isoweek</span><span class="Other">:</span> <a href="times.html#IsoWeekRange"><span class="Identifier">IsoWeekRange</span></a><span class="Other">,</span>
- <span class="Identifier">isoyear</span><span class="Other">:</span> <a href="times.html#IsoYear"><span class="Identifier">IsoYear</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>
-
- Returns the ISO 8601 week and year.<div class="admonition admonition-warning"><span class="admonition-warning-text"><b>Warning:</b></span>
- The ISO week-based year can correspond to the following or previous year from 29 December to January 3.</div>
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">assert</span> <span class="Identifier">getIsoWeekAndYear</span><span class="Punctuation">(</span><span class="Identifier">initDateTime</span><span class="Punctuation">(</span><span class="DecNumber">21</span><span class="Punctuation">,</span> <span class="Identifier">mApr</span><span class="Punctuation">,</span> <span class="DecNumber">2018</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Punctuation">(</span><span class="Identifier">isoweek</span><span class="Punctuation">:</span> <span class="FloatNumber">16.</span><span class="Identifier">IsoWeekRange</span><span class="Punctuation">,</span> <span class="Identifier">isoyear</span><span class="Punctuation">:</span> <span class="FloatNumber">2018.</span><span class="Identifier">IsoYear</span><span class="Punctuation">)</span>
- <span class="Keyword">block</span><span class="Punctuation">:</span>
- <span class="Keyword">let</span> <span class="Punctuation">(</span><span class="Identifier">w</span><span class="Punctuation">,</span> <span class="Identifier">y</span><span class="Punctuation">)</span> <span class="Operator">=</span> <span class="Identifier">getIsoWeekAndYear</span><span class="Punctuation">(</span><span class="Identifier">initDateTime</span><span class="Punctuation">(</span><span class="DecNumber">30</span><span class="Punctuation">,</span> <span class="Identifier">mDec</span><span class="Punctuation">,</span> <span class="DecNumber">2019</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Identifier">assert</span> <span class="Identifier">w</span> <span class="Operator">==</span> <span class="FloatNumber">01.</span><span class="Identifier">IsoWeekRange</span>
- <span class="Identifier">assert</span> <span class="Identifier">y</span> <span class="Operator">==</span> <span class="FloatNumber">2020.</span><span class="Identifier">IsoYear</span>
- <span class="Identifier">assert</span> <span class="Identifier">getIsoWeekAndYear</span><span class="Punctuation">(</span><span class="Identifier">initDateTime</span><span class="Punctuation">(</span><span class="DecNumber">13</span><span class="Punctuation">,</span> <span class="Identifier">mSep</span><span class="Punctuation">,</span> <span class="DecNumber">2020</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Punctuation">(</span><span class="Identifier">isoweek</span><span class="Punctuation">:</span> <span class="FloatNumber">37.</span><span class="Identifier">IsoWeekRange</span><span class="Punctuation">,</span> <span class="Identifier">isoyear</span><span class="Punctuation">:</span> <span class="FloatNumber">2020.</span><span class="Identifier">IsoYear</span><span class="Punctuation">)</span>
- <span class="Keyword">block</span><span class="Punctuation">:</span>
- <span class="Keyword">let</span> <span class="Punctuation">(</span><span class="Identifier">w</span><span class="Punctuation">,</span> <span class="Identifier">y</span><span class="Punctuation">)</span> <span class="Operator">=</span> <span class="Identifier">getIsoWeekAndYear</span><span class="Punctuation">(</span><span class="Identifier">initDateTime</span><span class="Punctuation">(</span><span class="DecNumber">2</span><span class="Punctuation">,</span> <span class="Identifier">mJan</span><span class="Punctuation">,</span> <span class="DecNumber">2021</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Identifier">assert</span> <span class="Identifier">w</span><span class="Operator">.</span><span class="Identifier">int</span> <span class="Operator">></span> <span class="DecNumber">52</span>
- <span class="Identifier">assert</span> <span class="Identifier">w</span><span class="Operator">.</span><span class="Identifier">int</span> <span class="Operator"><</span> <span class="DecNumber">54</span>
- <span class="Identifier">assert</span> <span class="Identifier">y</span><span class="Operator">.</span><span class="Identifier">int</span> <span class="Keyword">mod</span> <span class="DecNumber">100</span> <span class="Operator">==</span> <span class="DecNumber">20</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L585" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L585" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="getTime-procs-all">
- <div id="getTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#getTime"><span class="Identifier">getTime</span></a><span class="Other">(</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><a href="exceptions.html#TimeEffect"><span class="Identifier">TimeEffect</span></a><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">gcsafe</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">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
- <dd>
-
- Gets the current time as a <tt class="docutils literal"><span class="pre"><span class="Identifier">Time</span></span></tt> with up to nanosecond resolution.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L978" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L978" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="getWeeksInIsoYear-procs-all">
- <div id="getWeeksInIsoYear,IsoYear">
- <dt><pre><span class="Keyword">proc</span> <a href="#getWeeksInIsoYear%2CIsoYear"><span class="Identifier">getWeeksInIsoYear</span></a><span class="Other">(</span><span class="Identifier">y</span><span class="Other">:</span> <a href="times.html#IsoYear"><span class="Identifier">IsoYear</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#IsoWeekRange"><span class="Identifier">IsoWeekRange</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>
-
- Returns the number of weeks in the specified ISO 8601 week-based year, which can be either 53 or 52.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">assert</span> <span class="Identifier">getWeeksInIsoYear</span><span class="Punctuation">(</span><span class="Identifier">IsoYear</span><span class="Punctuation">(</span><span class="DecNumber">2019</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">52</span>
- <span class="Identifier">assert</span> <span class="Identifier">getWeeksInIsoYear</span><span class="Punctuation">(</span><span class="Identifier">IsoYear</span><span class="Punctuation">(</span><span class="DecNumber">2020</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">53</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L567" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L567" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="high-procs-all">
- <div id="high,typedesc[Duration]">
- <dt><pre><span class="Keyword">proc</span> <a href="#high%2Ctypedesc%5BDuration%5D"><span class="Identifier">high</span></a><span class="Other">(</span><span class="Identifier">typ</span><span class="Other">:</span> <a href="system.html#typedesc"><span class="Identifier">typedesc</span></a><span class="Other">[</span><a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a></pre></dt>
- <dd>
-
- Get the longest representable duration.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L897" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L897" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="high,typedesc[Time]">
- <dt><pre><span class="Keyword">proc</span> <a href="#high%2Ctypedesc%5BTime%5D"><span class="Identifier">high</span></a><span class="Other">(</span><span class="Identifier">typ</span><span class="Other">:</span> <a href="system.html#typedesc"><span class="Identifier">typedesc</span></a><span class="Other">[</span><a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a></pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1042" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1042" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="hour-procs-all">
- <div id="hour,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#hour%2CDateTime"><span class="Identifier">hour</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#HourRange"><span class="Identifier">HourRange</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 hours past midnight, in the range 0 to 23.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1073" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1073" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="hour=-procs-all">
- <div id="hour=,DateTime,HourRange">
- <dt><pre><span class="Keyword">proc</span> <a href="#hour%3D%2CDateTime%2CHourRange"><span class="Identifier">hour=</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">value</span><span class="Other">:</span> <a href="times.html#HourRange"><span class="Identifier">HourRange</span></a><span class="Other">)</span> {.
- <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">deprecated</span><span class="Other">:</span> <span class="StringLit">"Deprecated since v1.3.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>
- <div class="deprecation-message">
- <b>Deprecated:</b> Deprecated since v1.3.1
- </div>
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2872" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2872" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="hours-procs-all">
- <div id="hours,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#hours%2Cint"><span class="Identifier">hours</span></a><span class="Other">(</span><span class="Identifier">h</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="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>TimeInterval of <tt class="docutils literal"><span class="pre"><span class="Identifier">h</span></span></tt> hours.</p>
- <p><tt class="docutils literal"><span class="pre"><span class="Identifier">echo</span> <span class="Identifier">getTime</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">+</span> <span class="FloatNumber">2.</span><span class="Identifier">hours</span></span></tt></p>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2610" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2610" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="inDays-procs-all">
- <div id="inDays,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#inDays%2CDuration"><span class="Identifier">inDays</span></a><span class="Other">(</span><span class="Identifier">dur</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int64"><span class="Identifier">int64</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>
-
- Converts the duration to the number of whole days.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dur</span> <span class="Operator">=</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">hours</span> <span class="Operator">=</span> <span class="Operator">-</span><span class="DecNumber">50</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dur</span><span class="Operator">.</span><span class="Identifier">inDays</span> <span class="Operator">==</span> <span class="Operator">-</span><span class="DecNumber">2</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L713" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L713" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="inHours-procs-all">
- <div id="inHours,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#inHours%2CDuration"><span class="Identifier">inHours</span></a><span class="Other">(</span><span class="Identifier">dur</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int64"><span class="Identifier">int64</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>
-
- Converts the duration to the number of whole hours.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dur</span> <span class="Operator">=</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">minutes</span> <span class="Operator">=</span> <span class="DecNumber">60</span><span class="Punctuation">,</span> <span class="Identifier">days</span> <span class="Operator">=</span> <span class="DecNumber">2</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dur</span><span class="Operator">.</span><span class="Identifier">inHours</span> <span class="Operator">==</span> <span class="DecNumber">49</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L720" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L720" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="initDateTime-procs-all">
- <div id="initDateTime,MonthdayRange,Month,int,HourRange,MinuteRange,SecondRange,NanosecondRange,Timezone">
- <dt><pre><span class="Keyword">proc</span> <a href="#initDateTime%2CMonthdayRange%2CMonth%2Cint%2CHourRange%2CMinuteRange%2CSecondRange%2CNanosecondRange%2CTimezone"><span class="Identifier">initDateTime</span></a><span class="Other">(</span><span class="Identifier">monthday</span><span class="Other">:</span> <a href="times.html#MonthdayRange"><span class="Identifier">MonthdayRange</span></a><span class="Other">;</span> <span class="Identifier">month</span><span class="Other">:</span> <a href="times.html#Month"><span class="Identifier">Month</span></a><span class="Other">;</span> <span class="Identifier">year</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">;</span>
- <span class="Identifier">hour</span><span class="Other">:</span> <a href="times.html#HourRange"><span class="Identifier">HourRange</span></a><span class="Other">;</span> <span class="Identifier">minute</span><span class="Other">:</span> <a href="times.html#MinuteRange"><span class="Identifier">MinuteRange</span></a><span class="Other">;</span> <span class="Identifier">second</span><span class="Other">:</span> <a href="times.html#SecondRange"><span class="Identifier">SecondRange</span></a><span class="Other">;</span>
- <span class="Identifier">nanosecond</span><span class="Other">:</span> <a href="times.html#NanosecondRange"><span class="Identifier">NanosecondRange</span></a><span class="Other">;</span> <span class="Identifier">zone</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</span></a> <span class="Other">=</span> <span class="Identifier">local</span><span class="Other">(</span><span class="Other">)</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a> {.
- <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">deprecated</span><span class="Other">:</span> <span class="StringLit">"use `dateTime`"</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>
- <div class="deprecation-message">
- <b>Deprecated:</b> use `dateTime`
- </div>
- Create a new <a class="reference external" href="#DateTime">DateTime</a> in the specified timezone.
- <p><strong class="examples_text">Example: cmd: --warning:deprecated:off</strong></p>
- <pre class="listing"><span class="Identifier">assert</span> <span class="Operator">$</span><span class="Identifier">initDateTime</span><span class="Punctuation">(</span><span class="DecNumber">30</span><span class="Punctuation">,</span> <span class="Identifier">mMar</span><span class="Punctuation">,</span> <span class="DecNumber">2017</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"2017-03-30T00:00:00Z"</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1439" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1439" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="initDateTime,MonthdayRange,Month,int,HourRange,MinuteRange,SecondRange,Timezone">
- <dt><pre><span class="Keyword">proc</span> <a href="#initDateTime%2CMonthdayRange%2CMonth%2Cint%2CHourRange%2CMinuteRange%2CSecondRange%2CTimezone"><span class="Identifier">initDateTime</span></a><span class="Other">(</span><span class="Identifier">monthday</span><span class="Other">:</span> <a href="times.html#MonthdayRange"><span class="Identifier">MonthdayRange</span></a><span class="Other">;</span> <span class="Identifier">month</span><span class="Other">:</span> <a href="times.html#Month"><span class="Identifier">Month</span></a><span class="Other">;</span> <span class="Identifier">year</span><span class="Other">:</span> <a href="system.html#int"><span class="Identifier">int</span></a><span class="Other">;</span>
- <span class="Identifier">hour</span><span class="Other">:</span> <a href="times.html#HourRange"><span class="Identifier">HourRange</span></a><span class="Other">;</span> <span class="Identifier">minute</span><span class="Other">:</span> <a href="times.html#MinuteRange"><span class="Identifier">MinuteRange</span></a><span class="Other">;</span> <span class="Identifier">second</span><span class="Other">:</span> <a href="times.html#SecondRange"><span class="Identifier">SecondRange</span></a><span class="Other">;</span>
- <span class="Identifier">zone</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</span></a> <span class="Other">=</span> <span class="Identifier">local</span><span class="Other">(</span><span class="Other">)</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a> {.
- <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">deprecated</span><span class="Other">:</span> <span class="StringLit">"use `dateTime`"</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>
- <div class="deprecation-message">
- <b>Deprecated:</b> use `dateTime`
- </div>
- Create a new <a class="reference external" href="#DateTime">DateTime</a> in the specified timezone.
- <p><strong class="examples_text">Example: cmd: --warning:deprecated:off</strong></p>
- <pre class="listing"><span class="Identifier">assert</span> <span class="Operator">$</span><span class="Identifier">initDateTime</span><span class="Punctuation">(</span><span class="DecNumber">30</span><span class="Punctuation">,</span> <span class="Identifier">mMar</span><span class="Punctuation">,</span> <span class="DecNumber">2017</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"2017-03-30T00:00:00Z"</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1448" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1448" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="initDateTime,WeekDay,IsoWeekRange,IsoYear,HourRange,MinuteRange,SecondRange,NanosecondRange,Timezone">
- <dt><pre><span class="Keyword">proc</span> <a href="#initDateTime%2CWeekDay%2CIsoWeekRange%2CIsoYear%2CHourRange%2CMinuteRange%2CSecondRange%2CNanosecondRange%2CTimezone"><span class="Identifier">initDateTime</span></a><span class="Other">(</span><span class="Identifier">weekday</span><span class="Other">:</span> <a href="times.html#WeekDay"><span class="Identifier">WeekDay</span></a><span class="Other">;</span> <span class="Identifier">isoweek</span><span class="Other">:</span> <a href="times.html#IsoWeekRange"><span class="Identifier">IsoWeekRange</span></a><span class="Other">;</span> <span class="Identifier">isoyear</span><span class="Other">:</span> <a href="times.html#IsoYear"><span class="Identifier">IsoYear</span></a><span class="Other">;</span>
- <span class="Identifier">hour</span><span class="Other">:</span> <a href="times.html#HourRange"><span class="Identifier">HourRange</span></a><span class="Other">;</span> <span class="Identifier">minute</span><span class="Other">:</span> <a href="times.html#MinuteRange"><span class="Identifier">MinuteRange</span></a><span class="Other">;</span> <span class="Identifier">second</span><span class="Other">:</span> <a href="times.html#SecondRange"><span class="Identifier">SecondRange</span></a><span class="Other">;</span>
- <span class="Identifier">nanosecond</span><span class="Other">:</span> <a href="times.html#NanosecondRange"><span class="Identifier">NanosecondRange</span></a><span class="Other">;</span> <span class="Identifier">zone</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</span></a> <span class="Other">=</span> <span class="Identifier">local</span><span class="Other">(</span><span class="Other">)</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a> {.
- <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1531" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1531" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="initDateTime,WeekDay,IsoWeekRange,IsoYear,HourRange,MinuteRange,SecondRange,Timezone">
- <dt><pre><span class="Keyword">proc</span> <a href="#initDateTime%2CWeekDay%2CIsoWeekRange%2CIsoYear%2CHourRange%2CMinuteRange%2CSecondRange%2CTimezone"><span class="Identifier">initDateTime</span></a><span class="Other">(</span><span class="Identifier">weekday</span><span class="Other">:</span> <a href="times.html#WeekDay"><span class="Identifier">WeekDay</span></a><span class="Other">;</span> <span class="Identifier">isoweek</span><span class="Other">:</span> <a href="times.html#IsoWeekRange"><span class="Identifier">IsoWeekRange</span></a><span class="Other">;</span> <span class="Identifier">isoyear</span><span class="Other">:</span> <a href="times.html#IsoYear"><span class="Identifier">IsoYear</span></a><span class="Other">;</span>
- <span class="Identifier">hour</span><span class="Other">:</span> <a href="times.html#HourRange"><span class="Identifier">HourRange</span></a><span class="Other">;</span> <span class="Identifier">minute</span><span class="Other">:</span> <a href="times.html#MinuteRange"><span class="Identifier">MinuteRange</span></a><span class="Other">;</span> <span class="Identifier">second</span><span class="Other">:</span> <a href="times.html#SecondRange"><span class="Identifier">SecondRange</span></a><span class="Other">;</span>
- <span class="Identifier">zone</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</span></a> <span class="Other">=</span> <span class="Identifier">local</span><span class="Other">(</span><span class="Other">)</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</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>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1536" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1536" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="initDuration-procs-all">
- <div id="initDuration,int64,int64,int64,int64,int64,int64,int64,int64">
- <dt><pre><span class="Keyword">proc</span> <a href="#initDuration%2Cint64%2Cint64%2Cint64%2Cint64%2Cint64%2Cint64%2Cint64%2Cint64"><span class="Identifier">initDuration</span></a><span class="Other">(</span><span class="Identifier">nanoseconds</span><span class="Other">,</span> <span class="Identifier">microseconds</span><span class="Other">,</span> <span class="Identifier">milliseconds</span><span class="Other">,</span> <span class="Identifier">seconds</span><span class="Other">,</span> <span class="Identifier">minutes</span><span class="Other">,</span>
- <span class="Identifier">hours</span><span class="Other">,</span> <span class="Identifier">days</span><span class="Other">,</span> <span class="Identifier">weeks</span><span class="Other">:</span> <a href="system.html#int64"><span class="Identifier">int64</span></a> <span class="Other">=</span> <span class="DecNumber">0</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</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>
-
- Create a new <a class="reference external" href="#Duration">Duration</a>.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dur</span> <span class="Operator">=</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">,</span> <span class="Identifier">milliseconds</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dur</span><span class="Operator">.</span><span class="Identifier">inMilliseconds</span> <span class="Operator">==</span> <span class="DecNumber">1001</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dur</span><span class="Operator">.</span><span class="Identifier">inSeconds</span> <span class="Operator">==</span> <span class="DecNumber">1</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L665" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L665" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="initTime-procs-all">
- <div id="initTime,int64,NanosecondRange">
- <dt><pre><span class="Keyword">proc</span> <a href="#initTime%2Cint64%2CNanosecondRange"><span class="Identifier">initTime</span></a><span class="Other">(</span><span class="Identifier">unix</span><span class="Other">:</span> <a href="system.html#int64"><span class="Identifier">int64</span></a><span class="Other">;</span> <span class="Identifier">nanosecond</span><span class="Other">:</span> <a href="times.html#NanosecondRange"><span class="Identifier">NanosecondRange</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</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>
-
- Create a <a class="reference external" href="#Time">Time</a> from a unix timestamp and a nanosecond part.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L915" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L915" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="initTimeFormat-procs-all">
- <div id="initTimeFormat,string">
- <dt><pre><span class="Keyword">proc</span> <a href="#initTimeFormat%2Cstring"><span class="Identifier">initTimeFormat</span></a><span class="Other">(</span><span class="Identifier">format</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="times.html#TimeFormat"><span class="Identifier">TimeFormat</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="Identifier">TimeFormatParseError</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>Construct a new time format for parsing & formatting time types.</p>
- <p>See <a class="reference internal" href="#parsing-and-formatting-dates">Parsing and formatting dates</a> for documentation of the <tt class="docutils literal"><span class="pre"><span class="Identifier">format</span></span></tt> argument.</p>
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">f</span> <span class="Operator">=</span> <span class="Identifier">initTimeFormat</span><span class="Punctuation">(</span><span class="StringLit">"yyyy-MM-dd"</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="StringLit">"2000-01-01"</span> <span class="Operator">==</span> <span class="StringLit">"2000-01-01"</span><span class="Operator">.</span><span class="Identifier">parse</span><span class="Punctuation">(</span><span class="Identifier">f</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">format</span><span class="Punctuation">(</span><span class="Identifier">f</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1764" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1764" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="initTimeInterval-procs-all">
- <div id="initTimeInterval,int,int,int,int,int,int,int,int,int,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#initTimeInterval%2Cint%2Cint%2Cint%2Cint%2Cint%2Cint%2Cint%2Cint%2Cint%2Cint"><span class="Identifier">initTimeInterval</span></a><span class="Other">(</span><span class="Identifier">nanoseconds</span> <span class="Other">=</span> <span class="DecNumber">0</span><span class="Other">;</span> <span class="Identifier">microseconds</span> <span class="Other">=</span> <span class="DecNumber">0</span><span class="Other">;</span> <span class="Identifier">milliseconds</span> <span class="Other">=</span> <span class="DecNumber">0</span><span class="Other">;</span>
- <span class="Identifier">seconds</span> <span class="Other">=</span> <span class="DecNumber">0</span><span class="Other">;</span> <span class="Identifier">minutes</span> <span class="Other">=</span> <span class="DecNumber">0</span><span class="Other">;</span> <span class="Identifier">hours</span> <span class="Other">=</span> <span class="DecNumber">0</span><span class="Other">;</span> <span class="Identifier">days</span> <span class="Other">=</span> <span class="DecNumber">0</span><span class="Other">;</span> <span class="Identifier">weeks</span> <span class="Other">=</span> <span class="DecNumber">0</span><span class="Other">;</span>
- <span class="Identifier">months</span> <span class="Other">=</span> <span class="DecNumber">0</span><span class="Other">;</span> <span class="Identifier">years</span> <span class="Other">=</span> <span class="DecNumber">0</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>Creates a new <a class="reference external" href="#TimeInterval">TimeInterval</a>.</p>
- <p>This proc doesn't perform any normalization! For example, <tt class="docutils literal"><span class="pre"><span class="Identifier">initTimeInterval</span><span class="Punctuation">(</span><span class="Identifier">hours</span> <span class="Operator">=</span> <span class="DecNumber">24</span><span class="Punctuation">)</span></span></tt> and <tt class="docutils literal"><span class="pre"><span class="Identifier">initTimeInterval</span><span class="Punctuation">(</span><span class="Identifier">days</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span></span></tt> are not equal.</p>
- <p>You can also use the convenience procedures called <tt class="docutils literal"><span class="pre"><span class="Identifier">milliseconds</span></span></tt>, <tt class="docutils literal"><span class="pre"><span class="Identifier">seconds</span></span></tt>, <tt class="docutils literal"><span class="pre"><span class="Identifier">minutes</span></span></tt>, <tt class="docutils literal"><span class="pre"><span class="Identifier">hours</span></span></tt>, <tt class="docutils literal"><span class="pre"><span class="Identifier">days</span></span></tt>, <tt class="docutils literal"><span class="pre"><span class="Identifier">months</span></span></tt>, and <tt class="docutils literal"><span class="pre"><span class="Identifier">years</span></span></tt>.</p>
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">day</span> <span class="Operator">=</span> <span class="Identifier">initTimeInterval</span><span class="Punctuation">(</span><span class="Identifier">hours</span> <span class="Operator">=</span> <span class="DecNumber">24</span><span class="Punctuation">)</span>
- <span class="Keyword">let</span> <span class="Identifier">dt</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2000</span><span class="Punctuation">,</span> <span class="Identifier">mJan</span><span class="Punctuation">,</span> <span class="DecNumber">01</span><span class="Punctuation">,</span> <span class="DecNumber">12</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Operator">$</span><span class="Punctuation">(</span><span class="Identifier">dt</span> <span class="Operator">+</span> <span class="Identifier">day</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="StringLit">"2000-01-02T12:00:00Z"</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">initTimeInterval</span><span class="Punctuation">(</span><span class="Identifier">hours</span> <span class="Operator">=</span> <span class="DecNumber">24</span><span class="Punctuation">)</span> <span class="Operator">!=</span> <span class="Identifier">initTimeInterval</span><span class="Punctuation">(</span><span class="Identifier">days</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2356" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2356" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="inMicroseconds-procs-all">
- <div id="inMicroseconds,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#inMicroseconds%2CDuration"><span class="Identifier">inMicroseconds</span></a><span class="Other">(</span><span class="Identifier">dur</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int64"><span class="Identifier">int64</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>
-
- Converts the duration to the number of whole microseconds.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dur</span> <span class="Operator">=</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="Operator">-</span><span class="DecNumber">2</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dur</span><span class="Operator">.</span><span class="Identifier">inMicroseconds</span> <span class="Operator">==</span> <span class="Operator">-</span><span class="DecNumber">2000000</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L748" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L748" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="inMilliseconds-procs-all">
- <div id="inMilliseconds,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#inMilliseconds%2CDuration"><span class="Identifier">inMilliseconds</span></a><span class="Other">(</span><span class="Identifier">dur</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int64"><span class="Identifier">int64</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>
-
- Converts the duration to the number of whole milliseconds.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dur</span> <span class="Operator">=</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="Operator">-</span><span class="DecNumber">2</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dur</span><span class="Operator">.</span><span class="Identifier">inMilliseconds</span> <span class="Operator">==</span> <span class="Operator">-</span><span class="DecNumber">2000</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L741" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L741" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="inMinutes-procs-all">
- <div id="inMinutes,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#inMinutes%2CDuration"><span class="Identifier">inMinutes</span></a><span class="Other">(</span><span class="Identifier">dur</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int64"><span class="Identifier">int64</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>
-
- Converts the duration to the number of whole minutes.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dur</span> <span class="Operator">=</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">hours</span> <span class="Operator">=</span> <span class="DecNumber">2</span><span class="Punctuation">,</span> <span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="DecNumber">10</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dur</span><span class="Operator">.</span><span class="Identifier">inMinutes</span> <span class="Operator">==</span> <span class="DecNumber">120</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L727" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L727" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="inNanoseconds-procs-all">
- <div id="inNanoseconds,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#inNanoseconds%2CDuration"><span class="Identifier">inNanoseconds</span></a><span class="Other">(</span><span class="Identifier">dur</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int64"><span class="Identifier">int64</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>
-
- Converts the duration to the number of whole nanoseconds.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dur</span> <span class="Operator">=</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">seconds</span> <span class="Operator">=</span> <span class="Operator">-</span><span class="DecNumber">2</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dur</span><span class="Operator">.</span><span class="Identifier">inNanoseconds</span> <span class="Operator">==</span> <span class="Operator">-</span><span class="DecNumber">2000000000</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L755" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L755" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="inSeconds-procs-all">
- <div id="inSeconds,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#inSeconds%2CDuration"><span class="Identifier">inSeconds</span></a><span class="Other">(</span><span class="Identifier">dur</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int64"><span class="Identifier">int64</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>
-
- Converts the duration to the number of whole seconds.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dur</span> <span class="Operator">=</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">hours</span> <span class="Operator">=</span> <span class="DecNumber">2</span><span class="Punctuation">,</span> <span class="Identifier">milliseconds</span> <span class="Operator">=</span> <span class="DecNumber">10</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dur</span><span class="Operator">.</span><span class="Identifier">inSeconds</span> <span class="Operator">==</span> <span class="DecNumber">2</span> <span class="Operator">*</span> <span class="DecNumber">60</span> <span class="Operator">*</span> <span class="DecNumber">60</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L734" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L734" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="inWeeks-procs-all">
- <div id="inWeeks,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#inWeeks%2CDuration"><span class="Identifier">inWeeks</span></a><span class="Other">(</span><span class="Identifier">dur</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int64"><span class="Identifier">int64</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>
-
- Converts the duration to the number of whole weeks.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dur</span> <span class="Operator">=</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">days</span> <span class="Operator">=</span> <span class="DecNumber">8</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dur</span><span class="Operator">.</span><span class="Identifier">inWeeks</span> <span class="Operator">==</span> <span class="DecNumber">1</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L706" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L706" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="inZone-procs-all">
- <div id="inZone,DateTime,Timezone">
- <dt><pre><span class="Keyword">proc</span> <a href="#inZone%2CDateTime%2CTimezone"><span class="Identifier">inZone</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">zone</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</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">gcsafe</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 a <tt class="docutils literal"><span class="pre"><span class="Identifier">DateTime</span></span></tt> representing the same point in time as <tt class="docutils literal"><span class="pre"><span class="Identifier">dt</span></span></tt> but using <tt class="docutils literal"><span class="pre"><span class="Identifier">zone</span></span></tt> as the timezone.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1270" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1270" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="inZone,Time,Timezone">
- <dt><pre><span class="Keyword">proc</span> <a href="#inZone%2CTime%2CTimezone"><span class="Identifier">inZone</span></a><span class="Other">(</span><span class="Identifier">time</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">;</span> <span class="Identifier">zone</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</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">gcsafe</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>
-
- Convert <tt class="docutils literal"><span class="pre"><span class="Identifier">time</span></span></tt> into a <tt class="docutils literal"><span class="pre"><span class="Identifier">DateTime</span></span></tt> using <tt class="docutils literal"><span class="pre"><span class="Identifier">zone</span></span></tt> as the timezone.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1265" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1265" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="isDst-procs-all">
- <div id="isDst,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#isDst%2CDateTime"><span class="Identifier">isDst</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#bool"><span class="Identifier">bool</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>
-
- Determines whether DST is in effect. Always false for the JavaScript backend.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1111" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1111" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="isDst=-procs-all">
- <div id="isDst=,DateTime,bool">
- <dt><pre><span class="Keyword">proc</span> <a href="#isDst%3D%2CDateTime%2Cbool"><span class="Identifier">isDst=</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">value</span><span class="Other">:</span> <a href="system.html#bool"><span class="Identifier">bool</span></a><span class="Other">)</span> {.
- <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">deprecated</span><span class="Other">:</span> <span class="StringLit">"Deprecated since v1.3.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>
- <div class="deprecation-message">
- <b>Deprecated:</b> Deprecated since v1.3.1
- </div>
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2890" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2890" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="isInitialized-procs-all">
- <div id="isInitialized,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#isInitialized%2CDateTime"><span class="Identifier">isInitialized</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</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>
-
-
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">now</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">isInitialized</span>
- <span class="Identifier">doAssert</span> <span class="Keyword">not</span> <span class="Identifier">default</span><span class="Punctuation">(</span><span class="Identifier">DateTime</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">isInitialized</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1133" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1133" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="isLeapDay-procs-all">
- <div id="isLeapDay,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#isLeapDay%2CDateTime"><span class="Identifier">isLeapDay</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</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>
-
- Returns whether <tt class="docutils literal"><span class="pre"><span class="Identifier">t</span></span></tt> is a leap day, i.e. Feb 29 in a leap year. This matters as it affects time offset calculations.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dt</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2020</span><span class="Punctuation">,</span> <span class="Identifier">mFeb</span><span class="Punctuation">,</span> <span class="DecNumber">29</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dt</span><span class="Operator">.</span><span class="Identifier">isLeapDay</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dt</span><span class="Operator">+</span><span class="FloatNumber">1.</span><span class="Identifier">years</span><span class="Operator">-</span><span class="FloatNumber">1.</span><span class="Identifier">years</span> <span class="Operator">!=</span> <span class="Identifier">dt</span>
- <span class="Keyword">let</span> <span class="Identifier">dt2</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2020</span><span class="Punctuation">,</span> <span class="Identifier">mFeb</span><span class="Punctuation">,</span> <span class="DecNumber">28</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Keyword">not</span> <span class="Identifier">dt2</span><span class="Operator">.</span><span class="Identifier">isLeapDay</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dt2</span><span class="Operator">+</span><span class="FloatNumber">1.</span><span class="Identifier">years</span><span class="Operator">-</span><span class="FloatNumber">1.</span><span class="Identifier">years</span> <span class="Operator">==</span> <span class="Identifier">dt2</span>
- <span class="Identifier">doAssertRaises</span><span class="Punctuation">(</span><span class="Identifier">Exception</span><span class="Punctuation">)</span><span class="Punctuation">:</span> <span class="Keyword">discard</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2021</span><span class="Punctuation">,</span> <span class="Identifier">mFeb</span><span class="Punctuation">,</span> <span class="DecNumber">29</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1143" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1143" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="isLeapYear-procs-all">
- <div id="isLeapYear,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#isLeapYear%2Cint"><span class="Identifier">isLeapYear</span></a><span class="Other">(</span><span class="Identifier">year</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="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>
-
- Returns true if <tt class="docutils literal"><span class="pre"><span class="Identifier">year</span></span></tt> is a leap year.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">isLeapYear</span><span class="Punctuation">(</span><span class="DecNumber">2000</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Keyword">not</span> <span class="Identifier">isLeapYear</span><span class="Punctuation">(</span><span class="DecNumber">1900</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L462" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L462" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="local-procs-all">
- <div id="local">
- <dt><pre><span class="Keyword">proc</span> <a href="#local"><span class="Identifier">local</span></a><span class="Other">(</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</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>
-
- Get the <tt class="docutils literal"><span class="pre"><span class="Identifier">Timezone</span></span></tt> implementation for the local timezone.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">now</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">timezone</span> <span class="Operator">==</span> <span class="Identifier">local</span><span class="Punctuation">(</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">local</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">name</span> <span class="Operator">==</span> <span class="StringLit">"LOCAL"</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1385" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1385" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="local,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#local%2CDateTime"><span class="Identifier">local</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</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>
-
- Shorthand for <tt class="docutils literal"><span class="pre"><span class="Identifier">dt</span><span class="Operator">.</span><span class="Identifier">inZone</span><span class="Punctuation">(</span><span class="Identifier">local</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span></span></tt>.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1399" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1399" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="local,Time">
- <dt><pre><span class="Keyword">proc</span> <a href="#local%2CTime"><span class="Identifier">local</span></a><span class="Other">(</span><span class="Identifier">t</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</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>
-
- Shorthand for <tt class="docutils literal"><span class="pre"><span class="Identifier">t</span><span class="Operator">.</span><span class="Identifier">inZone</span><span class="Punctuation">(</span><span class="Identifier">local</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span></span></tt>.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1407" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1407" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="low-procs-all">
- <div id="low,typedesc[Duration]">
- <dt><pre><span class="Keyword">proc</span> <a href="#low%2Ctypedesc%5BDuration%5D"><span class="Identifier">low</span></a><span class="Other">(</span><span class="Identifier">typ</span><span class="Other">:</span> <a href="system.html#typedesc"><span class="Identifier">typedesc</span></a><span class="Other">[</span><a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a></pre></dt>
- <dd>
-
- Get the longest representable duration of negative direction.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L901" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L901" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="low,typedesc[Time]">
- <dt><pre><span class="Keyword">proc</span> <a href="#low%2Ctypedesc%5BTime%5D"><span class="Identifier">low</span></a><span class="Other">(</span><span class="Identifier">typ</span><span class="Other">:</span> <a href="system.html#typedesc"><span class="Identifier">typedesc</span></a><span class="Other">[</span><a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a></pre></dt>
- <dd>
-
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1045" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1045" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="microseconds-procs-all">
- <div id="microseconds,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#microseconds%2Cint"><span class="Identifier">microseconds</span></a><span class="Other">(</span><span class="Identifier">micros</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="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>
-
- TimeInterval of <tt class="docutils literal"><span class="pre"><span class="Identifier">micros</span></span></tt> microseconds.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2590" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2590" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="milliseconds-procs-all">
- <div id="milliseconds,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#milliseconds%2Cint"><span class="Identifier">milliseconds</span></a><span class="Other">(</span><span class="Identifier">ms</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="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>
-
- TimeInterval of <tt class="docutils literal"><span class="pre"><span class="Identifier">ms</span></span></tt> milliseconds.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2594" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2594" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="minute-procs-all">
- <div id="minute,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#minute%2CDateTime"><span class="Identifier">minute</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#MinuteRange"><span class="Identifier">MinuteRange</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 minutes after the hour, in the range 0 to 59.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1067" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1067" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="minute=-procs-all">
- <div id="minute=,DateTime,MinuteRange">
- <dt><pre><span class="Keyword">proc</span> <a href="#minute%3D%2CDateTime%2CMinuteRange"><span class="Identifier">minute=</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">value</span><span class="Other">:</span> <a href="times.html#MinuteRange"><span class="Identifier">MinuteRange</span></a><span class="Other">)</span> {.
- <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">deprecated</span><span class="Other">:</span> <span class="StringLit">"Deprecated since v1.3.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>
- <div class="deprecation-message">
- <b>Deprecated:</b> Deprecated since v1.3.1
- </div>
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2869" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2869" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="minutes-procs-all">
- <div id="minutes,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#minutes%2Cint"><span class="Identifier">minutes</span></a><span class="Other">(</span><span class="Identifier">m</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="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>TimeInterval of <tt class="docutils literal"><span class="pre"><span class="Identifier">m</span></span></tt> minutes.</p>
- <p><tt class="docutils literal"><span class="pre"><span class="Identifier">echo</span> <span class="Identifier">getTime</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">+</span> <span class="FloatNumber">5.</span><span class="Identifier">minutes</span></span></tt></p>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2604" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2604" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="month-procs-all">
- <div id="month,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#month%2CDateTime"><span class="Identifier">month</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Month"><span class="Identifier">Month</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 month as an enum, the ordinal value is in the range 1 to 12.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1085" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1085" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="monthday-procs-all">
- <div id="monthday,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#monthday%2CDateTime"><span class="Identifier">monthday</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#MonthdayRange"><span class="Identifier">MonthdayRange</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 day of the month, in the range 1 to 31.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1079" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1079" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="monthdayZero=-procs-all">
- <div id="monthdayZero=,DateTime,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#monthdayZero%3D%2CDateTime%2Cint"><span class="Identifier">monthdayZero=</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">value</span><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">deprecated</span><span class="Other">:</span> <span class="StringLit">"Deprecated since v1.3.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>
- <div class="deprecation-message">
- <b>Deprecated:</b> Deprecated since v1.3.1
- </div>
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2875" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2875" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="months-procs-all">
- <div id="months,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#months%2Cint"><span class="Identifier">months</span></a><span class="Other">(</span><span class="Identifier">m</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="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>TimeInterval of <tt class="docutils literal"><span class="pre"><span class="Identifier">m</span></span></tt> months.</p>
- <p><tt class="docutils literal"><span class="pre"><span class="Identifier">echo</span> <span class="Identifier">getTime</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">+</span> <span class="FloatNumber">2.</span><span class="Identifier">months</span></span></tt></p>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2628" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2628" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="monthZero=-procs-all">
- <div id="monthZero=,DateTime,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#monthZero%3D%2CDateTime%2Cint"><span class="Identifier">monthZero=</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">value</span><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">deprecated</span><span class="Other">:</span> <span class="StringLit">"Deprecated since v1.3.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>
- <div class="deprecation-message">
- <b>Deprecated:</b> Deprecated since v1.3.1
- </div>
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2878" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2878" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="name-procs-all">
- <div id="name,Timezone">
- <dt><pre><span class="Keyword">proc</span> <a href="#name%2CTimezone"><span class="Identifier">name</span></a><span class="Other">(</span><span class="Identifier">zone</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</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>The name of the timezone.</p>
- <p>If possible, the name will be the name used in the tz database. If the timezone doesn't exist in the tz database, or if the timezone name is unknown, then any string that describes the timezone unambiguously might be used. For example, the string "LOCAL" is used for the system's local timezone.</p>
- <p>See also: <a class="reference external" href="https://en.wikipedia.org/wiki/Tz_database">https://en.wikipedia.org/wiki/Tz_database</a></p>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1225" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1225" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="nanosecond-procs-all">
- <div id="nanosecond,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#nanosecond%2CDateTime"><span class="Identifier">nanosecond</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#NanosecondRange"><span class="Identifier">NanosecondRange</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 nanoseconds after the second, in the range 0 to 999_999_999.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1055" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1055" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="nanosecond,Time">
- <dt><pre><span class="Keyword">proc</span> <a href="#nanosecond%2CTime"><span class="Identifier">nanosecond</span></a><span class="Other">(</span><span class="Identifier">time</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#NanosecondRange"><span class="Identifier">NanosecondRange</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>
-
- Get the fractional part of a <tt class="docutils literal"><span class="pre"><span class="Identifier">Time</span></span></tt> as the number of nanoseconds of the second.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L919" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L919" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="nanosecond=-procs-all">
- <div id="nanosecond=,DateTime,NanosecondRange">
- <dt><pre><span class="Keyword">proc</span> <a href="#nanosecond%3D%2CDateTime%2CNanosecondRange"><span class="Identifier">nanosecond=</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">value</span><span class="Other">:</span> <a href="times.html#NanosecondRange"><span class="Identifier">NanosecondRange</span></a><span class="Other">)</span> {.
- <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">deprecated</span><span class="Other">:</span> <span class="StringLit">"Deprecated since v1.3.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>
- <div class="deprecation-message">
- <b>Deprecated:</b> Deprecated since v1.3.1
- </div>
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2863" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2863" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="nanoseconds-procs-all">
- <div id="nanoseconds,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#nanoseconds%2Cint"><span class="Identifier">nanoseconds</span></a><span class="Other">(</span><span class="Identifier">nanos</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="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>
-
- TimeInterval of <tt class="docutils literal"><span class="pre"><span class="Identifier">nanos</span></span></tt> nanoseconds.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2586" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2586" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="newTimezone-procs-all">
- <div id="newTimezone,string,proc(Time),proc(Time)">
- <dt><pre><span class="Keyword">proc</span> <a href="#newTimezone%2Cstring%2Cproc%28Time%29%2Cproc%28Time%29"><span class="Identifier">newTimezone</span></a><span class="Other">(</span><span class="Identifier">name</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">zonedTimeFromTimeImpl</span><span class="Other">:</span> <span class="Keyword">proc</span> <span class="Other">(</span><span class="Identifier">time</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#ZonedTime"><span class="Identifier">ZonedTime</span></a> {.
- <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</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">gcsafe</span></span>.}<span class="Other">;</span> <span class="Identifier">zonedTimeFromAdjTimeImpl</span><span class="Other">:</span> <span class="Keyword">proc</span> <span class="Other">(</span>
- <span class="Identifier">adjTime</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#ZonedTime"><span class="Identifier">ZonedTime</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</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">gcsafe</span></span>.}<span class="Other">)</span><span class="Other">:</span> <span class="Identifier">owned</span> <span class="Identifier">Timezone</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>Create a new <tt class="docutils literal"><span class="pre"><span class="Identifier">Timezone</span></span></tt>.</p>
- <p><tt class="docutils literal"><span class="pre"><span class="Identifier">zonedTimeFromTimeImpl</span></span></tt> and <tt class="docutils literal"><span class="pre"><span class="Identifier">zonedTimeFromAdjTimeImpl</span></span></tt> is used as the underlying implementations for <tt class="docutils literal"><span class="pre"><span class="Identifier">zonedTimeFromTime</span></span></tt> and <tt class="docutils literal"><span class="pre"><span class="Identifier">zonedTimeFromAdjTime</span></span></tt>.</p>
- <p>If possible, the name parameter should match the name used in the tz database. If the timezone doesn't exist in the tz database, or if the timezone name is unknown, then any string that describes the timezone unambiguously can be used. Note that the timezones name is used for checking equality!</p>
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">proc</span> <span class="Identifier">utcTzInfo</span><span class="Punctuation">(</span><span class="Identifier">time</span><span class="Punctuation">:</span> <span class="Identifier">Time</span><span class="Punctuation">)</span><span class="Punctuation">:</span> <span class="Identifier">ZonedTime</span> <span class="Operator">=</span>
- <span class="Identifier">ZonedTime</span><span class="Punctuation">(</span><span class="Identifier">utcOffset</span><span class="Punctuation">:</span> <span class="DecNumber">0</span><span class="Punctuation">,</span> <span class="Identifier">isDst</span><span class="Punctuation">:</span> <span class="Identifier">false</span><span class="Punctuation">,</span> <span class="Identifier">time</span><span class="Punctuation">:</span> <span class="Identifier">time</span><span class="Punctuation">)</span>
- <span class="Keyword">let</span> <span class="Identifier">utc</span> <span class="Operator">=</span> <span class="Identifier">newTimezone</span><span class="Punctuation">(</span><span class="StringLit">"Etc/UTC"</span><span class="Punctuation">,</span> <span class="Identifier">utcTzInfo</span><span class="Punctuation">,</span> <span class="Identifier">utcTzInfo</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1197" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1197" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="now-procs-all">
- <div id="now">
- <dt><pre><span class="Keyword">proc</span> <a href="#now"><span class="Identifier">now</span></a><span class="Other">(</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><a href="exceptions.html#TimeEffect"><span class="Identifier">TimeEffect</span></a><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">gcsafe</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">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
- <dd>
-
- Get the current time as a <tt class="docutils literal"><span class="pre"><span class="Identifier">DateTime</span></span></tt> in the local timezone. Shorthand for <tt class="docutils literal"><span class="pre"><span class="Identifier">getTime</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">local</span></span></tt>.<div class="admonition admonition-warning"><span class="admonition-warning-text"><b>Warning:</b></span>
- Unsuitable for benchmarking, use <tt class="docutils literal"><span class="pre"><span class="Identifier">monotimes</span><span class="Operator">.</span><span class="Identifier">getMonoTime</span></span></tt> or <tt class="docutils literal"><span class="pre"><span class="Identifier">cpuTime</span></span></tt> instead, depending on the use case.</div>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1411" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1411" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="parse-procs-all">
- <div id="parse,string,string,Timezone,DateTimeLocale">
- <dt><pre><span class="Keyword">proc</span> <a href="#parse%2Cstring%2Cstring%2CTimezone%2CDateTimeLocale"><span class="Identifier">parse</span></a><span class="Other">(</span><span class="Identifier">input</span><span class="Other">,</span> <span class="Identifier">f</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">tz</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</span></a> <span class="Other">=</span> <span class="Identifier">local</span><span class="Other">(</span><span class="Other">)</span><span class="Other">;</span>
- <span class="Identifier">loc</span><span class="Other">:</span> <a href="times.html#DateTimeLocale"><span class="Identifier">DateTimeLocale</span></a> <span class="Other">=</span> <span class="Identifier">DefaultLocale</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</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><a href="times.html#TimeParseError"><span class="Identifier">TimeParseError</span></a><span class="Other">,</span> <a href="times.html#TimeFormatParseError"><span class="Identifier">TimeFormatParseError</span></a><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">TimeEffect</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>Shorthand for constructing a <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeFormat</span></span></tt> and using it to parse <tt class="docutils literal"><span class="pre"><span class="Identifier">input</span></span></tt> as a <tt class="docutils literal"><span class="pre"><span class="Identifier">DateTime</span></span></tt>.</p>
- <p>See <a class="reference internal" href="#parsing-and-formatting-dates">Parsing and formatting dates</a> for documentation of the <tt class="docutils literal"><span class="pre"><span class="Identifier">f</span></span></tt> argument.</p>
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">dt</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2000</span><span class="Punctuation">,</span> <span class="Identifier">mJan</span><span class="Punctuation">,</span> <span class="DecNumber">01</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dt</span> <span class="Operator">==</span> <span class="Identifier">parse</span><span class="Punctuation">(</span><span class="StringLit">"2000-01-01"</span><span class="Punctuation">,</span> <span class="StringLit">"yyyy-MM-dd"</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2295" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2295" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="parse,string,static[string],Timezone,DateTimeLocale">
- <dt><pre><span class="Keyword">proc</span> <a href="#parse%2Cstring%2Cstatic%5Bstring%5D%2CTimezone%2CDateTimeLocale"><span class="Identifier">parse</span></a><span class="Other">(</span><span class="Identifier">input</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">f</span><span class="Other">:</span> <a href="system.html#static"><span class="Identifier">static</span></a><span class="Other">[</span><a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">zone</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</span></a> <span class="Other">=</span> <span class="Identifier">local</span><span class="Other">(</span><span class="Other">)</span><span class="Other">;</span>
- <span class="Identifier">loc</span><span class="Other">:</span> <a href="times.html#DateTimeLocale"><span class="Identifier">DateTimeLocale</span></a> <span class="Other">=</span> <span class="Identifier">DefaultLocale</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</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><a href="times.html#TimeParseError"><span class="Identifier">TimeParseError</span></a><span class="Other">]</span></span>.}</pre></dt>
- <dd>
-
- Overload that validates <tt class="docutils literal"><span class="pre"><span class="Identifier">f</span></span></tt> at compile time.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2308" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2308" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="parse,string,TimeFormat,Timezone,DateTimeLocale">
- <dt><pre><span class="Keyword">proc</span> <a href="#parse%2Cstring%2CTimeFormat%2CTimezone%2CDateTimeLocale"><span class="Identifier">parse</span></a><span class="Other">(</span><span class="Identifier">input</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">f</span><span class="Other">:</span> <a href="times.html#TimeFormat"><span class="Identifier">TimeFormat</span></a><span class="Other">;</span> <span class="Identifier">zone</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</span></a> <span class="Other">=</span> <span class="Identifier">local</span><span class="Other">(</span><span class="Other">)</span><span class="Other">;</span>
- <span class="Identifier">loc</span><span class="Other">:</span> <a href="times.html#DateTimeLocale"><span class="Identifier">DateTimeLocale</span></a> <span class="Other">=</span> <span class="Identifier">DefaultLocale</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</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><a href="times.html#TimeParseError"><span class="Identifier">TimeParseError</span></a><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">TimeEffect</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>Parses <tt class="docutils literal"><span class="pre"><span class="Identifier">input</span></span></tt> as a <tt class="docutils literal"><span class="pre"><span class="Identifier">DateTime</span></span></tt> using the format specified by <tt class="docutils literal"><span class="pre"><span class="Identifier">f</span></span></tt>. If no UTC offset was parsed, then <tt class="docutils literal"><span class="pre"><span class="Identifier">input</span></span></tt> is assumed to be specified in the <tt class="docutils literal"><span class="pre"><span class="Identifier">zone</span></span></tt> timezone. If a UTC offset was parsed, the result will be converted to the <tt class="docutils literal"><span class="pre"><span class="Identifier">zone</span></span></tt> timezone.</p>
- <p>Month and day names from the passed in <tt class="docutils literal"><span class="pre"><span class="Identifier">loc</span></span></tt> are used.</p>
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">f</span> <span class="Operator">=</span> <span class="Identifier">initTimeFormat</span><span class="Punctuation">(</span><span class="StringLit">"yyyy-MM-dd"</span><span class="Punctuation">)</span>
- <span class="Keyword">let</span> <span class="Identifier">dt</span> <span class="Operator">=</span> <span class="Identifier">dateTime</span><span class="Punctuation">(</span><span class="DecNumber">2000</span><span class="Punctuation">,</span> <span class="Identifier">mJan</span><span class="Punctuation">,</span> <span class="DecNumber">01</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="DecNumber">00</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dt</span> <span class="Operator">==</span> <span class="StringLit">"2000-01-01"</span><span class="Operator">.</span><span class="Identifier">parse</span><span class="Punctuation">(</span><span class="Identifier">f</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2246" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2246" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="parseTime-procs-all">
- <div id="parseTime,string,string,Timezone">
- <dt><pre><span class="Keyword">proc</span> <a href="#parseTime%2Cstring%2Cstring%2CTimezone"><span class="Identifier">parseTime</span></a><span class="Other">(</span><span class="Identifier">input</span><span class="Other">,</span> <span class="Identifier">f</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">zone</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</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><a href="times.html#TimeParseError"><span class="Identifier">TimeParseError</span></a><span class="Other">,</span> <a href="times.html#TimeFormatParseError"><span class="Identifier">TimeFormatParseError</span></a><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">TimeEffect</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>Shorthand for constructing a <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeFormat</span></span></tt> and using it to parse <tt class="docutils literal"><span class="pre"><span class="Identifier">input</span></span></tt> as a <tt class="docutils literal"><span class="pre"><span class="Identifier">DateTime</span></span></tt>, then converting it a <tt class="docutils literal"><span class="pre"><span class="Identifier">Time</span></span></tt>.</p>
- <p>See <a class="reference internal" href="#parsing-and-formatting-dates">Parsing and formatting dates</a> for documentation of the <tt class="docutils literal"><span class="pre"><span class="Identifier">format</span></span></tt> argument.</p>
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">tStr</span> <span class="Operator">=</span> <span class="StringLit">"1970-01-01T00:00:00+00:00"</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">parseTime</span><span class="Punctuation">(</span><span class="Identifier">tStr</span><span class="Punctuation">,</span> <span class="StringLit">"yyyy-MM-dd'T'HH:mm:sszzz"</span><span class="Punctuation">,</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="Identifier">fromUnix</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/times.nim#L2314" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2314" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="parseTime,string,static[string],Timezone">
- <dt><pre><span class="Keyword">proc</span> <a href="#parseTime%2Cstring%2Cstatic%5Bstring%5D%2CTimezone"><span class="Identifier">parseTime</span></a><span class="Other">(</span><span class="Identifier">input</span><span class="Other">:</span> <a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">;</span> <span class="Identifier">f</span><span class="Other">:</span> <a href="system.html#static"><span class="Identifier">static</span></a><span class="Other">[</span><a href="system.html#string"><span class="Identifier">string</span></a><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">zone</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</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><a href="times.html#TimeParseError"><span class="Identifier">TimeParseError</span></a><span class="Other">]</span></span>.}</pre></dt>
- <dd>
-
- Overload that validates <tt class="docutils literal"><span class="pre"><span class="Identifier">format</span></span></tt> at compile time.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2325" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2325" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="second-procs-all">
- <div id="second,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#second%2CDateTime"><span class="Identifier">second</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#SecondRange"><span class="Identifier">SecondRange</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 seconds after the minute, in the range 0 to 59.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1061" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1061" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="second=-procs-all">
- <div id="second=,DateTime,SecondRange">
- <dt><pre><span class="Keyword">proc</span> <a href="#second%3D%2CDateTime%2CSecondRange"><span class="Identifier">second=</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">value</span><span class="Other">:</span> <a href="times.html#SecondRange"><span class="Identifier">SecondRange</span></a><span class="Other">)</span> {.
- <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">deprecated</span><span class="Other">:</span> <span class="StringLit">"Deprecated since v1.3.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>
- <div class="deprecation-message">
- <b>Deprecated:</b> Deprecated since v1.3.1
- </div>
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2866" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2866" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="seconds-procs-all">
- <div id="seconds,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#seconds%2Cint"><span class="Identifier">seconds</span></a><span class="Other">(</span><span class="Identifier">s</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="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>TimeInterval of <tt class="docutils literal"><span class="pre"><span class="Identifier">s</span></span></tt> seconds.</p>
- <p><tt class="docutils literal"><span class="pre"><span class="Identifier">echo</span> <span class="Identifier">getTime</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">+</span> <span class="FloatNumber">5.</span><span class="Identifier">seconds</span></span></tt></p>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2598" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2598" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="timezone-procs-all">
- <div id="timezone,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#timezone%2CDateTime"><span class="Identifier">timezone</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</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 timezone represented as an implementation of <tt class="docutils literal"><span class="pre"><span class="Identifier">Timezone</span></span></tt>.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1117" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1117" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="timezone=-procs-all">
- <div id="timezone=,DateTime,Timezone">
- <dt><pre><span class="Keyword">proc</span> <a href="#timezone%3D%2CDateTime%2CTimezone"><span class="Identifier">timezone=</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">value</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</span></a><span class="Other">)</span> {.
- <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">deprecated</span><span class="Other">:</span> <span class="StringLit">"Deprecated since v1.3.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>
- <div class="deprecation-message">
- <b>Deprecated:</b> Deprecated since v1.3.1
- </div>
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2893" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2893" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="toParts-procs-all">
- <div id="toParts,Duration">
- <dt><pre><span class="Keyword">proc</span> <a href="#toParts%2CDuration"><span class="Identifier">toParts</span></a><span class="Other">(</span><span class="Identifier">dur</span><span class="Other">:</span> <a href="times.html#Duration"><span class="Identifier">Duration</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DurationParts"><span class="Identifier">DurationParts</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 duration into an array consisting of fixed time units.</p>
- <p>Each value in the array gives information about a specific unit of time, for example <tt class="docutils literal"><span class="pre"><span class="Identifier">result</span><span class="Punctuation">[</span><span class="Identifier">Days</span><span class="Punctuation">]</span></span></tt> gives a count of days.</p>
- <p>This procedure is useful for converting <tt class="docutils literal"><span class="pre"><span class="Identifier">Duration</span></span></tt> values to strings.</p>
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">var</span> <span class="Identifier">dp</span> <span class="Operator">=</span> <span class="Identifier">toParts</span><span class="Punctuation">(</span><span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">weeks</span> <span class="Operator">=</span> <span class="DecNumber">2</span><span class="Punctuation">,</span> <span class="Identifier">days</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dp</span><span class="Punctuation">[</span><span class="Identifier">Days</span><span class="Punctuation">]</span> <span class="Operator">==</span> <span class="DecNumber">1</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dp</span><span class="Punctuation">[</span><span class="Identifier">Weeks</span><span class="Punctuation">]</span> <span class="Operator">==</span> <span class="DecNumber">2</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dp</span><span class="Punctuation">[</span><span class="Identifier">Minutes</span><span class="Punctuation">]</span> <span class="Operator">==</span> <span class="DecNumber">0</span>
- <span class="Identifier">dp</span> <span class="Operator">=</span> <span class="Identifier">toParts</span><span class="Punctuation">(</span><span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">days</span> <span class="Operator">=</span> <span class="Operator">-</span><span class="DecNumber">1</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">dp</span><span class="Punctuation">[</span><span class="Identifier">Days</span><span class="Punctuation">]</span> <span class="Operator">==</span> <span class="Operator">-</span><span class="DecNumber">1</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L762" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L762" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="toParts,TimeInterval">
- <dt><pre><span class="Keyword">proc</span> <a href="#toParts%2CTimeInterval"><span class="Identifier">toParts</span></a><span class="Other">(</span><span class="Identifier">ti</span><span class="Other">:</span> <a href="times.html#TimeInterval"><span class="Identifier">TimeInterval</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#TimeIntervalParts"><span class="Identifier">TimeIntervalParts</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 <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeInterval</span></span></tt> into an array consisting of its time units, starting with nanoseconds and ending with years.</p>
- <p>This procedure is useful for converting <tt class="docutils literal"><span class="pre"><span class="Identifier">TimeInterval</span></span></tt> values to strings. E.g. then you need to implement custom interval printing</p>
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">var</span> <span class="Identifier">tp</span> <span class="Operator">=</span> <span class="Identifier">toParts</span><span class="Punctuation">(</span><span class="Identifier">initTimeInterval</span><span class="Punctuation">(</span><span class="Identifier">years</span> <span class="Operator">=</span> <span class="DecNumber">1</span><span class="Punctuation">,</span> <span class="Identifier">nanoseconds</span> <span class="Operator">=</span> <span class="DecNumber">123</span><span class="Punctuation">)</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">tp</span><span class="Punctuation">[</span><span class="Identifier">Years</span><span class="Punctuation">]</span> <span class="Operator">==</span> <span class="DecNumber">1</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">tp</span><span class="Punctuation">[</span><span class="Identifier">Nanoseconds</span><span class="Punctuation">]</span> <span class="Operator">==</span> <span class="DecNumber">123</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2555" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2555" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="toTime-procs-all">
- <div id="toTime,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#toTime%2CDateTime"><span class="Identifier">toTime</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</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">gcsafe</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 a <tt class="docutils literal"><span class="pre"><span class="Identifier">DateTime</span></span></tt> to a <tt class="docutils literal"><span class="pre"><span class="Identifier">Time</span></span></tt> representing the same point in time.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1157" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1157" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="toUnix-procs-all">
- <div id="toUnix,Time">
- <dt><pre><span class="Keyword">proc</span> <a href="#toUnix%2CTime"><span class="Identifier">toUnix</span></a><span class="Other">(</span><span class="Identifier">t</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int64"><span class="Identifier">int64</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</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">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> </span><span class="Identifier">noSideEffect</span><span class="Other">,</span>
- <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
- <dd>
-
- Convert <tt class="docutils literal"><span class="pre"><span class="Identifier">t</span></span></tt> to a unix timestamp (seconds since <tt class="docutils literal"><span class="pre"><span class="DecNumber">1970</span><span class="Operator">-</span><span class="DecNumber">01</span><span class="Operator">-</span><span class="DecNumber">01</span><span class="Identifier">T00</span><span class="Punctuation">:</span><span class="DecNumber">00</span><span class="Punctuation">:</span><span class="DecNumber">00</span><span class="Identifier">Z</span></span></tt>). See also <tt class="docutils literal"><span class="pre"><span class="Identifier">toUnixFloat</span></span></tt> for subsecond resolution.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">fromUnix</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">toUnix</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">==</span> <span class="DecNumber">0</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L932" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L932" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="toUnixFloat-procs-all">
- <div id="toUnixFloat,Time">
- <dt><pre><span class="Keyword">proc</span> <a href="#toUnixFloat%2CTime"><span class="Identifier">toUnixFloat</span></a><span class="Other">(</span><span class="Identifier">t</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#float"><span class="Identifier">float</span></a> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">gcsafe</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">raises</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>
-
- Same as <tt class="docutils literal"><span class="pre"><span class="Identifier">toUnix</span></span></tt> but using subsecond resolution.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Keyword">let</span> <span class="Identifier">t</span> <span class="Operator">=</span> <span class="Identifier">getTime</span><span class="Punctuation">(</span><span class="Punctuation">)</span>
- <span class="Comment"># `<` because of rounding errors</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">abs</span><span class="Punctuation">(</span><span class="Identifier">t</span><span class="Operator">.</span><span class="Identifier">toUnixFloat</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">fromUnixFloat</span> <span class="Operator">-</span> <span class="Identifier">t</span><span class="Punctuation">)</span> <span class="Operator"><</span> <span class="Identifier">initDuration</span><span class="Punctuation">(</span><span class="Identifier">nanoseconds</span> <span class="Operator">=</span> <span class="DecNumber">1000</span><span class="Punctuation">)</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L949" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L949" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="toWinTime-procs-all">
- <div id="toWinTime,Time">
- <dt><pre><span class="Keyword">proc</span> <a href="#toWinTime%2CTime"><span class="Identifier">toWinTime</span></a><span class="Other">(</span><span class="Identifier">t</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">)</span><span class="Other">:</span> <a href="system.html#int64"><span class="Identifier">int64</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>
-
- Convert <tt class="docutils literal"><span class="pre"><span class="Identifier">t</span></span></tt> to a Windows file time (100-nanosecond intervals since <tt class="docutils literal"><span class="pre"><span class="DecNumber">1601</span><span class="Operator">-</span><span class="DecNumber">01</span><span class="Operator">-</span><span class="DecNumber">01</span><span class="Identifier">T00</span><span class="Punctuation">:</span><span class="DecNumber">00</span><span class="Punctuation">:</span><span class="DecNumber">00</span><span class="Identifier">Z</span></span></tt>).
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L970" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L970" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="utc-procs-all">
- <div id="utc">
- <dt><pre><span class="Keyword">proc</span> <a href="#utc"><span class="Identifier">utc</span></a><span class="Other">(</span><span class="Other">)</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</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>
-
- Get the <tt class="docutils literal"><span class="pre"><span class="Identifier">Timezone</span></span></tt> implementation for the UTC timezone.
- <p><strong class="examples_text">Example:</strong></p>
- <pre class="listing"><span class="Identifier">doAssert</span> <span class="Identifier">now</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">utc</span><span class="Operator">.</span><span class="Identifier">timezone</span> <span class="Operator">==</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span>
- <span class="Identifier">doAssert</span> <span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Operator">.</span><span class="Identifier">name</span> <span class="Operator">==</span> <span class="StringLit">"Etc/UTC"</span></pre>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1376" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1376" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="utc,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#utc%2CDateTime"><span class="Identifier">utc</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</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>
-
- Shorthand for <tt class="docutils literal"><span class="pre"><span class="Identifier">dt</span><span class="Operator">.</span><span class="Identifier">inZone</span><span class="Punctuation">(</span><span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span></span></tt>.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1395" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1395" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- <div id="utc,Time">
- <dt><pre><span class="Keyword">proc</span> <a href="#utc%2CTime"><span class="Identifier">utc</span></a><span class="Other">(</span><span class="Identifier">t</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</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>
-
- Shorthand for <tt class="docutils literal"><span class="pre"><span class="Identifier">t</span><span class="Operator">.</span><span class="Identifier">inZone</span><span class="Punctuation">(</span><span class="Identifier">utc</span><span class="Punctuation">(</span><span class="Punctuation">)</span><span class="Punctuation">)</span></span></tt>.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1403" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1403" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="utcOffset-procs-all">
- <div id="utcOffset,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#utcOffset%2CDateTime"><span class="Identifier">utcOffset</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</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>
-
- The offset in seconds west of UTC, including any offset due to DST. Note that the sign of this number is the opposite of the one in a formatted offset string like <tt class="docutils literal"><span class="pre"><span class="Operator">+</span><span class="DecNumber">01</span><span class="Punctuation">:</span><span class="DecNumber">00</span></span></tt> (which would be equivalent to the UTC offset <tt class="docutils literal"><span class="pre"><span class="Operator">-</span><span class="DecNumber">3600</span></span></tt>).
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1123" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1123" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="utcOffset=-procs-all">
- <div id="utcOffset=,DateTime,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#utcOffset%3D%2CDateTime%2Cint"><span class="Identifier">utcOffset=</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">value</span><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">deprecated</span><span class="Other">:</span> <span class="StringLit">"Deprecated since v1.3.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>
- <div class="deprecation-message">
- <b>Deprecated:</b> Deprecated since v1.3.1
- </div>
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2896" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2896" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="weekday-procs-all">
- <div id="weekday,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#weekday%2CDateTime"><span class="Identifier">weekday</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#WeekDay"><span class="Identifier">WeekDay</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 day of the week as an enum, the ordinal value is in the range 0 (monday) to 6 (sunday).
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1099" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1099" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="weekday=-procs-all">
- <div id="weekday=,DateTime,WeekDay">
- <dt><pre><span class="Keyword">proc</span> <a href="#weekday%3D%2CDateTime%2CWeekDay"><span class="Identifier">weekday=</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">value</span><span class="Other">:</span> <a href="times.html#WeekDay"><span class="Identifier">WeekDay</span></a><span class="Other">)</span> {.
- <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">deprecated</span><span class="Other">:</span> <span class="StringLit">"Deprecated since v1.3.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>
- <div class="deprecation-message">
- <b>Deprecated:</b> Deprecated since v1.3.1
- </div>
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2884" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2884" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="weeks-procs-all">
- <div id="weeks,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#weeks%2Cint"><span class="Identifier">weeks</span></a><span class="Other">(</span><span class="Identifier">w</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="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>TimeInterval of <tt class="docutils literal"><span class="pre"><span class="Identifier">w</span></span></tt> weeks.</p>
- <p><tt class="docutils literal"><span class="pre"><span class="Identifier">echo</span> <span class="Identifier">getTime</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">+</span> <span class="FloatNumber">2.</span><span class="Identifier">weeks</span></span></tt></p>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2622" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2622" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="year-procs-all">
- <div id="year,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#year%2CDateTime"><span class="Identifier">year</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</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>
-
- The year, using astronomical year numbering (meaning that before year 1 is year 0, then year -1 and so on).
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1092" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1092" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="year=-procs-all">
- <div id="year=,DateTime,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#year%3D%2CDateTime%2Cint"><span class="Identifier">year=</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">value</span><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">deprecated</span><span class="Other">:</span> <span class="StringLit">"Deprecated since v1.3.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>
- <div class="deprecation-message">
- <b>Deprecated:</b> Deprecated since v1.3.1
- </div>
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2881" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2881" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="yearday-procs-all">
- <div id="yearday,DateTime">
- <dt><pre><span class="Keyword">proc</span> <a href="#yearday%2CDateTime"><span class="Identifier">yearday</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#YeardayRange"><span class="Identifier">YeardayRange</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 days since January 1, in the range 0 to 365.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1105" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1105" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="yearday=-procs-all">
- <div id="yearday=,DateTime,YeardayRange">
- <dt><pre><span class="Keyword">proc</span> <a href="#yearday%3D%2CDateTime%2CYeardayRange"><span class="Identifier">yearday=</span></a><span class="Other">(</span><span class="Identifier">dt</span><span class="Other">:</span> <span class="Keyword">var</span> <a href="times.html#DateTime"><span class="Identifier">DateTime</span></a><span class="Other">;</span> <span class="Identifier">value</span><span class="Other">:</span> <a href="times.html#YeardayRange"><span class="Identifier">YeardayRange</span></a><span class="Other">)</span> {.
- <span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">deprecated</span><span class="Other">:</span> <span class="StringLit">"Deprecated since v1.3.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>
- <div class="deprecation-message">
- <b>Deprecated:</b> Deprecated since v1.3.1
- </div>
-
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2887" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2887" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="years-procs-all">
- <div id="years,int">
- <dt><pre><span class="Keyword">proc</span> <a href="#years%2Cint"><span class="Identifier">years</span></a><span class="Other">(</span><span class="Identifier">y</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="times.html#TimeInterval"><span class="Identifier">TimeInterval</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>TimeInterval of <tt class="docutils literal"><span class="pre"><span class="Identifier">y</span></span></tt> years.</p>
- <p><tt class="docutils literal"><span class="pre"><span class="Identifier">echo</span> <span class="Identifier">getTime</span><span class="Punctuation">(</span><span class="Punctuation">)</span> <span class="Operator">+</span> <span class="FloatNumber">2.</span><span class="Identifier">years</span></span></tt></p>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L2634" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L2634" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="zonedTimeFromAdjTime-procs-all">
- <div id="zonedTimeFromAdjTime,Timezone,Time">
- <dt><pre><span class="Keyword">proc</span> <a href="#zonedTimeFromAdjTime%2CTimezone%2CTime"><span class="Identifier">zonedTimeFromAdjTime</span></a><span class="Other">(</span><span class="Identifier">zone</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</span></a><span class="Other">;</span> <span class="Identifier">adjTime</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#ZonedTime"><span class="Identifier">ZonedTime</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 <tt class="docutils literal"><span class="pre"><span class="Identifier">ZonedTime</span></span></tt> for some local time.</p>
- <p>Note that the <tt class="docutils literal"><span class="pre"><span class="Identifier">Time</span></span></tt> argument does not represent a point in time, it represent a local time! E.g if <tt class="docutils literal"><span class="pre"><span class="Identifier">adjTime</span></span></tt> is <tt class="docutils literal"><span class="pre"><span class="Identifier">fromUnix</span><span class="Punctuation">(</span><span class="DecNumber">0</span><span class="Punctuation">)</span></span></tt>, it should be interpreted as 1970-01-01T00:00:00 in the <tt class="docutils literal"><span class="pre"><span class="Identifier">zone</span></span></tt> timezone, not in UTC.</p>
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1241" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1241" class="link-seesrc" target="_blank" >Edit</a>
- </dd>
- </div>
- </div>
- <div id="zonedTimeFromTime-procs-all">
- <div id="zonedTimeFromTime,Timezone,Time">
- <dt><pre><span class="Keyword">proc</span> <a href="#zonedTimeFromTime%2CTimezone%2CTime"><span class="Identifier">zonedTimeFromTime</span></a><span class="Other">(</span><span class="Identifier">zone</span><span class="Other">:</span> <a href="times.html#Timezone"><span class="Identifier">Timezone</span></a><span class="Other">;</span> <span class="Identifier">time</span><span class="Other">:</span> <a href="times.html#Time"><span class="Identifier">Time</span></a><span class="Other">)</span><span class="Other">:</span> <a href="times.html#ZonedTime"><span class="Identifier">ZonedTime</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>
-
- Returns the <tt class="docutils literal"><span class="pre"><span class="Identifier">ZonedTime</span></span></tt> for some point in time.
- <a href="https://github.com/nim-lang/Nim/tree/devel/lib/pure/times.nim#L1237" class="link-seesrc" target="_blank">Source</a>
- <a href="https://github.com/nim-lang/Nim/edit/devel/lib/pure/times.nim#L1237" 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-01-09 12:00:09 UTC</small>
- </div>
- </div>
- </div>
- <script defer data-domain="nim-lang.org" src="https://plausible.io/js/plausible.js"></script>
-
- </body>
- </html>
|