<!DOCTYPE html><html lang='en'><head><title>[time.zone.leap.overview]</title><meta charset='UTF-8'/><link rel='stylesheet' type='text/css' href='14882.css'/><link rel='stylesheet' type='text/css' href='expanded.css' title='Notes and examples expanded'/><link rel='alternate stylesheet' type='text/css' href='colored.css' title='Notes and examples colored'/><link rel='alternate stylesheet' type='text/css' href='collapsed.css' title='Notes and examples collapsed'/><link rel='icon' href='icon.png'/></head><body><div class='wrapper'><h1 ><a class='secnum' style='min-width:73pt'>26</a> Time library <a class='abbr_ref' href='./#time'>[time]</a></h1><h2 ><a class='secnum' style='min-width:88pt'>26.10</a> Time zones <a class='abbr_ref' href='time.zone#leap.overview'>[time.zone]</a></h2><h3 ><a class='secnum' style='min-width:103pt'>26.10.8</a> Class <span class='texttt'>leap</span> <a class='abbr_ref' href='time.zone.leap#overview'>[time.zone.leap]</a></h3><h4 ><a class='secnum' style='min-width:118pt'>26.10.8.1</a> Overview <a class='abbr_ref'>[time.zone.leap.overview]</a></h4><span class='indexparent'><a class='index' id='lib:leap'></a></span><pre class='codeblock'>
<span class='keyword'>namespace</span> std<span class='operator'>:</span><span class='operator'>:</span>chrono <span class='curlybracket'>{</span>
  <span class='keyword'>class</span> leap <span class='curlybracket'>{</span>
  <span class='keyword'>public</span><span class='operator'>:</span>
    leap<span class='parenthesis'>(</span><span class='keyword'>const</span> leap<span class='operator'>&amp;</span><span class='parenthesis'>)</span>            <span class='operator'>=</span> <span class='keyword'>default</span>;
    leap<span class='operator'>&amp;</span> <span class='keyword'>operator</span><span class='operator'>=</span><span class='parenthesis'>(</span><span class='keyword'>const</span> leap<span class='operator'>&amp;</span><span class='parenthesis'>)</span> <span class='operator'>=</span> <span class='keyword'>default</span>;

    <span class='comment'>// unspecified additional constructors</span>

    <span class='keyword'>constexpr</span> sys_seconds date<span class='parenthesis'>(</span><span class='parenthesis'>)</span> <span class='keyword'>const</span> <span class='keyword'>noexcept</span>;
  <span class='curlybracket'>}</span>;
<span class='curlybracket'>}</span>
</pre><div class='para' id='1'><div class='marginalizedparent'><a class='marginalized' href='#1'>1</a></div><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L10165'>#</a></div><div id='1.sentence-1' class='sentence'>Objects of type <span class='texttt'>leap</span> representing
the date of the leap second insertions
are constructed and stored in the time zone database when initialized<a class='hidden_link' href='#1.sentence-1'>.</a></div></div><div class='para' id='2'><div class='marginalizedparent'><a class='marginalized' href='#2'>2</a></div><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L10170'>#</a></div><div id='2.example-1' class='example'>[<span style='white-space:nowrap'> </span><a class='example_link' href='#2.example-1'><span class='textit'>Example</span></a><div class='exampleBody'><span class='textit'>:</span> <pre class='codeblock'>
<span class='keyword'>for</span> <span class='parenthesis'>(</span><span class='keyword'>auto</span><span class='operator'>&amp;</span> l <span class='operator'>:</span> get_tzdb<span class='parenthesis'>(</span><span class='parenthesis'>)</span><span class='operator'>.</span>leaps<span class='parenthesis'>)</span>
  <span class='keyword'>if</span> <span class='parenthesis'>(</span>l <span class='anglebracket'>&lt;</span><span class='operator'>=</span> <span class='literal'>2018y</span><span class='operator'>/</span>March<span class='operator'>/</span><span class='literal'>17d</span><span class='parenthesis'>)</span>
    cout <span class='anglebracket'>&lt;</span><span class='anglebracket'>&lt;</span> l<span class='operator'>.</span>date<span class='parenthesis'>(</span><span class='parenthesis'>)</span> <span class='anglebracket'>&lt;</span><span class='anglebracket'>&lt;</span> <span class='literal'>'\n'</span>;
</pre><div id='2.sentence-1' class='sentence'>Produces the output:</div><div style='height:0.6em;display:block'></div><pre class='outputblock'>
1972-07-01 00:00:00
1973-01-01 00:00:00
1974-01-01 00:00:00
1975-01-01 00:00:00
1976-01-01 00:00:00
1977-01-01 00:00:00
1978-01-01 00:00:00
1979-01-01 00:00:00
1980-01-01 00:00:00
1981-07-01 00:00:00
1982-07-01 00:00:00
1983-07-01 00:00:00
1985-07-01 00:00:00
1988-01-01 00:00:00
1990-01-01 00:00:00
1991-01-01 00:00:00
1992-07-01 00:00:00
1993-07-01 00:00:00
1994-07-01 00:00:00
1996-01-01 00:00:00
1997-07-01 00:00:00
1999-01-01 00:00:00
2006-01-01 00:00:00
2009-01-01 00:00:00
2012-07-01 00:00:00
2015-07-01 00:00:00
2017-01-01 00:00:00
</pre> —<span style='white-space:nowrap'> </span><i>end example</i></div><span style='white-space:nowrap'> </span>]</div> </div></div></body></html>