<!DOCTYPE html><html lang='en'><head><title>[time.zone.zonedtime]</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#zonedtime'>[time.zone]</a></h2><h3 ><a class='secnum' style='min-width:103pt'>26.10.7</a> Class template <span class='texttt'>zoned_&shy;time</span> <a class='abbr_ref'>[time.zone.zonedtime]</a></h3><div id='overview' class='section'><h4 ><a class='secnum' href='#overview' style='min-width:118pt'>26.10.7.1</a> Overview <a class='abbr_ref' href='time.zone.zonedtime.overview'>[time.zone.zonedtime.overview]</a></h4><span class='indexparent'><a class='index' id='lib:zoned_time'></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'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> Duration, <span class='keyword'>class</span> TimeZonePtr <span class='operator'>=</span> <span class='keyword'>const</span> time_zone<span class='operator'>*</span><span class='anglebracket'>&gt;</span>
  <span class='keyword'>class</span> zoned_time <span class='curlybracket'>{</span>
  <span class='keyword'>public</span><span class='operator'>:</span>
    <span class='keyword'>using</span> duration <span class='operator'>=</span> common_type_t<span class='anglebracket'>&lt;</span>Duration, seconds<span class='anglebracket'>&gt;</span>;

  <span class='keyword'>private</span><span class='operator'>:</span>
    TimeZonePtr        zone_;                   <span class='comment'>// <span class='textit'>exposition only</span></span>
    sys_time<span class='anglebracket'>&lt;</span>duration<span class='anglebracket'>&gt;</span> tp_;                     <span class='comment'>// <span class='textit'>exposition only</span></span>

    <span class='keyword'>using</span> traits <span class='operator'>=</span> zoned_traits<span class='anglebracket'>&lt;</span>TimeZonePtr<span class='anglebracket'>&gt;</span>;   <span class='comment'>// <span class='textit'>exposition only</span></span>

  <span class='keyword'>public</span><span class='operator'>:</span>
    zoned_time<span class='parenthesis'>(</span><span class='parenthesis'>)</span>;
    zoned_time<span class='parenthesis'>(</span><span class='keyword'>const</span> zoned_time<span class='operator'>&amp;</span><span class='parenthesis'>)</span> <span class='operator'>=</span> <span class='keyword'>default</span>;
    zoned_time<span class='operator'>&amp;</span> <span class='keyword'>operator</span><span class='operator'>=</span><span class='parenthesis'>(</span><span class='keyword'>const</span> zoned_time<span class='operator'>&amp;</span><span class='parenthesis'>)</span> <span class='operator'>=</span> <span class='keyword'>default</span>;

    zoned_time<span class='parenthesis'>(</span><span class='keyword'>const</span> sys_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> st<span class='parenthesis'>)</span>;
    <span class='keyword'>explicit</span> zoned_time<span class='parenthesis'>(</span>TimeZonePtr z<span class='parenthesis'>)</span>;
    <span class='keyword'>explicit</span> zoned_time<span class='parenthesis'>(</span>string_view name<span class='parenthesis'>)</span>;

    <span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> Duration2<span class='anglebracket'>&gt;</span>
      zoned_time<span class='parenthesis'>(</span><span class='keyword'>const</span> zoned_time<span class='anglebracket'>&lt;</span>Duration2, TimeZonePtr<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> zt<span class='parenthesis'>)</span> <span class='keyword'>noexcept</span>;

    zoned_time<span class='parenthesis'>(</span>TimeZonePtr z,    <span class='keyword'>const</span> sys_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> st<span class='parenthesis'>)</span>;
    zoned_time<span class='parenthesis'>(</span>string_view name, <span class='keyword'>const</span> sys_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> st<span class='parenthesis'>)</span>;

    zoned_time<span class='parenthesis'>(</span>TimeZonePtr z,    <span class='keyword'>const</span> local_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> tp<span class='parenthesis'>)</span>;
    zoned_time<span class='parenthesis'>(</span>string_view name, <span class='keyword'>const</span> local_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> tp<span class='parenthesis'>)</span>;
    zoned_time<span class='parenthesis'>(</span>TimeZonePtr z,    <span class='keyword'>const</span> local_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> tp, choose c<span class='parenthesis'>)</span>;
    zoned_time<span class='parenthesis'>(</span>string_view name, <span class='keyword'>const</span> local_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> tp, choose c<span class='parenthesis'>)</span>;

    <span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> Duration2, <span class='keyword'>class</span> TimeZonePtr2<span class='anglebracket'>&gt;</span>
      zoned_time<span class='parenthesis'>(</span>TimeZonePtr z, <span class='keyword'>const</span> zoned_time<span class='anglebracket'>&lt;</span>Duration2, TimeZonePtr2<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> zt<span class='parenthesis'>)</span>;
    <span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> Duration2, <span class='keyword'>class</span> TimeZonePtr2<span class='anglebracket'>&gt;</span>
      zoned_time<span class='parenthesis'>(</span>TimeZonePtr z, <span class='keyword'>const</span> zoned_time<span class='anglebracket'>&lt;</span>Duration2, TimeZonePtr2<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> zt, choose<span class='parenthesis'>)</span>;

    zoned_time<span class='parenthesis'>(</span>string_view name, <span class='keyword'>const</span> zoned_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> zt<span class='parenthesis'>)</span>;
    zoned_time<span class='parenthesis'>(</span>string_view name, <span class='keyword'>const</span> zoned_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> zt, choose<span class='parenthesis'>)</span>;

    zoned_time<span class='operator'>&amp;</span> <span class='keyword'>operator</span><span class='operator'>=</span><span class='parenthesis'>(</span><span class='keyword'>const</span> sys_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> st<span class='parenthesis'>)</span>;
    zoned_time<span class='operator'>&amp;</span> <span class='keyword'>operator</span><span class='operator'>=</span><span class='parenthesis'>(</span><span class='keyword'>const</span> local_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> ut<span class='parenthesis'>)</span>;

    <span class='keyword'>operator</span> sys_time<span class='anglebracket'>&lt;</span>duration<span class='anglebracket'>&gt;</span><span class='parenthesis'>(</span><span class='parenthesis'>)</span> <span class='keyword'>const</span>;
    <span class='keyword'>explicit</span> <span class='keyword'>operator</span> local_time<span class='anglebracket'>&lt;</span>duration<span class='anglebracket'>&gt;</span><span class='parenthesis'>(</span><span class='parenthesis'>)</span> <span class='keyword'>const</span>;

    TimeZonePtr          get_time_zone<span class='parenthesis'>(</span><span class='parenthesis'>)</span>  <span class='keyword'>const</span>;
    local_time<span class='anglebracket'>&lt;</span>duration<span class='anglebracket'>&gt;</span> get_local_time<span class='parenthesis'>(</span><span class='parenthesis'>)</span> <span class='keyword'>const</span>;
    sys_time<span class='anglebracket'>&lt;</span>duration<span class='anglebracket'>&gt;</span>   get_sys_time<span class='parenthesis'>(</span><span class='parenthesis'>)</span>   <span class='keyword'>const</span>;
    sys_info             get_info<span class='parenthesis'>(</span><span class='parenthesis'>)</span>       <span class='keyword'>const</span>;
  <span class='curlybracket'>}</span>;

  zoned_time<span class='parenthesis'>(</span><span class='parenthesis'>)</span> <span class='operator'>-</span><span class='anglebracket'>&gt;</span> zoned_time<span class='anglebracket'>&lt;</span>seconds<span class='anglebracket'>&gt;</span>;

  <span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> Duration<span class='anglebracket'>&gt;</span>
    zoned_time<span class='parenthesis'>(</span>sys_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='parenthesis'>)</span>
      <span class='operator'>-</span><span class='anglebracket'>&gt;</span> zoned_time<span class='anglebracket'>&lt;</span>common_type_t<span class='anglebracket'>&lt;</span>Duration, seconds<span class='anglebracket'>&gt;</span><span class='anglebracket'>&gt;</span>;

  <span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> TimeZonePtr, <span class='keyword'>class</span> Duration<span class='anglebracket'>&gt;</span>
    zoned_time<span class='parenthesis'>(</span>TimeZonePtr, sys_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='parenthesis'>)</span>
      <span class='operator'>-</span><span class='anglebracket'>&gt;</span> zoned_time<span class='anglebracket'>&lt;</span>common_type_t<span class='anglebracket'>&lt;</span>Duration, seconds<span class='anglebracket'>&gt;</span>, TimeZonePtr<span class='anglebracket'>&gt;</span>;

  <span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> TimeZonePtr, <span class='keyword'>class</span> Duration<span class='anglebracket'>&gt;</span>
    zoned_time<span class='parenthesis'>(</span>TimeZonePtr, local_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span>, choose <span class='operator'>=</span> choose<span class='operator'>:</span><span class='operator'>:</span>earliest<span class='parenthesis'>)</span>
      <span class='operator'>-</span><span class='anglebracket'>&gt;</span> zoned_time<span class='anglebracket'>&lt;</span>common_type_t<span class='anglebracket'>&lt;</span>Duration, seconds<span class='anglebracket'>&gt;</span>, TimeZonePtr<span class='anglebracket'>&gt;</span>;

  <span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> TimeZonePtr, <span class='keyword'>class</span> Duration<span class='anglebracket'>&gt;</span>
    zoned_time<span class='parenthesis'>(</span>TimeZonePtr, zoned_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span>, choose <span class='operator'>=</span> choose<span class='operator'>:</span><span class='operator'>:</span>earliest<span class='parenthesis'>)</span>
      <span class='operator'>-</span><span class='anglebracket'>&gt;</span> zoned_time<span class='anglebracket'>&lt;</span>common_type_t<span class='anglebracket'>&lt;</span>Duration, seconds<span class='anglebracket'>&gt;</span>, TimeZonePtr<span class='anglebracket'>&gt;</span>;

  zoned_time<span class='parenthesis'>(</span>string_view<span class='parenthesis'>)</span> <span class='operator'>-</span><span class='anglebracket'>&gt;</span> zoned_time<span class='anglebracket'>&lt;</span>seconds<span class='anglebracket'>&gt;</span>;

  <span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> Duration<span class='anglebracket'>&gt;</span>
    zoned_time<span class='parenthesis'>(</span>string_view, sys_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='parenthesis'>)</span>
      <span class='operator'>-</span><span class='anglebracket'>&gt;</span> zoned_time<span class='anglebracket'>&lt;</span>common_type_t<span class='anglebracket'>&lt;</span>Duration, seconds<span class='anglebracket'>&gt;</span><span class='anglebracket'>&gt;</span>;

  <span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> Duration<span class='anglebracket'>&gt;</span>
    zoned_time<span class='parenthesis'>(</span>string_view, local_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span>, choose <span class='operator'>=</span> choose<span class='operator'>:</span><span class='operator'>:</span>earliest<span class='parenthesis'>)</span>
      <span class='operator'>-</span><span class='anglebracket'>&gt;</span> zoned_time<span class='anglebracket'>&lt;</span>common_type_t<span class='anglebracket'>&lt;</span>Duration, seconds<span class='anglebracket'>&gt;</span><span class='anglebracket'>&gt;</span>;

  <span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> Duration, <span class='keyword'>class</span> TimeZonePtr, <span class='keyword'>class</span> TimeZonePtr2<span class='anglebracket'>&gt;</span>
    zoned_time<span class='parenthesis'>(</span>TimeZonePtr, zoned_time<span class='anglebracket'>&lt;</span>Duration, TimeZonePtr2<span class='anglebracket'>&gt;</span>, choose <span class='operator'>=</span> choose<span class='operator'>:</span><span class='operator'>:</span>earliest<span class='parenthesis'>)</span>
      <span class='operator'>-</span><span class='anglebracket'>&gt;</span> zoned_time<span class='anglebracket'>&lt;</span>Duration, TimeZonePtr<span class='anglebracket'>&gt;</span>;
<span class='curlybracket'>}</span>
</pre><div class='para' id='overview-1'><div class='marginalizedparent'><a class='marginalized' href='#overview-1'>1</a></div><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9708'>#</a></div><div id='overview-1.sentence-1' class='sentence'><span class='texttt'>zoned_&shy;time</span> represents a logical pairing of
a <span class='texttt'>time_&shy;zone</span> and a <span class='texttt'>time_&shy;point</span> with precision <span class='texttt'>Duration</span><a class='hidden_link' href='#overview-1.sentence-1'>.</a></div> <div id='overview-1.sentence-2' class='sentence'><span class='texttt'>zoned_&shy;time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span></span> maintains the invariant that
it always refers to a valid time zone and
represents a point in time that exists and is not ambiguous
in that time zone<a class='hidden_link' href='#overview-1.sentence-2'>.</a></div></div><div class='para' id='overview-2'><div class='marginalizedparent'><a class='marginalized' href='#overview-2'>2</a></div><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9716'>#</a></div><div id='overview-2.sentence-1' class='sentence'>If <span class='texttt'>Duration</span> is not a specialization of <span class='texttt'>chrono<span class='operator'>:</span><span class='operator'>:</span>duration</span>,
the program is ill-formed<a class='hidden_link' href='#overview-2.sentence-1'>.</a></div></div></div><div id='ctor' class='section'><h4 ><a class='secnum' href='#ctor' style='min-width:118pt'>26.10.7.2</a> Constructors <a class='abbr_ref' href='time.zone.zonedtime.ctor'>[time.zone.zonedtime.ctor]</a></h4><span class='indexparent'><a class='index' id='lib:zoned_time,constructor'></a></span><div class='itemdecl' id='ctor-itemdecl:1'><div class='marginalizedparent'><a class='itemDeclLink' href='#ctor-itemdecl:1'>🔗</a></div><code class='itemdeclcode'>zoned_time<span class='parenthesis'>(</span><span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='ctor-1'><div class='marginalizedparent'><a class='marginalized' href='#ctor-1'>1</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9728'>#</a></div><div id='ctor-1.sentence-1' class='sentence'><span class='textit'>Remarks:</span> 
This constructor does not participate in overload resolution unless
<span class='texttt'>traits<span class='operator'>:</span><span class='operator'>:</span>default_&shy;zone<span class='parenthesis'>(</span><span class='parenthesis'>)</span></span> is a well-formed expression<a class='hidden_link' href='#ctor-1.sentence-1'>.</a></div></div></div><div class='para' id='ctor-2'><div class='marginalizedparent'><a class='marginalized' href='#ctor-2'>2</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9733'>#</a></div><div id='ctor-2.sentence-1' class='sentence'><span class='textit'>Effects:</span> 
Constructs a <span class='texttt'>zoned_&shy;time</span> by
initializing <span class='texttt'>zone_&shy;</span> with <span class='texttt'>traits<span class='operator'>:</span><span class='operator'>:</span>default_&shy;zone<span class='parenthesis'>(</span><span class='parenthesis'>)</span></span> and
default constructing <span class='texttt'>tp_&shy;</span><a class='hidden_link' href='#ctor-2.sentence-1'>.</a></div></div></div><div class='itemdecl' id='ctor-itemdecl:2'><div class='marginalizedparent'><a class='itemDeclLink' href='#ctor-itemdecl:2'>🔗</a></div><code class='itemdeclcode'>zoned_time<span class='parenthesis'>(</span><span class='keyword'>const</span> sys_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> st<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='ctor-3'><div class='marginalizedparent'><a class='marginalized' href='#ctor-3'>3</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9745'>#</a></div><div id='ctor-3.sentence-1' class='sentence'><span class='textit'>Remarks:</span> 
This constructor does not participate in overload resolution unless
<span class='texttt'>traits<span class='operator'>:</span><span class='operator'>:</span>default_&shy;zone<span class='parenthesis'>(</span><span class='parenthesis'>)</span></span> is a well-formed expression<a class='hidden_link' href='#ctor-3.sentence-1'>.</a></div></div></div><div class='para' id='ctor-4'><div class='marginalizedparent'><a class='marginalized' href='#ctor-4'>4</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9750'>#</a></div><div id='ctor-4.sentence-1' class='sentence'><span class='textit'>Effects:</span> 
Constructs a <span class='texttt'>zoned_&shy;time</span> by
initializing <span class='texttt'>zone_&shy;</span> with <span class='texttt'>traits<span class='operator'>:</span><span class='operator'>:</span>default_&shy;zone<span class='parenthesis'>(</span><span class='parenthesis'>)</span></span> and <span class='texttt'>tp_&shy;</span> with <span class='texttt'>st</span><a class='hidden_link' href='#ctor-4.sentence-1'>.</a></div></div></div><div class='itemdecl' id='ctor-itemdecl:3'><div class='marginalizedparent'><a class='itemDeclLink' href='#ctor-itemdecl:3'>🔗</a></div><code class='itemdeclcode'><span class='keyword'>explicit</span> zoned_time<span class='parenthesis'>(</span>TimeZonePtr z<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='ctor-5'><div class='marginalizedparent'><a class='marginalized' href='#ctor-5'>5</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9761'>#</a></div><div id='ctor-5.sentence-1' class='sentence'><span class='textit'>Requires:</span> <span class='texttt'>z</span> refers to a time zone<a class='hidden_link' href='#ctor-5.sentence-1'>.</a></div></div></div><div class='para' id='ctor-6'><div class='marginalizedparent'><a class='marginalized' href='#ctor-6'>6</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9764'>#</a></div><div id='ctor-6.sentence-1' class='sentence'><span class='textit'>Effects:</span> Constructs a <span class='texttt'>zoned_&shy;time</span> by
initializing <span class='texttt'>zone_&shy;</span> with <span class='texttt'>std<span class='operator'>:</span><span class='operator'>:</span>move<span class='parenthesis'>(</span>z<span class='parenthesis'>)</span></span><a class='hidden_link' href='#ctor-6.sentence-1'>.</a></div></div></div><div class='itemdecl' id='ctor-itemdecl:4'><div class='marginalizedparent'><a class='itemDeclLink' href='#ctor-itemdecl:4'>🔗</a></div><code class='itemdeclcode'><span class='keyword'>explicit</span> zoned_time<span class='parenthesis'>(</span>string_view name<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='ctor-7'><div class='marginalizedparent'><a class='marginalized' href='#ctor-7'>7</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9775'>#</a></div><div id='ctor-7.sentence-1' class='sentence'><span class='textit'>Remarks:</span> 
This constructor does not participate in overload resolution unless
<span class='texttt'>traits<span class='operator'>:</span><span class='operator'>:</span>locate_&shy;zone<span class='parenthesis'>(</span>string_&shy;view<span class='curlybracket'>{</span><span class='curlybracket'>}</span><span class='parenthesis'>)</span></span> is a well-formed expression and
<span class='texttt'>zoned_&shy;time</span> is constructible from the return type of <span class='texttt'>traits<span class='operator'>:</span><span class='operator'>:</span>locate_&shy;zone<span class='parenthesis'>(</span>string_&shy;view<span class='curlybracket'>{</span><span class='curlybracket'>}</span><span class='parenthesis'>)</span></span><a class='hidden_link' href='#ctor-7.sentence-1'>.</a></div></div></div><div class='para' id='ctor-8'><div class='marginalizedparent'><a class='marginalized' href='#ctor-8'>8</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9781'>#</a></div><div id='ctor-8.sentence-1' class='sentence'><span class='textit'>Effects:</span> 
Constructs a <span class='texttt'>zoned_&shy;time</span> by
initializing <span class='texttt'>zone_&shy;</span> with <span class='texttt'>traits<span class='operator'>:</span><span class='operator'>:</span>locate_&shy;zone<span class='parenthesis'>(</span>name<span class='parenthesis'>)</span></span> and
default constructing <span class='texttt'>tp_&shy;</span><a class='hidden_link' href='#ctor-8.sentence-1'>.</a></div></div></div><div class='itemdecl' id='ctor-itemdecl:5'><div class='marginalizedparent'><a class='itemDeclLink' href='#ctor-itemdecl:5'>🔗</a></div><code class='itemdeclcode'><span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> Duration2<span class='anglebracket'>&gt;</span>
  zoned_time<span class='parenthesis'>(</span><span class='keyword'>const</span> zoned_time<span class='anglebracket'>&lt;</span>Duration2, TimeZonePtr<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> y<span class='parenthesis'>)</span> <span class='keyword'>noexcept</span>;
</code></div><div class='itemdescr'></div><div class='para' id='ctor-9'><div class='marginalizedparent'><a class='marginalized' href='#ctor-9'>9</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9794'>#</a></div><div id='ctor-9.sentence-1' class='sentence'><span class='textit'>Remarks:</span> 
Does not participate in overload resolution unless
<span class='texttt'>sys_&shy;time<span class='anglebracket'>&lt;</span>Duration2<span class='anglebracket'>&gt;</span></span> is implicitly convertible to <span class='texttt'>sys_&shy;time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span></span><a class='hidden_link' href='#ctor-9.sentence-1'>.</a></div></div></div><div class='para' id='ctor-10'><div class='marginalizedparent'><a class='marginalized' href='#ctor-10'>10</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9799'>#</a></div><div id='ctor-10.sentence-1' class='sentence'><span class='textit'>Effects:</span> 
Constructs a <span class='texttt'>zoned_&shy;time</span> by
initializing <span class='texttt'>zone_&shy;</span> with <span class='texttt'>y<span class='operator'>.</span>zone_&shy;</span> and <span class='texttt'>tp_&shy;</span> with <span class='texttt'>y<span class='operator'>.</span>tp_&shy;</span><a class='hidden_link' href='#ctor-10.sentence-1'>.</a></div></div></div><div class='itemdecl' id='ctor-itemdecl:6'><div class='marginalizedparent'><a class='itemDeclLink' href='#ctor-itemdecl:6'>🔗</a></div><code class='itemdeclcode'>zoned_time<span class='parenthesis'>(</span>TimeZonePtr z, <span class='keyword'>const</span> sys_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> st<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='ctor-11'><div class='marginalizedparent'><a class='marginalized' href='#ctor-11'>11</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9810'>#</a></div><div id='ctor-11.sentence-1' class='sentence'><span class='textit'>Requires:</span> <span class='texttt'>z</span> refers to a time zone<a class='hidden_link' href='#ctor-11.sentence-1'>.</a></div></div></div><div class='para' id='ctor-12'><div class='marginalizedparent'><a class='marginalized' href='#ctor-12'>12</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9813'>#</a></div><div id='ctor-12.sentence-1' class='sentence'><span class='textit'>Effects:</span> 
Constructs a <span class='texttt'>zoned_&shy;time</span> by
initializing <span class='texttt'>zone_&shy;</span> with <span class='texttt'>std<span class='operator'>:</span><span class='operator'>:</span>move<span class='parenthesis'>(</span>z<span class='parenthesis'>)</span></span> and <span class='texttt'>tp_&shy;</span> with <span class='texttt'>st</span><a class='hidden_link' href='#ctor-12.sentence-1'>.</a></div></div></div><div class='itemdecl' id='ctor-itemdecl:7'><div class='marginalizedparent'><a class='itemDeclLink' href='#ctor-itemdecl:7'>🔗</a></div><code class='itemdeclcode'>zoned_time<span class='parenthesis'>(</span>string_view name, <span class='keyword'>const</span> sys_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> st<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='ctor-13'><div class='marginalizedparent'><a class='marginalized' href='#ctor-13'>13</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9824'>#</a></div><div id='ctor-13.sentence-1' class='sentence'><span class='textit'>Remarks:</span> 
This constructor does not participate in overload resolution unless
<span class='texttt'>zoned_&shy;time</span> is constructible from the return type of <span class='texttt'>traits<span class='operator'>:</span><span class='operator'>:</span>locate_&shy;zone<span class='parenthesis'>(</span>name<span class='parenthesis'>)</span></span> and <span class='texttt'>st</span><a class='hidden_link' href='#ctor-13.sentence-1'>.</a></div></div></div><div class='para' id='ctor-14'><div class='marginalizedparent'><a class='marginalized' href='#ctor-14'>14</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9829'>#</a></div><div id='ctor-14.sentence-1' class='sentence'><span class='textit'>Effects:</span> 
Equivalent to construction with <span class='texttt'><span class='curlybracket'>{</span>traits<span class='operator'>:</span><span class='operator'>:</span>locate_&shy;zone<span class='parenthesis'>(</span>name<span class='parenthesis'>)</span>, st<span class='curlybracket'>}</span></span><a class='hidden_link' href='#ctor-14.sentence-1'>.</a></div></div></div><div class='itemdecl' id='ctor-itemdecl:8'><div class='marginalizedparent'><a class='itemDeclLink' href='#ctor-itemdecl:8'>🔗</a></div><code class='itemdeclcode'>zoned_time<span class='parenthesis'>(</span>TimeZonePtr z, <span class='keyword'>const</span> local_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> tp<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='ctor-15'><div class='marginalizedparent'><a class='marginalized' href='#ctor-15'>15</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9839'>#</a></div><div id='ctor-15.sentence-1' class='sentence'><span class='textit'>Requires:</span> <span class='texttt'>z</span> refers to a time zone<a class='hidden_link' href='#ctor-15.sentence-1'>.</a></div></div></div><div class='para' id='ctor-16'><div class='marginalizedparent'><a class='marginalized' href='#ctor-16'>16</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9842'>#</a></div><div id='ctor-16.sentence-1' class='sentence'><span class='textit'>Remarks:</span> 
This constructor does not participate in overload resolution unless
<pre class='codeblock'>
<span class='keyword'>decltype</span><span class='parenthesis'>(</span>declval<span class='anglebracket'>&lt;</span>TimeZonePtr<span class='operator'>&amp;</span><span class='anglebracket'>&gt;</span><span class='parenthesis'>(</span><span class='parenthesis'>)</span><span class='operator'>-</span><span class='anglebracket'>&gt;</span>to_sys<span class='parenthesis'>(</span>local_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='curlybracket'>{</span><span class='curlybracket'>}</span><span class='parenthesis'>)</span><span class='parenthesis'>)</span>
</pre>
is convertible to <span class='texttt'>sys_&shy;time<span class='anglebracket'>&lt;</span>duration<span class='anglebracket'>&gt;</span></span><a class='hidden_link' href='#ctor-16.sentence-1'>.</a></div></div></div><div class='para' id='ctor-17'><div class='marginalizedparent'><a class='marginalized' href='#ctor-17'>17</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9850'>#</a></div><div id='ctor-17.sentence-1' class='sentence'><span class='textit'>Effects:</span> 
Constructs a <span class='texttt'>zoned_&shy;time</span> by
initializing <span class='texttt'>zone_&shy;</span> with <span class='texttt'>std<span class='operator'>:</span><span class='operator'>:</span>move<span class='parenthesis'>(</span>z<span class='parenthesis'>)</span></span> and <span class='texttt'>tp_&shy;</span> with <span class='texttt'>zone_&shy;<span class='operator'>-</span><span class='anglebracket'>&gt;</span>to_&shy;sys<span class='parenthesis'>(</span>tp<span class='parenthesis'>)</span></span><a class='hidden_link' href='#ctor-17.sentence-1'>.</a></div></div></div><div class='itemdecl' id='ctor-itemdecl:9'><div class='marginalizedparent'><a class='itemDeclLink' href='#ctor-itemdecl:9'>🔗</a></div><code class='itemdeclcode'>zoned_time<span class='parenthesis'>(</span>string_view name, <span class='keyword'>const</span> local_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> tp<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='ctor-18'><div class='marginalizedparent'><a class='marginalized' href='#ctor-18'>18</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9861'>#</a></div><div id='ctor-18.sentence-1' class='sentence'><span class='textit'>Remarks:</span> 
This constructor does not participate in overload resolution unless
<span class='texttt'>zoned_&shy;time</span> is constructible from the return type of <span class='texttt'>traits<span class='operator'>:</span><span class='operator'>:</span>locate_&shy;zone<span class='parenthesis'>(</span>name<span class='parenthesis'>)</span></span> and <span class='texttt'>tp</span><a class='hidden_link' href='#ctor-18.sentence-1'>.</a></div></div></div><div class='para' id='ctor-19'><div class='marginalizedparent'><a class='marginalized' href='#ctor-19'>19</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9866'>#</a></div><div id='ctor-19.sentence-1' class='sentence'><span class='textit'>Effects:</span> 
Equivalent to construction with <span class='texttt'><span class='curlybracket'>{</span>traits<span class='operator'>:</span><span class='operator'>:</span>locate_&shy;zone<span class='parenthesis'>(</span>name<span class='parenthesis'>)</span>, tp<span class='curlybracket'>}</span></span><a class='hidden_link' href='#ctor-19.sentence-1'>.</a></div></div></div><div class='itemdecl' id='ctor-itemdecl:10'><div class='marginalizedparent'><a class='itemDeclLink' href='#ctor-itemdecl:10'>🔗</a></div><code class='itemdeclcode'>zoned_time<span class='parenthesis'>(</span>TimeZonePtr z, <span class='keyword'>const</span> local_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> tp, choose c<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='ctor-20'><div class='marginalizedparent'><a class='marginalized' href='#ctor-20'>20</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9876'>#</a></div><div id='ctor-20.sentence-1' class='sentence'><span class='textit'>Requires:</span> <span class='texttt'>z</span> refers to a time zone<a class='hidden_link' href='#ctor-20.sentence-1'>.</a></div></div></div><div class='para' id='ctor-21'><div class='marginalizedparent'><a class='marginalized' href='#ctor-21'>21</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9879'>#</a></div><div id='ctor-21.sentence-1' class='sentence'><span class='textit'>Remarks:</span> 
This constructor does not participate in overload resolution unless
<pre class='codeblock'>
<span class='keyword'>decltype</span><span class='parenthesis'>(</span>declval<span class='anglebracket'>&lt;</span>TimeZonePtr<span class='operator'>&amp;</span><span class='anglebracket'>&gt;</span><span class='parenthesis'>(</span><span class='parenthesis'>)</span><span class='operator'>-</span><span class='anglebracket'>&gt;</span>to_sys<span class='parenthesis'>(</span>local_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='curlybracket'>{</span><span class='curlybracket'>}</span>, choose<span class='operator'>:</span><span class='operator'>:</span>earliest<span class='parenthesis'>)</span><span class='parenthesis'>)</span>
</pre>
is convertible to <span class='texttt'>sys_&shy;time<span class='anglebracket'>&lt;</span>duration<span class='anglebracket'>&gt;</span></span><a class='hidden_link' href='#ctor-21.sentence-1'>.</a></div></div></div><div class='para' id='ctor-22'><div class='marginalizedparent'><a class='marginalized' href='#ctor-22'>22</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9887'>#</a></div><div id='ctor-22.sentence-1' class='sentence'><span class='textit'>Effects:</span> 
Constructs a <span class='texttt'>zoned_&shy;time</span> by
initializing <span class='texttt'>zone_&shy;</span> with <span class='texttt'>std<span class='operator'>:</span><span class='operator'>:</span>move<span class='parenthesis'>(</span>z<span class='parenthesis'>)</span></span> and <span class='texttt'>tp_&shy;</span> with <span class='texttt'>zone_&shy;<span class='operator'>-</span><span class='anglebracket'>&gt;</span>to_&shy;sys<span class='parenthesis'>(</span>tp, c<span class='parenthesis'>)</span></span><a class='hidden_link' href='#ctor-22.sentence-1'>.</a></div></div></div><div class='itemdecl' id='ctor-itemdecl:11'><div class='marginalizedparent'><a class='itemDeclLink' href='#ctor-itemdecl:11'>🔗</a></div><code class='itemdeclcode'>zoned_time<span class='parenthesis'>(</span>string_view name, <span class='keyword'>const</span> local_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> tp, choose c<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='ctor-23'><div class='marginalizedparent'><a class='marginalized' href='#ctor-23'>23</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9898'>#</a></div><div id='ctor-23.sentence-1' class='sentence'><span class='textit'>Remarks:</span> 
This constructor does not participate in overload resolution unless
<span class='texttt'>zoned_&shy;time</span> is constructible from
the return type of <span class='texttt'>traits<span class='operator'>:</span><span class='operator'>:</span>locate_&shy;zone<span class='parenthesis'>(</span>name<span class='parenthesis'>)</span></span>, <span class='texttt'>local_&shy;time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span></span>, and <span class='texttt'>choose</span><a class='hidden_link' href='#ctor-23.sentence-1'>.</a></div></div></div><div class='para' id='ctor-24'><div class='marginalizedparent'><a class='marginalized' href='#ctor-24'>24</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9904'>#</a></div><div id='ctor-24.sentence-1' class='sentence'><span class='textit'>Effects:</span> 
Equivalent to construction with <span class='texttt'><span class='curlybracket'>{</span>traits<span class='operator'>:</span><span class='operator'>:</span>locate_&shy;zone<span class='parenthesis'>(</span>name<span class='parenthesis'>)</span>, tp, c<span class='curlybracket'>}</span></span><a class='hidden_link' href='#ctor-24.sentence-1'>.</a></div></div></div><div class='itemdecl' id='ctor-itemdecl:12'><div class='marginalizedparent'><a class='itemDeclLink' href='#ctor-itemdecl:12'>🔗</a></div><code class='itemdeclcode'><span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> Duration2, <span class='keyword'>class</span> TimeZonePtr2<span class='anglebracket'>&gt;</span>
  zoned_time<span class='parenthesis'>(</span>TimeZonePtr z, <span class='keyword'>const</span> zoned_time<span class='anglebracket'>&lt;</span>Duration2, TimeZonePtr2<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> y<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='ctor-25'><div class='marginalizedparent'><a class='marginalized' href='#ctor-25'>25</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9915'>#</a></div><div id='ctor-25.sentence-1' class='sentence'><span class='textit'>Remarks:</span> 
Does not participate in overload resolution unless
<span class='texttt'>sys_&shy;time<span class='anglebracket'>&lt;</span>Duration2<span class='anglebracket'>&gt;</span></span> is implicitly convertible to <span class='texttt'>sys_&shy;time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span></span><a class='hidden_link' href='#ctor-25.sentence-1'>.</a></div></div></div><div class='para' id='ctor-26'><div class='marginalizedparent'><a class='marginalized' href='#ctor-26'>26</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9920'>#</a></div><div id='ctor-26.sentence-1' class='sentence'><span class='textit'>Requires:</span> <span class='texttt'>z</span> refers to a valid time zone<a class='hidden_link' href='#ctor-26.sentence-1'>.</a></div></div></div><div class='para' id='ctor-27'><div class='marginalizedparent'><a class='marginalized' href='#ctor-27'>27</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9923'>#</a></div><div id='ctor-27.sentence-1' class='sentence'><span class='textit'>Effects:</span> Constructs a <span class='texttt'>zoned_&shy;time</span> by
initializing <span class='texttt'>zone_&shy;</span> with <span class='texttt'>std<span class='operator'>:</span><span class='operator'>:</span>move<span class='parenthesis'>(</span>z<span class='parenthesis'>)</span></span> and <span class='texttt'>tp_&shy;</span> with <span class='texttt'>y<span class='operator'>.</span>tp_&shy;</span><a class='hidden_link' href='#ctor-27.sentence-1'>.</a></div></div></div><div class='itemdecl' id='ctor-itemdecl:13'><div class='marginalizedparent'><a class='itemDeclLink' href='#ctor-itemdecl:13'>🔗</a></div><code class='itemdeclcode'><span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> Duration2, <span class='keyword'>class</span> TimeZonePtr2<span class='anglebracket'>&gt;</span>
  zoned_time<span class='parenthesis'>(</span>TimeZonePtr z, <span class='keyword'>const</span> zoned_time<span class='anglebracket'>&lt;</span>Duration2, TimeZonePtr2<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> y, choose<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='ctor-28'><div class='marginalizedparent'><a class='marginalized' href='#ctor-28'>28</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9934'>#</a></div><div id='ctor-28.sentence-1' class='sentence'><span class='textit'>Remarks:</span> 
Does not participate in overload resolution unless
<span class='texttt'>sys_&shy;time<span class='anglebracket'>&lt;</span>Duration2<span class='anglebracket'>&gt;</span></span> is implicitly convertible to <span class='texttt'>sys_&shy;time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span></span><a class='hidden_link' href='#ctor-28.sentence-1'>.</a></div></div></div><div class='para' id='ctor-29'><div class='marginalizedparent'><a class='marginalized' href='#ctor-29'>29</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9939'>#</a></div><div id='ctor-29.sentence-1' class='sentence'><span class='textit'>Requires:</span> <span class='texttt'>z</span> refers to a valid time zone<a class='hidden_link' href='#ctor-29.sentence-1'>.</a></div></div></div><div class='para' id='ctor-30'><div class='marginalizedparent'><a class='marginalized' href='#ctor-30'>30</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9942'>#</a></div><div id='ctor-30.sentence-1' class='sentence'><span class='textit'>Effects:</span> 
Equivalent to construction with <span class='texttt'><span class='curlybracket'>{</span>z, y<span class='curlybracket'>}</span></span><a class='hidden_link' href='#ctor-30.sentence-1'>.</a></div></div></div><div class='para' id='ctor-31'><div class='marginalizedparent'><a class='marginalized' href='#ctor-31'>31</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9946'>#</a></div><div id='ctor-31.note-1' class='note'>[<span style='white-space:nowrap'> </span><a class='note_link' href='#ctor-31.note-1'><span class='textit'>Note</span></a><div class='noteBody'><span class='textit'>:</span> <div id='ctor-31.sentence-1' class='sentence'>The <span class='texttt'>choose</span> parameter has no effect<a class='hidden_link' href='#ctor-31.sentence-1'>.</a></div> —<span style='white-space:nowrap'> </span><i>end note</i></div><span style='white-space:nowrap'> </span>]</div> </div></div><div class='itemdecl' id='ctor-itemdecl:14'><div class='marginalizedparent'><a class='itemDeclLink' href='#ctor-itemdecl:14'>🔗</a></div><code class='itemdeclcode'>zoned_time<span class='parenthesis'>(</span>string_view name, <span class='keyword'>const</span> zoned_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> y<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='ctor-32'><div class='marginalizedparent'><a class='marginalized' href='#ctor-32'>32</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9957'>#</a></div><div id='ctor-32.sentence-1' class='sentence'><span class='textit'>Remarks:</span> 
This constructor does not participate in overload resolution unless
<span class='texttt'>zoned_&shy;time</span> is constructible from the return type of <span class='texttt'>traits<span class='operator'>:</span><span class='operator'>:</span>locate_&shy;zone<span class='parenthesis'>(</span>name<span class='parenthesis'>)</span></span> and <span class='texttt'>zoned_&shy;time</span><a class='hidden_link' href='#ctor-32.sentence-1'>.</a></div></div></div><div class='para' id='ctor-33'><div class='marginalizedparent'><a class='marginalized' href='#ctor-33'>33</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9962'>#</a></div><div id='ctor-33.sentence-1' class='sentence'><span class='textit'>Effects:</span> 
Equivalent to construction with <span class='texttt'><span class='curlybracket'>{</span>traits<span class='operator'>:</span><span class='operator'>:</span>locate_&shy;zone<span class='parenthesis'>(</span>name<span class='parenthesis'>)</span>, y<span class='curlybracket'>}</span></span><a class='hidden_link' href='#ctor-33.sentence-1'>.</a></div></div></div><div class='itemdecl' id='ctor-itemdecl:15'><div class='marginalizedparent'><a class='itemDeclLink' href='#ctor-itemdecl:15'>🔗</a></div><code class='itemdeclcode'>zoned_time<span class='parenthesis'>(</span>string_view name, <span class='keyword'>const</span> zoned_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> y, choose c<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='ctor-34'><div class='marginalizedparent'><a class='marginalized' href='#ctor-34'>34</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9972'>#</a></div><div id='ctor-34.sentence-1' class='sentence'><span class='textit'>Remarks:</span> 
This constructor does not participate in overload resolution unless
<span class='texttt'>zoned_&shy;time</span> is constructible from
the return type of <span class='texttt'>traits<span class='operator'>:</span><span class='operator'>:</span>locate_&shy;zone<span class='parenthesis'>(</span>name<span class='parenthesis'>)</span></span>, <span class='texttt'>zoned_&shy;time</span>, and <span class='texttt'>choose</span><a class='hidden_link' href='#ctor-34.sentence-1'>.</a></div></div></div><div class='para' id='ctor-35'><div class='marginalizedparent'><a class='marginalized' href='#ctor-35'>35</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9978'>#</a></div><div id='ctor-35.sentence-1' class='sentence'><span class='textit'>Effects:</span> 
Equivalent to construction with <span class='texttt'><span class='curlybracket'>{</span>traits<span class='operator'>:</span><span class='operator'>:</span>locate_&shy;zone<span class='parenthesis'>(</span>name<span class='parenthesis'>)</span>, y, c<span class='curlybracket'>}</span></span><a class='hidden_link' href='#ctor-35.sentence-1'>.</a></div></div></div><div class='para' id='ctor-36'><div class='marginalizedparent'><a class='marginalized' href='#ctor-36'>36</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9982'>#</a></div><div id='ctor-36.note-1' class='note'>[<span style='white-space:nowrap'> </span><a class='note_link' href='#ctor-36.note-1'><span class='textit'>Note</span></a><div class='noteBody'><span class='textit'>:</span> <div id='ctor-36.sentence-1' class='sentence'>The <span class='texttt'>choose</span> parameter has no effect<a class='hidden_link' href='#ctor-36.sentence-1'>.</a></div> —<span style='white-space:nowrap'> </span><i>end note</i></div><span style='white-space:nowrap'> </span>]</div> </div></div></div><div id='members' class='section'><h4 ><a class='secnum' href='#members' style='min-width:118pt'>26.10.7.3</a> Member functions <a class='abbr_ref' href='time.zone.zonedtime.members'>[time.zone.zonedtime.members]</a></h4><span class='indexparent'><a class='index' id='lib:operator=,zoned_time'></a></span><span class='indexparent'><a class='index' id='lib:zoned_time,operator='></a></span><div class='itemdecl' id='members-itemdecl:1'><div class='marginalizedparent'><a class='itemDeclLink' href='#members-itemdecl:1'>🔗</a></div><code class='itemdeclcode'>zoned_time<span class='operator'>&amp;</span> <span class='keyword'>operator</span><span class='operator'>=</span><span class='parenthesis'>(</span><span class='keyword'>const</span> sys_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> st<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='members-1'><div class='marginalizedparent'><a class='marginalized' href='#members-1'>1</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L9997'>#</a></div><div id='members-1.sentence-1' class='sentence'><span class='textit'>Effects:</span> 
After assignment, <span class='texttt'>get_&shy;sys_&shy;time<span class='parenthesis'>(</span><span class='parenthesis'>)</span> <span class='operator'>=</span><span class='operator'>=</span> st</span><a class='hidden_link' href='#members-1.sentence-1'>.</a></div> <div id='members-1.sentence-2' class='sentence'>This assignment has no effect on the return value of <span class='texttt'>get_&shy;time_&shy;zone<span class='parenthesis'>(</span><span class='parenthesis'>)</span></span><a class='hidden_link' href='#members-1.sentence-2'>.</a></div></div></div><div class='para' id='members-2'><div class='marginalizedparent'><a class='marginalized' href='#members-2'>2</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L10002'>#</a></div><div id='members-2.sentence-1' class='sentence'><span class='textit'>Returns:</span> <span class='texttt'><span class='operator'>*</span><span class='keyword'>this</span></span><a class='hidden_link' href='#members-2.sentence-1'>.</a></div></div></div><span class='indexparent'><a class='index' id='lib:operator=,zoned_time_'></a></span><span class='indexparent'><a class='index' id='lib:zoned_time,operator=_'></a></span><div class='itemdecl' id='members-itemdecl:2'><div class='marginalizedparent'><a class='itemDeclLink' href='#members-itemdecl:2'>🔗</a></div><code class='itemdeclcode'>zoned_time<span class='operator'>&amp;</span> <span class='keyword'>operator</span><span class='operator'>=</span><span class='parenthesis'>(</span><span class='keyword'>const</span> local_time<span class='anglebracket'>&lt;</span>Duration<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> lt<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='members-3'><div class='marginalizedparent'><a class='marginalized' href='#members-3'>3</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L10012'>#</a></div><div id='members-3.sentence-1' class='sentence'><span class='textit'>Effects:</span> 
After assignment, <span class='texttt'>get_&shy;local_&shy;time<span class='parenthesis'>(</span><span class='parenthesis'>)</span> <span class='operator'>=</span><span class='operator'>=</span> lt</span><a class='hidden_link' href='#members-3.sentence-1'>.</a></div> <div id='members-3.sentence-2' class='sentence'>This assignment has no effect on the return value of <span class='texttt'>get_&shy;time_&shy;zone<span class='parenthesis'>(</span><span class='parenthesis'>)</span></span><a class='hidden_link' href='#members-3.sentence-2'>.</a></div></div></div><div class='para' id='members-4'><div class='marginalizedparent'><a class='marginalized' href='#members-4'>4</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L10017'>#</a></div><div id='members-4.sentence-1' class='sentence'><span class='textit'>Returns:</span> <span class='texttt'><span class='operator'>*</span><span class='keyword'>this</span></span><a class='hidden_link' href='#members-4.sentence-1'>.</a></div></div></div><span class='indexparent'><a class='index' id='lib:operator_sys_time,zoned_time'></a></span><span class='indexparent'><a class='index' id='lib:zoned_time,operator_sys_time'></a></span><div class='itemdecl' id='members-itemdecl:3'><div class='marginalizedparent'><a class='itemDeclLink' href='#members-itemdecl:3'>🔗</a></div><code class='itemdeclcode'><span class='keyword'>operator</span> sys_time<span class='anglebracket'>&lt;</span>duration<span class='anglebracket'>&gt;</span><span class='parenthesis'>(</span><span class='parenthesis'>)</span> <span class='keyword'>const</span>;
</code></div><div class='itemdescr'></div><div class='para' id='members-5'><div class='marginalizedparent'><a class='marginalized' href='#members-5'>5</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L10027'>#</a></div><div id='members-5.sentence-1' class='sentence'><span class='textit'>Returns:</span> <span class='texttt'>get_&shy;sys_&shy;time<span class='parenthesis'>(</span><span class='parenthesis'>)</span></span><a class='hidden_link' href='#members-5.sentence-1'>.</a></div></div></div><span class='indexparent'><a class='index' id='lib:operator_local_time,zoned_time'></a></span><span class='indexparent'><a class='index' id='lib:zoned_time,operator_local_time'></a></span><div class='itemdecl' id='members-itemdecl:4'><div class='marginalizedparent'><a class='itemDeclLink' href='#members-itemdecl:4'>🔗</a></div><code class='itemdeclcode'><span class='keyword'>explicit</span> <span class='keyword'>operator</span> local_time<span class='anglebracket'>&lt;</span>duration<span class='anglebracket'>&gt;</span><span class='parenthesis'>(</span><span class='parenthesis'>)</span> <span class='keyword'>const</span>;
</code></div><div class='itemdescr'></div><div class='para' id='members-6'><div class='marginalizedparent'><a class='marginalized' href='#members-6'>6</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L10037'>#</a></div><div id='members-6.sentence-1' class='sentence'><span class='textit'>Returns:</span> <span class='texttt'>get_&shy;local_&shy;time<span class='parenthesis'>(</span><span class='parenthesis'>)</span></span><a class='hidden_link' href='#members-6.sentence-1'>.</a></div></div></div><span class='indexparent'><a class='index' id='lib:get_time_zone,zoned_time'></a></span><span class='indexparent'><a class='index' id='lib:zoned_time,get_time_zone'></a></span><div class='itemdecl' id='members-itemdecl:5'><div class='marginalizedparent'><a class='itemDeclLink' href='#members-itemdecl:5'>🔗</a></div><code class='itemdeclcode'>TimeZonePtr get_time_zone<span class='parenthesis'>(</span><span class='parenthesis'>)</span> <span class='keyword'>const</span>;
</code></div><div class='itemdescr'></div><div class='para' id='members-7'><div class='marginalizedparent'><a class='marginalized' href='#members-7'>7</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L10047'>#</a></div><div id='members-7.sentence-1' class='sentence'><span class='textit'>Returns:</span> <span class='texttt'>zone_&shy;</span><a class='hidden_link' href='#members-7.sentence-1'>.</a></div></div></div><span class='indexparent'><a class='index' id='lib:get_local_time,zoned_time'></a></span><span class='indexparent'><a class='index' id='lib:zoned_time,get_local_time'></a></span><div class='itemdecl' id='members-itemdecl:6'><div class='marginalizedparent'><a class='itemDeclLink' href='#members-itemdecl:6'>🔗</a></div><code class='itemdeclcode'>local_time<span class='anglebracket'>&lt;</span>duration<span class='anglebracket'>&gt;</span> get_local_time<span class='parenthesis'>(</span><span class='parenthesis'>)</span> <span class='keyword'>const</span>;
</code></div><div class='itemdescr'></div><div class='para' id='members-8'><div class='marginalizedparent'><a class='marginalized' href='#members-8'>8</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L10057'>#</a></div><div id='members-8.sentence-1' class='sentence'><span class='textit'>Returns:</span> <span class='texttt'>zone_&shy;<span class='operator'>-</span><span class='anglebracket'>&gt;</span>to_&shy;local<span class='parenthesis'>(</span>tp_&shy;<span class='parenthesis'>)</span></span><a class='hidden_link' href='#members-8.sentence-1'>.</a></div></div></div><span class='indexparent'><a class='index' id='lib:get_sys_time,zoned_time'></a></span><span class='indexparent'><a class='index' id='lib:zoned_time,get_sys_time'></a></span><div class='itemdecl' id='members-itemdecl:7'><div class='marginalizedparent'><a class='itemDeclLink' href='#members-itemdecl:7'>🔗</a></div><code class='itemdeclcode'>sys_time<span class='anglebracket'>&lt;</span>duration<span class='anglebracket'>&gt;</span> get_sys_time<span class='parenthesis'>(</span><span class='parenthesis'>)</span> <span class='keyword'>const</span>;
</code></div><div class='itemdescr'></div><div class='para' id='members-9'><div class='marginalizedparent'><a class='marginalized' href='#members-9'>9</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L10067'>#</a></div><div id='members-9.sentence-1' class='sentence'><span class='textit'>Returns:</span> <span class='texttt'>tp_&shy;</span><a class='hidden_link' href='#members-9.sentence-1'>.</a></div></div></div><span class='indexparent'><a class='index' id='lib:get_info,zoned_time'></a></span><span class='indexparent'><a class='index' id='lib:zoned_time,get_info'></a></span><div class='itemdecl' id='members-itemdecl:8'><div class='marginalizedparent'><a class='itemDeclLink' href='#members-itemdecl:8'>🔗</a></div><code class='itemdeclcode'>sys_info get_info<span class='parenthesis'>(</span><span class='parenthesis'>)</span> <span class='keyword'>const</span>;
</code></div><div class='itemdescr'></div><div class='para' id='members-10'><div class='marginalizedparent'><a class='marginalized' href='#members-10'>10</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L10077'>#</a></div><div id='members-10.sentence-1' class='sentence'><span class='textit'>Returns:</span> <span class='texttt'>zone_&shy;<span class='operator'>-</span><span class='anglebracket'>&gt;</span>get_&shy;info<span class='parenthesis'>(</span>tp_&shy;<span class='parenthesis'>)</span></span><a class='hidden_link' href='#members-10.sentence-1'>.</a></div></div></div></div><div id='nonmembers' class='section'><h4 ><a class='secnum' href='#nonmembers' style='min-width:118pt'>26.10.7.4</a> Non-member functions <a class='abbr_ref' href='time.zone.zonedtime.nonmembers'>[time.zone.zonedtime.nonmembers]</a></h4><span class='indexparent'><a class='index' id='lib:operator==,zoned_time'></a></span><span class='indexparent'><a class='index' id='lib:zoned_time,operator=='></a></span><div class='itemdecl' id='nonmembers-itemdecl:1'><div class='marginalizedparent'><a class='itemDeclLink' href='#nonmembers-itemdecl:1'>🔗</a></div><code class='itemdeclcode'><span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> Duration1, <span class='keyword'>class</span> Duration2, <span class='keyword'>class</span> TimeZonePtr<span class='anglebracket'>&gt;</span>
  <span class='keyword'>bool</span> <span class='keyword'>operator</span><span class='operator'>=</span><span class='operator'>=</span><span class='parenthesis'>(</span><span class='keyword'>const</span> zoned_time<span class='anglebracket'>&lt;</span>Duration1, TimeZonePtr<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> x,
                  <span class='keyword'>const</span> zoned_time<span class='anglebracket'>&lt;</span>Duration2, TimeZonePtr<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> y<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='nonmembers-1'><div class='marginalizedparent'><a class='marginalized' href='#nonmembers-1'>1</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L10091'>#</a></div><div id='nonmembers-1.sentence-1' class='sentence'><span class='textit'>Returns:</span> <span class='texttt'>x<span class='operator'>.</span>zone_&shy; <span class='operator'>=</span><span class='operator'>=</span> y<span class='operator'>.</span>zone_&shy; <span class='operator'>&amp;</span><span class='operator'>&amp;</span> x<span class='operator'>.</span>tp_&shy; <span class='operator'>=</span><span class='operator'>=</span> y<span class='operator'>.</span>tp_&shy;</span><a class='hidden_link' href='#nonmembers-1.sentence-1'>.</a></div></div></div><span class='indexparent'><a class='index' id='lib:operator!=,zoned_time'></a></span><span class='indexparent'><a class='index' id='lib:zoned_time,operator!='></a></span><div class='itemdecl' id='nonmembers-itemdecl:2'><div class='marginalizedparent'><a class='itemDeclLink' href='#nonmembers-itemdecl:2'>🔗</a></div><code class='itemdeclcode'><span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> Duration1, <span class='keyword'>class</span> Duration2, <span class='keyword'>class</span> TimeZonePtr<span class='anglebracket'>&gt;</span>
  <span class='keyword'>bool</span> <span class='keyword'>operator</span><span class='operator'>!</span><span class='operator'>=</span><span class='parenthesis'>(</span><span class='keyword'>const</span> zoned_time<span class='anglebracket'>&lt;</span>Duration1, TimeZonePtr<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> x,
                  <span class='keyword'>const</span> zoned_time<span class='anglebracket'>&lt;</span>Duration2, TimeZonePtr<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> y<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='nonmembers-2'><div class='marginalizedparent'><a class='marginalized' href='#nonmembers-2'>2</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L10103'>#</a></div><div id='nonmembers-2.sentence-1' class='sentence'><span class='textit'>Returns:</span> <span class='texttt'><span class='operator'>!</span><span class='parenthesis'>(</span>x <span class='operator'>=</span><span class='operator'>=</span> y<span class='parenthesis'>)</span></span><a class='hidden_link' href='#nonmembers-2.sentence-1'>.</a></div></div></div><span class='indexparent'><a class='index' id='lib:operator<<,zoned_time'></a></span><span class='indexparent'><a class='index' id='lib:zoned_time,operator<<'></a></span><div class='itemdecl' id='nonmembers-itemdecl:3'><div class='marginalizedparent'><a class='itemDeclLink' href='#nonmembers-itemdecl:3'>🔗</a></div><code class='itemdeclcode'><span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> charT, <span class='keyword'>class</span> traits, <span class='keyword'>class</span> Duration, <span class='keyword'>class</span> TimeZonePtr<span class='anglebracket'>&gt;</span>
  basic_ostream<span class='anglebracket'>&lt;</span>charT, traits<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span>
    <span class='keyword'>operator</span><span class='anglebracket'>&lt;</span><span class='anglebracket'>&lt;</span><span class='parenthesis'>(</span>basic_ostream<span class='anglebracket'>&lt;</span>charT, traits<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> os,
               <span class='keyword'>const</span> zoned_time<span class='anglebracket'>&lt;</span>Duration, TimeZonePtr<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> t<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='nonmembers-3'><div class='marginalizedparent'><a class='marginalized' href='#nonmembers-3'>3</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L10116'>#</a></div><div id='nonmembers-3.sentence-1' class='sentence'><span class='textit'>Effects:</span> 
Streams
the value returned from <span class='texttt'>t<span class='operator'>.</span>get_&shy;local_&shy;time<span class='parenthesis'>(</span><span class='parenthesis'>)</span></span>
to <span class='texttt'>os</span>
using the format <span class='texttt'><span class='literal'>"%F %T %Z"</span></span><a class='hidden_link' href='#nonmembers-3.sentence-1'>.</a></div></div></div><div class='para' id='nonmembers-4'><div class='marginalizedparent'><a class='marginalized' href='#nonmembers-4'>4</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L10123'>#</a></div><div id='nonmembers-4.sentence-1' class='sentence'><span class='textit'>Returns:</span> <span class='texttt'>os</span><a class='hidden_link' href='#nonmembers-4.sentence-1'>.</a></div></div></div><span class='indexparent'><a class='index' id='lib:to_stream,zoned_time'></a></span><span class='indexparent'><a class='index' id='lib:zoned_time,to_stream'></a></span><div class='itemdecl' id='nonmembers-itemdecl:4'><div class='marginalizedparent'><a class='itemDeclLink' href='#nonmembers-itemdecl:4'>🔗</a></div><code class='itemdeclcode'><span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>class</span> charT, <span class='keyword'>class</span> traits, <span class='keyword'>class</span> Duration, <span class='keyword'>class</span> TimeZonePtr<span class='anglebracket'>&gt;</span>
  basic_ostream<span class='anglebracket'>&lt;</span>charT, traits<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span>
    to_stream<span class='parenthesis'>(</span>basic_ostream<span class='anglebracket'>&lt;</span>charT, traits<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> os, <span class='keyword'>const</span> charT<span class='operator'>*</span> fmt,
              <span class='keyword'>const</span> zoned_time<span class='anglebracket'>&lt;</span>Duration, TimeZonePtr<span class='anglebracket'>&gt;</span><span class='operator'>&amp;</span> tp<span class='parenthesis'>)</span>;
</code></div><div class='itemdescr'></div><div class='para' id='nonmembers-5'><div class='marginalizedparent'><a class='marginalized' href='#nonmembers-5'>5</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L10136'>#</a></div><div id='nonmembers-5.sentence-1' class='sentence'><span class='textit'>Effects:</span> 
First obtains a <span class='texttt'>sys_&shy;info</span> via <span class='texttt'>tp<span class='operator'>.</span>get_&shy;info<span class='parenthesis'>(</span><span class='parenthesis'>)</span></span>
which for exposition purposes will be referred to as <span class='texttt'>info</span><a class='hidden_link' href='#nonmembers-5.sentence-1'>.</a></div> <div id='nonmembers-5.sentence-2' class='sentence'>Then calls <span class='texttt'>to_&shy;stream<span class='parenthesis'>(</span>os, fmt, tp<span class='operator'>.</span>get_&shy;local_&shy;time<span class='parenthesis'>(</span><span class='parenthesis'>)</span>, <span class='operator'>&amp;</span>info<span class='operator'>.</span>abbrev, <span class='operator'>&amp;</span>info<span class='operator'>.</span>offset<span class='parenthesis'>)</span></span><a class='hidden_link' href='#nonmembers-5.sentence-2'>.</a></div></div></div><div class='para' id='nonmembers-6'><div class='marginalizedparent'><a class='marginalized' href='#nonmembers-6'>6</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/Eelis/draft73ca144c7e48612fe72742f9f6a5ec9ad6a934d2/source/time.tex#L10142'>#</a></div><div id='nonmembers-6.sentence-1' class='sentence'><span class='textit'>Returns:</span> <span class='texttt'>os</span><a class='hidden_link' href='#nonmembers-6.sentence-1'>.</a></div></div></div></div></div></body></html>