http://git-wip-us.apache.org/repos/asf/mesos-site/blob/973110bf/content/api/latest/c++/namespacemembers_vars_0x77.html ---------------------------------------------------------------------- diff --git a/content/api/latest/c++/namespacemembers_vars_0x77.html b/content/api/latest/c++/namespacemembers_vars_0x77.html index 5bf8504..137e1e3 100644 --- a/content/api/latest/c++/namespacemembers_vars_0x77.html +++ b/content/api/latest/c++/namespacemembers_vars_0x77.html @@ -106,12 +106,12 @@ <li>WINDOWS_PATH_SEPARATOR : <a class="el" href="namespaceos.html#ae86289c0463a69de1a4aa97ba9203e57">os</a> </li> -<li>WRITE -: <a class="el" href="namespaceprocess_1_1io.html#ab005316d71b45c5b05de0a6234c6f8fc">process::io</a> -</li> <li>write : <a class="el" href="namespacemesos_1_1internal_1_1log_1_1protocol.html#a66ff2d5af4db53227f787281c0765d8d">mesos::internal::log::protocol</a> </li> +<li>WRITE +: <a class="el" href="namespaceprocess_1_1io.html#ab005316d71b45c5b05de0a6234c6f8fc">process::io</a> +</li> </ul> </div><!-- contents --> <!-- start footer part -->
http://git-wip-us.apache.org/repos/asf/mesos-site/blob/973110bf/content/api/latest/c++/namespaceos.html ---------------------------------------------------------------------- diff --git a/content/api/latest/c++/namespaceos.html b/content/api/latest/c++/namespaceos.html index 2176d2e..66bf276 100644 --- a/content/api/latest/c++/namespaceos.html +++ b/content/api/latest/c++/namespaceos.html @@ -224,6 +224,8 @@ std::string > </td><td class="memItemRight" valign="bottom"><a class="el <tr class="separator:acae67fc8bd809c609bf1ffb281d921c6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa3debc8caa054e7a0a3bfe4aa42aae07"><td class="memItemLeft" align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceos.html#aa3debc8caa054e7a0a3bfe4aa42aae07">temp</a> ()</td></tr> <tr class="separator:aa3debc8caa054e7a0a3bfe4aa42aae07"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a8d651d36e878b4284b6ab739be15bf16"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classOption.html">Option</a>< std::string > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceos.html#a8d651d36e878b4284b6ab739be15bf16">which</a> (const std::string &command, const <a class="el" href="classOption.html">Option</a>< std::string > &_path=<a class="el" href="structNone.html">None</a>())</td></tr> +<tr class="separator:a8d651d36e878b4284b6ab739be15bf16"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa5f9db540e463927feff9b1e20de9ded"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTry.html">Try</a>< <a class="el" href="structNothing.html">Nothing</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceos.html#aa5f9db540e463927feff9b1e20de9ded">setxattr</a> (const std::string &path, const std::string &name, const std::string &value, int <a class="el" href="decoder_8hpp.html#abb0829cce9dd20a40ae0d86890ae85c6">flags</a>)</td></tr> <tr class="separator:aa5f9db540e463927feff9b1e20de9ded"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa425b9a1dc9aff1039cb644a15388f18"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTry.html">Try</a>< std::string > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceos.html#aa425b9a1dc9aff1039cb644a15388f18">getxattr</a> (const std::string &path, const std::string &name)</td></tr> @@ -357,8 +359,6 @@ std::string > </td><td class="memItemRight" valign="bottom"><a class="el <tr class="separator:a30f836264363d7d7f0578fd0fb98ee36"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a079aa1b108c567735620a14ea2a2e506"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTry.html">Try</a>< <a class="el" href="structVersion.html">Version</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceos.html#a079aa1b108c567735620a14ea2a2e506">release</a> ()</td></tr> <tr class="separator:a079aa1b108c567735620a14ea2a2e506"><td class="memSeparator" colspan="2"> </td></tr> -<tr class="memitem:acdff0f297e3166c5a2ad4766f6ef9e9b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classOption.html">Option</a>< std::string > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceos.html#acdff0f297e3166c5a2ad4766f6ef9e9b">which</a> (const std::string &command, const <a class="el" href="classOption.html">Option</a>< std::string > &_path=<a class="el" href="structNone.html">None</a>())</td></tr> -<tr class="separator:acdff0f297e3166c5a2ad4766f6ef9e9b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a547f04b42e472b2ff0070897010fac78"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTry.html">Try</a>< std::string > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceos.html#a547f04b42e472b2ff0070897010fac78">var</a> ()</td></tr> <tr class="separator:a547f04b42e472b2ff0070897010fac78"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a54f3320a4d6f88c14f80f5247aa879b9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTry.html">Try</a>< <a class="el" href="structNothing.html">Nothing</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceos.html#a54f3320a4d6f88c14f80f5247aa879b9">dup2</a> (int oldFd, int newFd)</td></tr> @@ -4741,7 +4741,7 @@ template<typename T > </div> </div> </div> -<a class="anchor" id="acdff0f297e3166c5a2ad4766f6ef9e9b"></a> +<a class="anchor" id="a8d651d36e878b4284b6ab739be15bf16"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> @@ -4749,7 +4749,7 @@ template<typename T > </div> <td class="mlabels-left"> <table class="memname"> <tr> - <td class="memname"><a class="el" href="classOption.html">Option</a><std::string> os::which </td> + <td class="memname"><a class="el" href="classOption.html">Option</a>< std::string > os::which </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>command</em>, </td> http://git-wip-us.apache.org/repos/asf/mesos-site/blob/973110bf/content/api/latest/c++/posix_2os_8hpp.html ---------------------------------------------------------------------- diff --git a/content/api/latest/c++/posix_2os_8hpp.html b/content/api/latest/c++/posix_2os_8hpp.html index 55d794a..d0ac037 100644 --- a/content/api/latest/c++/posix_2os_8hpp.html +++ b/content/api/latest/c++/posix_2os_8hpp.html @@ -139,8 +139,6 @@ Functions</h2></td></tr> <tr class="separator:a30f836264363d7d7f0578fd0fb98ee36"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a079aa1b108c567735620a14ea2a2e506"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTry.html">Try</a>< <a class="el" href="structVersion.html">Version</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceos.html#a079aa1b108c567735620a14ea2a2e506">os::release</a> ()</td></tr> <tr class="separator:a079aa1b108c567735620a14ea2a2e506"><td class="memSeparator" colspan="2"> </td></tr> -<tr class="memitem:acdff0f297e3166c5a2ad4766f6ef9e9b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classOption.html">Option</a>< std::string > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceos.html#acdff0f297e3166c5a2ad4766f6ef9e9b">os::which</a> (const std::string &command, const <a class="el" href="classOption.html">Option</a>< std::string > &_path=<a class="el" href="structNone.html">None</a>())</td></tr> -<tr class="separator:acdff0f297e3166c5a2ad4766f6ef9e9b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a547f04b42e472b2ff0070897010fac78"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTry.html">Try</a>< std::string > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceos.html#a547f04b42e472b2ff0070897010fac78">os::var</a> ()</td></tr> <tr class="separator:a547f04b42e472b2ff0070897010fac78"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a54f3320a4d6f88c14f80f5247aa879b9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTry.html">Try</a>< <a class="el" href="structNothing.html">Nothing</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceos.html#a54f3320a4d6f88c14f80f5247aa879b9">os::dup2</a> (int oldFd, int newFd)</td></tr> http://git-wip-us.apache.org/repos/asf/mesos-site/blob/973110bf/content/api/latest/c++/posix_2os_8hpp_source.html ---------------------------------------------------------------------- diff --git a/content/api/latest/c++/posix_2os_8hpp_source.html b/content/api/latest/c++/posix_2os_8hpp_source.html index 8b5a98f..675cea7 100644 --- a/content/api/latest/c++/posix_2os_8hpp_source.html +++ b/content/api/latest/c++/posix_2os_8hpp_source.html @@ -457,123 +457,83 @@ <div class="line"><a name="l00403"></a><span class="lineno"> 403</span> }</div> <div class="line"><a name="l00404"></a><span class="lineno"> 404</span> </div> <div class="line"><a name="l00405"></a><span class="lineno"> 405</span> </div> -<div class="line"><a name="l00406"></a><span class="lineno"><a class="line" href="namespaceos.html#acdff0f297e3166c5a2ad4766f6ef9e9b"> 406</a></span> <span class="keyword">inline</span> <a class="code" href="classOption.html">Option<std::string></a> <a class="code" href="namespaceos.html#acdff0f297e3166c5a2ad4766f6ef9e9b">which</a>(</div> -<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>  <span class="keyword">const</span> std::string& command,</div> -<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>  <span class="keyword">const</span> <a class="code" href="classOption.html">Option<std::string></a>& _path = <a class="code" href="structNone.html">None</a>())</div> -<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> {</div> -<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>  <a class="code" href="classOption.html">Option<std::string></a> path = _path;</div> +<div class="line"><a name="l00406"></a><span class="lineno"><a class="line" href="namespaceos.html#a547f04b42e472b2ff0070897010fac78"> 406</a></span> <span class="keyword">inline</span> <a class="code" href="classTry.html">Try<std::string></a> <a class="code" href="namespaceos.html#a547f04b42e472b2ff0070897010fac78">var</a>()</div> +<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> {</div> +<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>  <span class="keywordflow">return</span> <span class="stringliteral">"/var"</span>;</div> +<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> }</div> +<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> </div> <div class="line"><a name="l00411"></a><span class="lineno"> 411</span> </div> -<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>  <span class="keywordflow">if</span> (path.<a class="code" href="classOption.html#a06eab791122ebc1f8af4ad310e5e7d7e">isNone</a>()) {</div> -<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>  path = <a class="code" href="namespaceos.html#add69634db977768c56f0367b4bb03cd5">getenv</a>(<span class="stringliteral">"PATH"</span>);</div> -<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> </div> -<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>  <span class="keywordflow">if</span> (path.<a class="code" href="classOption.html#a06eab791122ebc1f8af4ad310e5e7d7e">isNone</a>()) {</div> -<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>  <span class="keywordflow">return</span> <a class="code" href="structNone.html">None</a>();</div> -<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>  }</div> -<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>  }</div> -<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> </div> -<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>  std::vector<std::string> tokens = <a class="code" href="namespacestrings.html#afffe11c8ecce961981653358520d6a04">strings::tokenize</a>(path.<a class="code" href="classOption.html#a21358442c0fac1cc978a67a9a9089a79">get</a>(), <span class="stringliteral">":"</span>);</div> -<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>  <span class="keywordflow">foreach</span> (<span class="keyword">const</span> std::string& token, tokens) {</div> -<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>  <span class="keyword">const</span> std::string commandPath = <a class="code" href="namespacepath.html#aa86b16a2171cec90bb3337930513ef0f">path::join</a>(token, command);</div> -<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>  <span class="keywordflow">if</span> (!<a class="code" href="namespaceos.html#a69b3969276ffa4cb698b9431ee43bd7c">os::exists</a>(commandPath)) {</div> -<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>  <span class="keywordflow">continue</span>;</div> -<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>  }</div> -<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> </div> -<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>  <a class="code" href="classTry.html">Try<os::Permissions></a> <a class="code" href="namespaceos.html#a3fc3402e6d83c2e2f1dc680d77489a29">permissions</a> = <a class="code" href="namespaceos.html#a3fc3402e6d83c2e2f1dc680d77489a29">os::permissions</a>(commandPath);</div> -<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>  <span class="keywordflow">if</span> (permissions.<a class="code" href="classTry.html#a0b98f95163b8a38daafd1651b043a276">isError</a>()) {</div> -<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>  <span class="keywordflow">continue</span>;</div> -<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>  }</div> +<div class="line"><a name="l00412"></a><span class="lineno"><a class="line" href="namespaceos.html#a54f3320a4d6f88c14f80f5247aa879b9"> 412</a></span> <span class="keyword">inline</span> <a class="code" href="classTry.html">Try<Nothing></a> <a class="code" href="namespaceos.html#a54f3320a4d6f88c14f80f5247aa879b9">dup2</a>(<span class="keywordtype">int</span> oldFd, <span class="keywordtype">int</span> newFd)</div> +<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> {</div> +<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>  <span class="keywordflow">while</span> (::<a class="code" href="namespaceos.html#a54f3320a4d6f88c14f80f5247aa879b9">dup2</a>(oldFd, newFd) == -1) {</div> +<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>  <span class="keywordflow">if</span> (errno == EINTR) {</div> +<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>  <span class="keywordflow">continue</span>;</div> +<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>  } <span class="keywordflow">else</span> {</div> +<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>  <span class="keywordflow">return</span> <a class="code" href="classErrnoError.html">ErrnoError</a>();</div> +<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>  }</div> +<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>  }</div> +<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>  <span class="keywordflow">return</span> <a class="code" href="structNothing.html">Nothing</a>();</div> +<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> }</div> +<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> </div> +<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> </div> +<div class="line"><a name="l00425"></a><span class="lineno"><a class="line" href="namespaceos.html#a07a766e0355221b949e5fe6fdfca63f2"> 425</a></span> <span class="keyword">inline</span> <a class="code" href="classTry.html">Try<std::string></a> <a class="code" href="namespaceos.html#a07a766e0355221b949e5fe6fdfca63f2">ptsname</a>(<span class="keywordtype">int</span> master)</div> +<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> {</div> +<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>  <span class="comment">// 'ptsname' is not thread safe. Therefore, we use mutex here to</span></div> +<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>  <span class="comment">// make this method thread safe.</span></div> +<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>  <span class="comment">// TODO(jieyu): Consider using ptsname_r for linux.</span></div> +<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>  <span class="keyword">static</span> std::mutex* mutex = <span class="keyword">new</span> std::mutex;</div> <div class="line"><a name="l00431"></a><span class="lineno"> 431</span> </div> -<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>  <span class="keywordflow">if</span> (!permissions.<a class="code" href="classTry.html#a7be0768038e0628632492edf6cc1515a">get</a>().<a class="code" href="structos_1_1Permissions.html#a8d51e62d281d015ba6a4ee38c0dceb9a">owner</a>.<a class="code" href="structos_1_1Permissions.html#afe509a1398f95df7d2bda5fbfaa91a44">x</a> &&</div> -<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>  !permissions.<a class="code" href="classTry.html#a7be0768038e0628632492edf6cc1515a">get</a>().<a class="code" href="structos_1_1Permissions.html#aff088e7e48d02dea27b19d0983d49b69">group</a>.<a class="code" href="structos_1_1Permissions.html#afe509a1398f95df7d2bda5fbfaa91a44">x</a> &&</div> -<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>  !permissions.<a class="code" href="classTry.html#a7be0768038e0628632492edf6cc1515a">get</a>().<a class="code" href="structos_1_1Permissions.html#ae14ff3a707c064967e132d47a5a116ff">others</a>.<a class="code" href="structos_1_1Permissions.html#afe509a1398f95df7d2bda5fbfaa91a44">x</a>) {</div> -<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>  <span class="keywordflow">continue</span>;</div> +<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>  <span class="keyword">synchronized</span> (mutex) {</div> +<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>  <span class="keyword">const</span> <span class="keywordtype">char</span>* slavePath = <a class="code" href="namespaceos.html#a07a766e0355221b949e5fe6fdfca63f2">::ptsname</a>(master);</div> +<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>  <span class="keywordflow">if</span> (slavePath == <span class="keyword">nullptr</span>) {</div> +<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>  <span class="keywordflow">return</span> <a class="code" href="classErrnoError.html">ErrnoError</a>();</div> <div class="line"><a name="l00436"></a><span class="lineno"> 436</span>  }</div> -<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> </div> -<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>  <span class="keywordflow">return</span> commandPath;</div> -<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>  }</div> +<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>  <span class="keywordflow">return</span> slavePath;</div> +<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>  }</div> +<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> }</div> <div class="line"><a name="l00440"></a><span class="lineno"> 440</span> </div> -<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>  <span class="keywordflow">return</span> <a class="code" href="structNone.html">None</a>();</div> -<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> }</div> -<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> </div> -<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> </div> -<div class="line"><a name="l00445"></a><span class="lineno"><a class="line" href="namespaceos.html#a547f04b42e472b2ff0070897010fac78"> 445</a></span> <span class="keyword">inline</span> <a class="code" href="classTry.html">Try<std::string></a> <a class="code" href="namespaceos.html#a547f04b42e472b2ff0070897010fac78">var</a>()</div> -<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> {</div> -<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>  <span class="keywordflow">return</span> <span class="stringliteral">"/var"</span>;</div> -<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> }</div> -<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> </div> +<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> </div> +<div class="line"><a name="l00442"></a><span class="lineno"><a class="line" href="namespaceos.html#a2cc6177f60b8bd36990aab876a3c3c3f"> 442</a></span> <span class="keyword">inline</span> <a class="code" href="classTry.html">Try<Nothing></a> <a class="code" href="namespaceos.html#a2cc6177f60b8bd36990aab876a3c3c3f">setctty</a>(<span class="keywordtype">int</span> fd)</div> +<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> {</div> +<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>  <span class="keywordflow">if</span> (ioctl(fd, TIOCSCTTY, <span class="keyword">nullptr</span>) == -1) {</div> +<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>  <span class="keywordflow">return</span> <a class="code" href="classErrnoError.html">ErrnoError</a>();</div> +<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>  }</div> +<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> </div> +<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>  <span class="keywordflow">return</span> <a class="code" href="structNothing.html">Nothing</a>();</div> +<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> }</div> <div class="line"><a name="l00450"></a><span class="lineno"> 450</span> </div> -<div class="line"><a name="l00451"></a><span class="lineno"><a class="line" href="namespaceos.html#a54f3320a4d6f88c14f80f5247aa879b9"> 451</a></span> <span class="keyword">inline</span> <a class="code" href="classTry.html">Try<Nothing></a> <a class="code" href="namespaceos.html#a54f3320a4d6f88c14f80f5247aa879b9">dup2</a>(<span class="keywordtype">int</span> oldFd, <span class="keywordtype">int</span> newFd)</div> -<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> {</div> -<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>  <span class="keywordflow">while</span> (::<a class="code" href="namespaceos.html#a54f3320a4d6f88c14f80f5247aa879b9">dup2</a>(oldFd, newFd) == -1) {</div> -<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>  <span class="keywordflow">if</span> (errno == EINTR) {</div> -<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>  <span class="keywordflow">continue</span>;</div> -<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>  } <span class="keywordflow">else</span> {</div> -<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>  <span class="keywordflow">return</span> <a class="code" href="classErrnoError.html">ErrnoError</a>();</div> -<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>  }</div> -<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>  }</div> -<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>  <span class="keywordflow">return</span> <a class="code" href="structNothing.html">Nothing</a>();</div> -<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> }</div> +<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> </div> +<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <span class="comment">// Update the window size for</span></div> +<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="comment">// the terminal represented by fd.</span></div> +<div class="line"><a name="l00454"></a><span class="lineno"><a class="line" href="namespaceos.html#a788e763662cf01a30bcd06baa95332bb"> 454</a></span> <span class="keyword">inline</span> <a class="code" href="classTry.html">Try<Nothing></a> <a class="code" href="namespaceos.html#a788e763662cf01a30bcd06baa95332bb">setWindowSize</a>(</div> +<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>  <span class="keywordtype">int</span> fd,</div> +<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> rows,</div> +<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> columns)</div> +<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> {</div> +<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>  <span class="keyword">struct </span>winsize winsize;</div> +<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>  winsize.ws_row = rows;</div> +<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>  winsize.ws_col = columns;</div> <div class="line"><a name="l00462"></a><span class="lineno"> 462</span> </div> -<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> </div> -<div class="line"><a name="l00464"></a><span class="lineno"><a class="line" href="namespaceos.html#a07a766e0355221b949e5fe6fdfca63f2"> 464</a></span> <span class="keyword">inline</span> <a class="code" href="classTry.html">Try<std::string></a> <a class="code" href="namespaceos.html#a07a766e0355221b949e5fe6fdfca63f2">ptsname</a>(<span class="keywordtype">int</span> master)</div> -<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> {</div> -<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>  <span class="comment">// 'ptsname' is not thread safe. Therefore, we use mutex here to</span></div> -<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>  <span class="comment">// make this method thread safe.</span></div> -<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>  <span class="comment">// TODO(jieyu): Consider using ptsname_r for linux.</span></div> -<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>  <span class="keyword">static</span> std::mutex* mutex = <span class="keyword">new</span> std::mutex;</div> +<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>  <span class="keywordflow">if</span> (ioctl(fd, TIOCSWINSZ, &winsize) != 0) {</div> +<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>  <span class="keywordflow">return</span> <a class="code" href="classErrnoError.html">ErrnoError</a>();</div> +<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>  }</div> +<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> </div> +<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>  <span class="keywordflow">return</span> <a class="code" href="structNothing.html">Nothing</a>();</div> +<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> }</div> +<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> </div> <div class="line"><a name="l00470"></a><span class="lineno"> 470</span> </div> -<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>  <span class="keyword">synchronized</span> (mutex) {</div> -<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>  <span class="keyword">const</span> <span class="keywordtype">char</span>* slavePath = <a class="code" href="namespaceos.html#a07a766e0355221b949e5fe6fdfca63f2">::ptsname</a>(master);</div> -<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>  <span class="keywordflow">if</span> (slavePath == <span class="keyword">nullptr</span>) {</div> -<div class="line"><a name="l00474"></a><span class="lineno"> 474</span>  <span class="keywordflow">return</span> <a class="code" href="classErrnoError.html">ErrnoError</a>();</div> -<div class="line"><a name="l00475"></a><span class="lineno"> 475</span>  }</div> -<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>  <span class="keywordflow">return</span> slavePath;</div> -<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>  }</div> -<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> }</div> +<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="comment">// Returns a host-specific default for the `PATH` environment variable, based</span></div> +<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="comment">// on the configuration of the host.</span></div> +<div class="line"><a name="l00473"></a><span class="lineno"><a class="line" href="namespaceos.html#a05476e646f895fd2f27f0e449f86ff63"> 473</a></span> <span class="keyword">inline</span> std::string <a class="code" href="namespaceos.html#a05476e646f895fd2f27f0e449f86ff63">host_default_path</a>()</div> +<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> {</div> +<div class="line"><a name="l00475"></a><span class="lineno"> 475</span>  <span class="keywordflow">return</span> <span class="stringliteral">"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"</span>;</div> +<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> }</div> +<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> </div> +<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> } <span class="comment">// namespace os {</span></div> <div class="line"><a name="l00479"></a><span class="lineno"> 479</span> </div> -<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> </div> -<div class="line"><a name="l00481"></a><span class="lineno"><a class="line" href="namespaceos.html#a2cc6177f60b8bd36990aab876a3c3c3f"> 481</a></span> <span class="keyword">inline</span> <a class="code" href="classTry.html">Try<Nothing></a> <a class="code" href="namespaceos.html#a2cc6177f60b8bd36990aab876a3c3c3f">setctty</a>(<span class="keywordtype">int</span> fd)</div> -<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> {</div> -<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>  <span class="keywordflow">if</span> (ioctl(fd, TIOCSCTTY, <span class="keyword">nullptr</span>) == -1) {</div> -<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>  <span class="keywordflow">return</span> <a class="code" href="classErrnoError.html">ErrnoError</a>();</div> -<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>  }</div> -<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> </div> -<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>  <span class="keywordflow">return</span> <a class="code" href="structNothing.html">Nothing</a>();</div> -<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> }</div> -<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> </div> -<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> </div> -<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <span class="comment">// Update the window size for</span></div> -<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="comment">// the terminal represented by fd.</span></div> -<div class="line"><a name="l00493"></a><span class="lineno"><a class="line" href="namespaceos.html#a788e763662cf01a30bcd06baa95332bb"> 493</a></span> <span class="keyword">inline</span> <a class="code" href="classTry.html">Try<Nothing></a> <a class="code" href="namespaceos.html#a788e763662cf01a30bcd06baa95332bb">setWindowSize</a>(</div> -<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>  <span class="keywordtype">int</span> fd,</div> -<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> rows,</div> -<div class="line"><a name="l00496"></a><span class="lineno"> 496</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> columns)</div> -<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> {</div> -<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>  <span class="keyword">struct </span>winsize winsize;</div> -<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>  winsize.ws_row = rows;</div> -<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>  winsize.ws_col = columns;</div> -<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> </div> -<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>  <span class="keywordflow">if</span> (ioctl(fd, TIOCSWINSZ, &winsize) != 0) {</div> -<div class="line"><a name="l00503"></a><span class="lineno"> 503</span>  <span class="keywordflow">return</span> <a class="code" href="classErrnoError.html">ErrnoError</a>();</div> -<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>  }</div> -<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> </div> -<div class="line"><a name="l00506"></a><span class="lineno"> 506</span>  <span class="keywordflow">return</span> <a class="code" href="structNothing.html">Nothing</a>();</div> -<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> }</div> -<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> </div> -<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> </div> -<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <span class="comment">// Returns a host-specific default for the `PATH` environment variable, based</span></div> -<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> <span class="comment">// on the configuration of the host.</span></div> -<div class="line"><a name="l00512"></a><span class="lineno"><a class="line" href="namespaceos.html#a05476e646f895fd2f27f0e449f86ff63"> 512</a></span> <span class="keyword">inline</span> std::string <a class="code" href="namespaceos.html#a05476e646f895fd2f27f0e449f86ff63">host_default_path</a>()</div> -<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> {</div> -<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>  <span class="keywordflow">return</span> <span class="stringliteral">"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"</span>;</div> -<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> }</div> -<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> </div> -<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> } <span class="comment">// namespace os {</span></div> -<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> </div> -<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> <span class="preprocessor">#endif // __STOUT_POSIX_OS_HPP__</span></div> -<div class="ttc" id="namespaceos_html_a54f3320a4d6f88c14f80f5247aa879b9"><div class="ttname"><a href="namespaceos.html#a54f3320a4d6f88c14f80f5247aa879b9">os::dup2</a></div><div class="ttdeci">Try< Nothing > dup2(int oldFd, int newFd)</div><div class="ttdef"><b>Definition:</b> os.hpp:451</div></div> +<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <span class="preprocessor">#endif // __STOUT_POSIX_OS_HPP__</span></div> +<div class="ttc" id="namespaceos_html_a54f3320a4d6f88c14f80f5247aa879b9"><div class="ttname"><a href="namespaceos.html#a54f3320a4d6f88c14f80f5247aa879b9">os::dup2</a></div><div class="ttdeci">Try< Nothing > dup2(int oldFd, int newFd)</div><div class="ttdef"><b>Definition:</b> os.hpp:412</div></div> <div class="ttc" id="synchronized_8hpp_html"><div class="ttname"><a href="synchronized_8hpp.html">synchronized.hpp</a></div></div> -<div class="ttc" id="namespaceos_html_a69b3969276ffa4cb698b9431ee43bd7c"><div class="ttname"><a href="namespaceos.html#a69b3969276ffa4cb698b9431ee43bd7c">os::exists</a></div><div class="ttdeci">bool exists(const std::string &path)</div><div class="ttdef"><b>Definition:</b> exists.hpp:26</div></div> <div class="ttc" id="rename_8hpp_html"><div class="ttname"><a href="rename_8hpp.html">rename.hpp</a></div></div> <div class="ttc" id="find_8hpp_html"><div class="ttname"><a href="find_8hpp.html">find.hpp</a></div></div> <div class="ttc" id="structNothing_html"><div class="ttname"><a href="structNothing.html">Nothing</a></div><div class="ttdef"><b>Definition:</b> nothing.hpp:16</div></div> @@ -585,7 +545,6 @@ <div class="ttc" id="namespaceos_html_ab2b826c68a25af9e9ef47c570c36e137"><div class="ttname"><a href="namespaceos.html#ab2b826c68a25af9e9ef47c570c36e137">os::sleep</a></div><div class="ttdeci">Try< Nothing > sleep(const Duration &duration)</div><div class="ttdef"><b>Definition:</b> os.hpp:218</div></div> <div class="ttc" id="structos_1_1Process_html_a41f9befab165fd224ba2d829e7c35ba6"><div class="ttname"><a href="structos_1_1Process.html#a41f9befab165fd224ba2d829e7c35ba6">os::Process::group</a></div><div class="ttdeci">const pid_t group</div><div class="ttdef"><b>Definition:</b> process.hpp:55</div></div> <div class="ttc" id="namespaceos_html_aa98ca8ac255e2b9c689979a1b40084d3"><div class="ttname"><a href="namespaceos.html#aa98ca8ac255e2b9c689979a1b40084d3">os::processes</a></div><div class="ttdeci">Try< std::list< Process > > processes()</div><div class="ttdef"><b>Definition:</b> os.hpp:182</div></div> -<div class="ttc" id="structos_1_1Permissions_html_aff088e7e48d02dea27b19d0983d49b69"><div class="ttname"><a href="structos_1_1Permissions.html#aff088e7e48d02dea27b19d0983d49b69">os::Permissions::group</a></div><div class="ttdeci">struct os::Permissions::@21 group</div></div> <div class="ttc" id="namespaceos_html_accb0757a8d9eca48dd31c4c433d17cfd"><div class="ttname"><a href="namespaceos.html#accb0757a8d9eca48dd31c4c433d17cfd">os::mknod</a></div><div class="ttdeci">Try< Nothing > mknod(const std::string &path, mode_t mode, dev_t dev)</div><div class="ttdef"><b>Definition:</b> os.hpp:204</div></div> <div class="ttc" id="namespaceproc_html_a34396c6140a28f583dc13fee3c3c35d4"><div class="ttname"><a href="namespaceproc.html#a34396c6140a28f583dc13fee3c3c35d4">proc::status</a></div><div class="ttdeci">Result< ProcessStatus > status(pid_t pid)</div><div class="ttdef"><b>Definition:</b> proc.hpp:166</div></div> <div class="ttc" id="killtree_8hpp_html"><div class="ttname"><a href="killtree_8hpp.html">killtree.hpp</a></div></div> @@ -593,15 +552,13 @@ <div class="ttc" id="classErrnoError_html"><div class="ttname"><a href="classErrnoError.html">ErrnoError</a></div><div class="ttdef"><b>Definition:</b> errorbase.hpp:49</div></div> <div class="ttc" id="3rdparty_2stout_2include_2stout_2os_2read_8hpp_html"><div class="ttname"><a href="3rdparty_2stout_2include_2stout_2os_2read_8hpp.html">read.hpp</a></div></div> <div class="ttc" id="structos_1_1Process_html_a688cf2d2f64d48fc510aa78a952c5ad4"><div class="ttname"><a href="structos_1_1Process.html#a688cf2d2f64d48fc510aa78a952c5ad4">os::Process::session</a></div><div class="ttdeci">const Option< pid_t > session</div><div class="ttdef"><b>Definition:</b> process.hpp:56</div></div> -<div class="ttc" id="namespaceos_html_a3fc3402e6d83c2e2f1dc680d77489a29"><div class="ttname"><a href="namespaceos.html#a3fc3402e6d83c2e2f1dc680d77489a29">os::permissions</a></div><div class="ttdeci">Try< Permissions > permissions(const std::string &path)</div><div class="ttdef"><b>Definition:</b> permissions.hpp:61</div></div> -<div class="ttc" id="namespacepath_html_aa86b16a2171cec90bb3337930513ef0f"><div class="ttname"><a href="namespacepath.html#aa86b16a2171cec90bb3337930513ef0f">path::join</a></div><div class="ttdeci">std::string join(const std::string &path1, const std::string &path2, const char _separator=os::PATH_SEPARATOR)</div><div class="ttdef"><b>Definition:</b> path.hpp:56</div></div> <div class="ttc" id="sunos_8hpp_html"><div class="ttname"><a href="sunos_8hpp.html">sunos.hpp</a></div></div> <div class="ttc" id="namespaceos_html_ac0f608e2a32764327e38c53d0d51527d"><div class="ttname"><a href="namespaceos.html#ac0f608e2a32764327e38c53d0d51527d">os::setenv</a></div><div class="ttdeci">void setenv(const std::string &key, const std::string &value, bool overwrite=true)</div><div class="ttdef"><b>Definition:</b> os.hpp:157</div></div> <div class="ttc" id="namespaceos_html_a7471e14f4cbd7e23b5daa21e556f4eb5"><div class="ttname"><a href="namespaceos.html#a7471e14f4cbd7e23b5daa21e556f4eb5">os::unsetenv</a></div><div class="ttdeci">void unsetenv(const std::string &key)</div><div class="ttdef"><b>Definition:</b> os.hpp:167</div></div> <div class="ttc" id="permissions_8hpp_html"><div class="ttname"><a href="permissions_8hpp.html">permissions.hpp</a></div></div> <div class="ttc" id="classDuration_html"><div class="ttname"><a href="classDuration.html">Duration</a></div><div class="ttdef"><b>Definition:</b> duration.hpp:32</div></div> <div class="ttc" id="classResult_html"><div class="ttname"><a href="classResult.html">Result</a></div><div class="ttdef"><b>Definition:</b> result.hpp:40</div></div> -<div class="ttc" id="namespaceos_html_a05476e646f895fd2f27f0e449f86ff63"><div class="ttname"><a href="namespaceos.html#a05476e646f895fd2f27f0e449f86ff63">os::host_default_path</a></div><div class="ttdeci">std::string host_default_path()</div><div class="ttdef"><b>Definition:</b> os.hpp:512</div></div> +<div class="ttc" id="namespaceos_html_a05476e646f895fd2f27f0e449f86ff63"><div class="ttname"><a href="namespaceos.html#a05476e646f895fd2f27f0e449f86ff63">os::host_default_path</a></div><div class="ttdeci">std::string host_default_path()</div><div class="ttdef"><b>Definition:</b> os.hpp:473</div></div> <div class="ttc" id="fork_8hpp_html"><div class="ttname"><a href="fork_8hpp.html">fork.hpp</a></div></div> <div class="ttc" id="close_8hpp_html"><div class="ttname"><a href="close_8hpp.html">close.hpp</a></div></div> <div class="ttc" id="namespaceos_1_1raw_html_a255f9fd6996adf47571d24586f9ba8fe"><div class="ttname"><a href="namespaceos_1_1raw.html#a255f9fd6996adf47571d24586f9ba8fe">os::raw::environmentp</a></div><div class="ttdeci">char *** environmentp()</div><div class="ttdef"><b>Definition:</b> environment.hpp:88</div></div> @@ -615,7 +572,6 @@ <div class="ttc" id="open_8hpp_html"><div class="ttname"><a href="open_8hpp.html">open.hpp</a></div></div> <div class="ttc" id="namespaceos_html_ad932e3876b339c61b03abc575ad3943b"><div class="ttname"><a href="namespaceos.html#ad932e3876b339c61b03abc575ad3943b">os::loadavg</a></div><div class="ttdeci">Try< Load > loadavg()</div><div class="ttdef"><b>Definition:</b> os.hpp:279</div></div> <div class="ttc" id="3rdparty_2stout_2include_2stout_2windows_8hpp_html_ab03ced250ed239bc3b50b669493997f9"><div class="ttname"><a href="3rdparty_2stout_2include_2stout_2windows_8hpp.html#ab03ced250ed239bc3b50b669493997f9">pid_t</a></div><div class="ttdeci">DWORD pid_t</div><div class="ttdef"><b>Definition:</b> windows.hpp:187</div></div> -<div class="ttc" id="namespacestrings_html_afffe11c8ecce961981653358520d6a04"><div class="ttname"><a href="namespacestrings.html#afffe11c8ecce961981653358520d6a04">strings::tokenize</a></div><div class="ttdeci">std::vector< std::string > tokenize(const std::string &s, const std::string &delims, const Option< size_t > &maxTokens=None())</div><div class="ttdef"><b>Definition:</b> strings.hpp:138</div></div> <div class="ttc" id="structos_1_1Process_html"><div class="ttname"><a href="structos_1_1Process.html">os::Process</a></div><div class="ttdef"><b>Definition:</b> process.hpp:32</div></div> <div class="ttc" id="3rdparty_2stout_2include_2stout_2windows_8hpp_html_a8a35dd1207a16dfa8b1d4163176d828c"><div class="ttname"><a href="3rdparty_2stout_2include_2stout_2windows_8hpp.html#a8a35dd1207a16dfa8b1d4163176d828c">mode_t</a></div><div class="ttdeci">int mode_t</div><div class="ttdef"><b>Definition:</b> windows.hpp:183</div></div> <div class="ttc" id="namespaceos_1_1stat_html_a083c9ff4aefeba1a75a27e6a6d6e2a71"><div class="ttname"><a href="namespaceos_1_1stat.html#a083c9ff4aefeba1a75a27e6a6d6e2a71">os::stat::dev</a></div><div class="ttdeci">Try< dev_t > dev(const std::string &path, const FollowSymlink follow=FollowSymlink::FOLLOW_SYMLINK)</div><div class="ttdef"><b>Definition:</b> stat.hpp:139</div></div> @@ -629,15 +585,12 @@ <div class="ttc" id="namespaceos_html_a30f836264363d7d7f0578fd0fb98ee36"><div class="ttname"><a href="namespaceos.html#a30f836264363d7d7f0578fd0fb98ee36">os::tar</a></div><div class="ttdeci">Try< Nothing > tar(const std::string &path, const std::string &archive)</div><div class="ttdef"><b>Definition:</b> os.hpp:363</div></div> <div class="ttc" id="namespaceos_html_a73c0258b355f6a38f3809bcd16a8f25a"><div class="ttname"><a href="namespaceos.html#a73c0258b355f6a38f3809bcd16a8f25a">os::hstrerror</a></div><div class="ttdeci">std::string hstrerror(int err)=delete</div></div> <div class="ttc" id="getcwd_8hpp_html"><div class="ttname"><a href="getcwd_8hpp.html">getcwd.hpp</a></div></div> -<div class="ttc" id="namespaceos_html_a2cc6177f60b8bd36990aab876a3c3c3f"><div class="ttname"><a href="namespaceos.html#a2cc6177f60b8bd36990aab876a3c3c3f">os::setctty</a></div><div class="ttdeci">Try< Nothing > setctty(int fd)</div><div class="ttdef"><b>Definition:</b> os.hpp:481</div></div> +<div class="ttc" id="namespaceos_html_a2cc6177f60b8bd36990aab876a3c3c3f"><div class="ttname"><a href="namespaceos.html#a2cc6177f60b8bd36990aab876a3c3c3f">os::setctty</a></div><div class="ttdeci">Try< Nothing > setctty(int fd)</div><div class="ttdef"><b>Definition:</b> os.hpp:442</div></div> <div class="ttc" id="classOption_html_a21358442c0fac1cc978a67a9a9089a79"><div class="ttname"><a href="classOption.html#a21358442c0fac1cc978a67a9a9089a79">Option::get</a></div><div class="ttdeci">const T & get() const &</div><div class="ttdef"><b>Definition:</b> option.hpp:118</div></div> -<div class="ttc" id="namespaceos_html_add69634db977768c56f0367b4bb03cd5"><div class="ttname"><a href="namespaceos.html#add69634db977768c56f0367b4bb03cd5">os::getenv</a></div><div class="ttdeci">Option< std::string > getenv(const std::string &key)</div><div class="ttdef"><b>Definition:</b> getenv.hpp:29</div></div> -<div class="ttc" id="namespaceos_html_acdff0f297e3166c5a2ad4766f6ef9e9b"><div class="ttname"><a href="namespaceos.html#acdff0f297e3166c5a2ad4766f6ef9e9b">os::which</a></div><div class="ttdeci">Option< std::string > which(const std::string &command, const Option< std::string > &_path=None())</div><div class="ttdef"><b>Definition:</b> os.hpp:406</div></div> <div class="ttc" id="namespaceos_html_aede9f61dcb4b7d1f276302a7bce37446"><div class="ttname"><a href="namespaceos.html#aede9f61dcb4b7d1f276302a7bce37446">os::random</a></div><div class="ttdeci">int random()</div><div class="ttdef"><b>Definition:</b> os.hpp:538</div></div> <div class="ttc" id="namespaceos_html_a079aa1b108c567735620a14ea2a2e506"><div class="ttname"><a href="namespaceos.html#a079aa1b108c567735620a14ea2a2e506">os::release</a></div><div class="ttdeci">Try< Version > release()</div><div class="ttdef"><b>Definition:</b> os.hpp:377</div></div> <div class="ttc" id="classDuration_html_a31ebb8d92dc93914cb830d70753d802b"><div class="ttname"><a href="classDuration.html#a31ebb8d92dc93914cb830d70753d802b">Duration::secs</a></div><div class="ttdeci">double secs() const </div><div class="ttdef"><b>Definition:</b> duration.hpp:101</div></div> <div class="ttc" id="namespaceos_html_a48c86262928f59c5c54d0cb0012e2aba"><div class="ttname"><a href="namespaceos.html#a48c86262928f59c5c54d0cb0012e2aba">os::waitpid</a></div><div class="ttdeci">Result< pid_t > waitpid(pid_t pid, int *status, int options)</div><div class="ttdef"><b>Definition:</b> os.hpp:141</div></div> -<div class="ttc" id="structos_1_1Permissions_html_ae14ff3a707c064967e132d47a5a116ff"><div class="ttname"><a href="structos_1_1Permissions.html#ae14ff3a707c064967e132d47a5a116ff">os::Permissions::others</a></div><div class="ttdeci">struct os::Permissions::@21 others</div></div> <div class="ttc" id="structos_1_1UTSInfo_html_a6d960255088be07cac7157b7cbe94cbf"><div class="ttname"><a href="structos_1_1UTSInfo.html#a6d960255088be07cac7157b7cbe94cbf">os::UTSInfo::sysname</a></div><div class="ttdeci">std::string sysname</div><div class="ttdef"><b>Definition:</b> os.hpp:46</div></div> <div class="ttc" id="3rdparty_2stout_2include_2stout_2os_2linux_8hpp_html"><div class="ttname"><a href="3rdparty_2stout_2include_2stout_2os_2linux_8hpp.html">linux.hpp</a></div></div> <div class="ttc" id="sendfile_8hpp_html"><div class="ttname"><a href="sendfile_8hpp.html">sendfile.hpp</a></div></div> @@ -651,7 +604,6 @@ <div class="ttc" id="structNone_html"><div class="ttname"><a href="structNone.html">None</a></div><div class="ttdef"><b>Definition:</b> none.hpp:27</div></div> <div class="ttc" id="classTry_html_a0b98f95163b8a38daafd1651b043a276"><div class="ttname"><a href="classTry.html#a0b98f95163b8a38daafd1651b043a276">Try::isError</a></div><div class="ttdeci">bool isError() const </div><div class="ttdef"><b>Definition:</b> try.hpp:71</div></div> <div class="ttc" id="structos_1_1UTSInfo_html_a03dd23e9031a68b633dc6e405e32bab0"><div class="ttname"><a href="structos_1_1UTSInfo.html#a03dd23e9031a68b633dc6e405e32bab0">os::UTSInfo::nodename</a></div><div class="ttdeci">std::string nodename</div><div class="ttdef"><b>Definition:</b> os.hpp:47</div></div> -<div class="ttc" id="structos_1_1Permissions_html_a8d51e62d281d015ba6a4ee38c0dceb9a"><div class="ttname"><a href="structos_1_1Permissions.html#a8d51e62d281d015ba6a4ee38c0dceb9a">os::Permissions::owner</a></div><div class="ttdeci">struct os::Permissions::@21 owner</div></div> <div class="ttc" id="namespaceos_html_aebc3586b2be0d2b9093ccfbf25dfcde8"><div class="ttname"><a href="namespaceos.html#aebc3586b2be0d2b9093ccfbf25dfcde8">os::execvpe</a></div><div class="ttdeci">int execvpe(const std::string &command, const std::vector< std::string > &argv, const std::map< std::string, std::string > &envp)</div><div class="ttdef"><b>Definition:</b> shell.hpp:394</div></div> <div class="ttc" id="signals_8hpp_html"><div class="ttname"><a href="signals_8hpp.html">signals.hpp</a></div></div> <div class="ttc" id="structVersion_html"><div class="ttname"><a href="structVersion.html">Version</a></div><div class="ttdef"><b>Definition:</b> version.hpp:41</div></div> @@ -660,19 +612,18 @@ <div class="ttc" id="namespaceos_1_1stat_html_afc51654ad486693167c300612bf8ebfa"><div class="ttname"><a href="namespaceos_1_1stat.html#afc51654ad486693167c300612bf8ebfa">os::stat::mode</a></div><div class="ttdeci">Try< mode_t > mode(const std::string &path, const FollowSymlink follow=FollowSymlink::FOLLOW_SYMLINK)</div><div class="ttdef"><b>Definition:</b> stat.hpp:126</div></div> <div class="ttc" id="classOption_html_a06eab791122ebc1f8af4ad310e5e7d7e"><div class="ttname"><a href="classOption.html#a06eab791122ebc1f8af4ad310e5e7d7e">Option::isNone</a></div><div class="ttdeci">bool isNone() const </div><div class="ttdef"><b>Definition:</b> option.hpp:116</div></div> <div class="ttc" id="shell_8hpp_html"><div class="ttname"><a href="shell_8hpp.html">shell.hpp</a></div></div> -<div class="ttc" id="namespaceos_html_a547f04b42e472b2ff0070897010fac78"><div class="ttname"><a href="namespaceos.html#a547f04b42e472b2ff0070897010fac78">os::var</a></div><div class="ttdeci">Try< std::string > var()</div><div class="ttdef"><b>Definition:</b> os.hpp:445</div></div> +<div class="ttc" id="namespaceos_html_a547f04b42e472b2ff0070897010fac78"><div class="ttname"><a href="namespaceos.html#a547f04b42e472b2ff0070897010fac78">os::var</a></div><div class="ttdeci">Try< std::string > var()</div><div class="ttdef"><b>Definition:</b> os.hpp:406</div></div> <div class="ttc" id="namespaceos_html_a781ae694650dd3c6addab2a383a8c422"><div class="ttname"><a href="namespaceos.html#a781ae694650dd3c6addab2a383a8c422">os::glob</a></div><div class="ttdeci">Try< std::list< std::string > > glob(const std::string &pattern)</div><div class="ttdef"><b>Definition:</b> os.hpp:238</div></div> -<div class="ttc" id="structos_1_1Permissions_html_afe509a1398f95df7d2bda5fbfaa91a44"><div class="ttname"><a href="structos_1_1Permissions.html#afe509a1398f95df7d2bda5fbfaa91a44">os::Permissions::x</a></div><div class="ttdeci">bool x</div><div class="ttdef"><b>Definition:</b> permissions.hpp:51</div></div> <div class="ttc" id="namespaceos_html_a42af1cab63434cedf2b698cd6f49f073"><div class="ttname"><a href="namespaceos.html#a42af1cab63434cedf2b698cd6f49f073">os::pids</a></div><div class="ttdeci">Try< std::set< pid_t > > pids()</div><div class="ttdef"><b>Definition:</b> freebsd.hpp:62</div></div> <div class="ttc" id="classTry_html_a7be0768038e0628632492edf6cc1515a"><div class="ttname"><a href="classTry.html#a7be0768038e0628632492edf6cc1515a">Try::get</a></div><div class="ttdeci">const T & get() const </div><div class="ttdef"><b>Definition:</b> try.hpp:73</div></div> <div class="ttc" id="structos_1_1Load_html_acff27912cf063f465aaf72fbda6ad3a7"><div class="ttname"><a href="structos_1_1Load.html#acff27912cf063f465aaf72fbda6ad3a7">os::Load::five</a></div><div class="ttdeci">double five</div><div class="ttdef"><b>Definition:</b> os.hpp:27</div></div> <div class="ttc" id="structos_1_1UTSInfo_html_a493fadfa45429ab755d01d02d2f8be17"><div class="ttname"><a href="structos_1_1UTSInfo.html#a493fadfa45429ab755d01d02d2f8be17">os::UTSInfo::machine</a></div><div class="ttdeci">std::string machine</div><div class="ttdef"><b>Definition:</b> os.hpp:50</div></div> -<div class="ttc" id="namespaceos_html_a788e763662cf01a30bcd06baa95332bb"><div class="ttname"><a href="namespaceos.html#a788e763662cf01a30bcd06baa95332bb">os::setWindowSize</a></div><div class="ttdeci">Try< Nothing > setWindowSize(int fd, unsigned short rows, unsigned short columns)</div><div class="ttdef"><b>Definition:</b> os.hpp:493</div></div> +<div class="ttc" id="namespaceos_html_a788e763662cf01a30bcd06baa95332bb"><div class="ttname"><a href="namespaceos.html#a788e763662cf01a30bcd06baa95332bb">os::setWindowSize</a></div><div class="ttdeci">Try< Nothing > setWindowSize(int fd, unsigned short rows, unsigned short columns)</div><div class="ttdef"><b>Definition:</b> os.hpp:454</div></div> <div class="ttc" id="3rdparty_2stout_2include_2stout_2os_2raw_2environment_8hpp_html"><div class="ttname"><a href="3rdparty_2stout_2include_2stout_2os_2raw_2environment_8hpp.html">environment.hpp</a></div></div> <div class="ttc" id="structos_1_1UTSInfo_html"><div class="ttname"><a href="structos_1_1UTSInfo.html">os::UTSInfo</a></div><div class="ttdef"><b>Definition:</b> os.hpp:44</div></div> <div class="ttc" id="namespaceos_html_a5e0295f0e3bae2bd29d86803f9293b5d"><div class="ttname"><a href="namespaceos.html#a5e0295f0e3bae2bd29d86803f9293b5d">os::gmtime_r</a></div><div class="ttdeci">tm * gmtime_r(const time_t *timep, tm *result)</div><div class="ttdef"><b>Definition:</b> os.hpp:389</div></div> <div class="ttc" id="structos_1_1Load_html_ac65d8819bbf8201cfa6975d853061e93"><div class="ttname"><a href="structos_1_1Load.html#ac65d8819bbf8201cfa6975d853061e93">os::Load::one</a></div><div class="ttdeci">double one</div><div class="ttdef"><b>Definition:</b> os.hpp:26</div></div> -<div class="ttc" id="namespaceos_html_a07a766e0355221b949e5fe6fdfca63f2"><div class="ttname"><a href="namespaceos.html#a07a766e0355221b949e5fe6fdfca63f2">os::ptsname</a></div><div class="ttdeci">Try< std::string > ptsname(int master)</div><div class="ttdef"><b>Definition:</b> os.hpp:464</div></div> +<div class="ttc" id="namespaceos_html_a07a766e0355221b949e5fe6fdfca63f2"><div class="ttname"><a href="namespaceos.html#a07a766e0355221b949e5fe6fdfca63f2">os::ptsname</a></div><div class="ttdeci">Try< std::string > ptsname(int master)</div><div class="ttdef"><b>Definition:</b> os.hpp:425</div></div> <div class="ttc" id="namespaceos_1_1raw_html_aad2bd3acb3ca09c75a1a1db58075f9f4"><div class="ttname"><a href="namespaceos_1_1raw.html#aad2bd3acb3ca09c75a1a1db58075f9f4">os::raw::environment</a></div><div class="ttdeci">char ** environment()</div><div class="ttdef"><b>Definition:</b> environment.hpp:66</div></div> </div><!-- fragment --></div><!-- contents --> <!-- start footer part --> http://git-wip-us.apache.org/repos/asf/mesos-site/blob/973110bf/content/api/latest/c++/posix_2which_8hpp.html ---------------------------------------------------------------------- diff --git a/content/api/latest/c++/posix_2which_8hpp.html b/content/api/latest/c++/posix_2which_8hpp.html new file mode 100644 index 0000000..175de51 --- /dev/null +++ b/content/api/latest/c++/posix_2which_8hpp.html @@ -0,0 +1,88 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> +<meta http-equiv="X-UA-Compatible" content="IE=9"/> +<meta name="generator" content="Doxygen 1.8.5"/> +<title>Apache Mesos: 3rdparty/stout/include/stout/os/posix/which.hpp File Reference</title> +<link href="tabs.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="jquery.js"></script> +<script type="text/javascript" src="dynsections.js"></script> +<link href="doxygen.css" rel="stylesheet" type="text/css" /> +</head> +<body> +<div id="top"><!-- do not remove this div, it is closed by doxygen! --> +<div id="titlearea"> +<table cellspacing="0" cellpadding="0"> + <tbody> + <tr style="height: 56px;"> + <td style="padding-left: 0.5em;"> + <div id="projectname">Apache Mesos + </div> + </td> + </tr> + </tbody> +</table> +</div> +<!-- end header part --> +<!-- Generated by Doxygen 1.8.5 --> + <div id="navrow1" class="tabs"> + <ul class="tablist"> + <li><a href="index.html"><span>Main Page</span></a></li> + <li><a href="pages.html"><span>Related Pages</span></a></li> + <li><a href="namespaces.html"><span>Namespaces</span></a></li> + <li><a href="annotated.html"><span>Classes</span></a></li> + <li class="current"><a href="files.html"><span>Files</span></a></li> + <li><a href="examples.html"><span>Examples</span></a></li> + </ul> + </div> + <div id="navrow2" class="tabs2"> + <ul class="tablist"> + <li><a href="files.html"><span>File List</span></a></li> + <li><a href="globals.html"><span>File Members</span></a></li> + </ul> + </div> +<div id="nav-path" class="navpath"> + <ul> +<li class="navelem"><a class="el" href="dir_8cab8f464681f7cc51cee77e79a434cd.html">3rdparty</a></li><li class="navelem"><a class="el" href="dir_aa547de1d719d14adccfca1dfb1735b3.html">stout</a></li><li class="navelem"><a class="el" href="dir_1a1b923d951dd999d43396870333fc33.html">include</a></li><li class="navelem"><a class="el" href="dir_dbd52553d038069c1ed93e3477ea333d.html">stout</a></li><li class="navelem"><a class="el" href="dir_27832e6c74c2ee170d1dd05a196f816c.html">os</a></li><li class="navelem"><a class="el" href="dir_9a6d2c82450779b96177e4cabddb051e.html">posix</a></li> </ul> +</div> +</div><!-- top --> +<div class="header"> + <div class="summary"> +<a href="#namespaces">Namespaces</a> | +<a href="#func-members">Functions</a> </div> + <div class="headertitle"> +<div class="title">which.hpp File Reference</div> </div> +</div><!--header--> +<div class="contents"> +<div class="textblock"><code>#include <string></code><br/> +<code>#include <vector></code><br/> +<code>#include <<a class="el" href="none_8hpp_source.html">stout/none.hpp</a>></code><br/> +<code>#include <<a class="el" href="option_8hpp_source.html">stout/option.hpp</a>></code><br/> +<code>#include <<a class="el" href="os_8hpp_source.html">stout/os.hpp</a>></code><br/> +<code>#include <<a class="el" href="path_8hpp_source.html">stout/path.hpp</a>></code><br/> +<code>#include <<a class="el" href="strings_8hpp_source.html">stout/strings.hpp</a>></code><br/> +<code>#include <<a class="el" href="exists_8hpp_source.html">stout/os/exists.hpp</a>></code><br/> +<code>#include <<a class="el" href="permissions_8hpp_source.html">stout/os/permissions.hpp</a>></code><br/> +</div> +<p><a href="posix_2which_8hpp_source.html">Go to the source code of this file.</a></p> +<table class="memberdecls"> +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a> +Namespaces</h2></td></tr> +<tr class="memitem:namespaceos"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceos.html">os</a></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +</table><table class="memberdecls"> +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> +Functions</h2></td></tr> +<tr class="memitem:a8d651d36e878b4284b6ab739be15bf16"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classOption.html">Option</a>< std::string > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceos.html#a8d651d36e878b4284b6ab739be15bf16">os::which</a> (const std::string &command, const <a class="el" href="classOption.html">Option</a>< std::string > &_path=<a class="el" href="structNone.html">None</a>())</td></tr> +<tr class="separator:a8d651d36e878b4284b6ab739be15bf16"><td class="memSeparator" colspan="2"> </td></tr> +</table> +</div><!-- contents --> +<!-- start footer part --> +<hr class="footer"/><address class="footer"><small> +Generated by  <a href="http://www.doxygen.org/index.html"> +<img class="footer" src="doxygen.png" alt="doxygen"/> +</a> 1.8.5 +</small></address> +</body> +</html> http://git-wip-us.apache.org/repos/asf/mesos-site/blob/973110bf/content/api/latest/c++/posix_2which_8hpp_source.html ---------------------------------------------------------------------- diff --git a/content/api/latest/c++/posix_2which_8hpp_source.html b/content/api/latest/c++/posix_2which_8hpp_source.html new file mode 100644 index 0000000..57dcec1 --- /dev/null +++ b/content/api/latest/c++/posix_2which_8hpp_source.html @@ -0,0 +1,159 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> +<meta http-equiv="X-UA-Compatible" content="IE=9"/> +<meta name="generator" content="Doxygen 1.8.5"/> +<title>Apache Mesos: 3rdparty/stout/include/stout/os/posix/which.hpp Source File</title> +<link href="tabs.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="jquery.js"></script> +<script type="text/javascript" src="dynsections.js"></script> +<link href="doxygen.css" rel="stylesheet" type="text/css" /> +</head> +<body> +<div id="top"><!-- do not remove this div, it is closed by doxygen! --> +<div id="titlearea"> +<table cellspacing="0" cellpadding="0"> + <tbody> + <tr style="height: 56px;"> + <td style="padding-left: 0.5em;"> + <div id="projectname">Apache Mesos + </div> + </td> + </tr> + </tbody> +</table> +</div> +<!-- end header part --> +<!-- Generated by Doxygen 1.8.5 --> + <div id="navrow1" class="tabs"> + <ul class="tablist"> + <li><a href="index.html"><span>Main Page</span></a></li> + <li><a href="pages.html"><span>Related Pages</span></a></li> + <li><a href="namespaces.html"><span>Namespaces</span></a></li> + <li><a href="annotated.html"><span>Classes</span></a></li> + <li class="current"><a href="files.html"><span>Files</span></a></li> + <li><a href="examples.html"><span>Examples</span></a></li> + </ul> + </div> + <div id="navrow2" class="tabs2"> + <ul class="tablist"> + <li><a href="files.html"><span>File List</span></a></li> + <li><a href="globals.html"><span>File Members</span></a></li> + </ul> + </div> +<div id="nav-path" class="navpath"> + <ul> +<li class="navelem"><a class="el" href="dir_8cab8f464681f7cc51cee77e79a434cd.html">3rdparty</a></li><li class="navelem"><a class="el" href="dir_aa547de1d719d14adccfca1dfb1735b3.html">stout</a></li><li class="navelem"><a class="el" href="dir_1a1b923d951dd999d43396870333fc33.html">include</a></li><li class="navelem"><a class="el" href="dir_dbd52553d038069c1ed93e3477ea333d.html">stout</a></li><li class="navelem"><a class="el" href="dir_27832e6c74c2ee170d1dd05a196f816c.html">os</a></li><li class="navelem"><a class="el" href="dir_9a6d2c82450779b96177e4cabddb051e.html">posix</a></li> </ul> +</div> +</div><!-- top --> +<div class="header"> + <div class="headertitle"> +<div class="title">which.hpp</div> </div> +</div><!--header--> +<div class="contents"> +<a href="posix_2which_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">// Licensed under the Apache License, Version 2.0 (the "License");</span></div> +<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">// you may not use this file except in compliance with the License.</span></div> +<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">// You may obtain a copy of the License at</span></div> +<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">//</span></div> +<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">// http://www.apache.org/licenses/LICENSE-2.0</span></div> +<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment">//</span></div> +<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">// Unless required by applicable law or agreed to in writing, software</span></div> +<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment">// distributed under the License is distributed on an "AS IS" BASIS,</span></div> +<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment">// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div> +<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment">// See the License for the specific language governing permissions and</span></div> +<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment">// limitations under the License.</span></div> +<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> </div> +<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="preprocessor">#ifndef __STOUT_OS_POSIX_WHICH_HPP__</span></div> +<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="preprocessor"></span><span class="preprocessor">#define __STOUT_OS_POSIX_WHICH_HPP__</span></div> +<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="preprocessor"></span></div> +<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="preprocessor">#include <string></span></div> +<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="preprocessor">#include <vector></span></div> +<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div> +<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="preprocessor">#include <<a class="code" href="none_8hpp.html">stout/none.hpp</a>></span></div> +<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include <<a class="code" href="option_8hpp.html">stout/option.hpp</a>></span></div> +<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <<a class="code" href="os_8hpp.html">stout/os.hpp</a>></span></div> +<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <<a class="code" href="path_8hpp.html">stout/path.hpp</a>></span></div> +<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <<a class="code" href="strings_8hpp.html">stout/strings.hpp</a>></span></div> +<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> </div> +<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <<a class="code" href="exists_8hpp.html">stout/os/exists.hpp</a>></span></div> +<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include <<a class="code" href="permissions_8hpp.html">stout/os/permissions.hpp</a>></span></div> +<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> </div> +<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div> +<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="keyword">namespace </span>os {</div> +<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div> +<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="namespaceos.html#a8d651d36e878b4284b6ab739be15bf16"> 31</a></span> <span class="keyword">inline</span> <a class="code" href="classOption.html">Option<std::string></a> <a class="code" href="namespaceos.html#a8d651d36e878b4284b6ab739be15bf16">which</a>(</div> +<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>  <span class="keyword">const</span> std::string& command,</div> +<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>  <span class="keyword">const</span> <a class="code" href="classOption.html">Option<std::string></a>& _path = <a class="code" href="structNone.html">None</a>())</div> +<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> {</div> +<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>  <a class="code" href="classOption.html">Option<std::string></a> path = _path;</div> +<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> </div> +<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>  <span class="keywordflow">if</span> (path.<a class="code" href="classOption.html#a06eab791122ebc1f8af4ad310e5e7d7e">isNone</a>()) {</div> +<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>  path = <a class="code" href="namespaceos.html#add69634db977768c56f0367b4bb03cd5">getenv</a>(<span class="stringliteral">"PATH"</span>);</div> +<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div> +<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>  <span class="keywordflow">if</span> (path.<a class="code" href="classOption.html#a06eab791122ebc1f8af4ad310e5e7d7e">isNone</a>()) {</div> +<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>  <span class="keywordflow">return</span> <a class="code" href="structNone.html">None</a>();</div> +<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  }</div> +<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>  }</div> +<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div> +<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  std::vector<std::string> tokens = <a class="code" href="namespacestrings.html#afffe11c8ecce961981653358520d6a04">strings::tokenize</a>(path.<a class="code" href="classOption.html#a21358442c0fac1cc978a67a9a9089a79">get</a>(), <span class="stringliteral">":"</span>);</div> +<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  <span class="keywordflow">foreach</span> (<span class="keyword">const</span> std::string& token, tokens) {</div> +<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  <span class="keyword">const</span> std::string commandPath = <a class="code" href="namespacepath.html#aa86b16a2171cec90bb3337930513ef0f">path::join</a>(token, command);</div> +<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  <span class="keywordflow">if</span> (!<a class="code" href="namespaceos.html#a69b3969276ffa4cb698b9431ee43bd7c">os::exists</a>(commandPath)) {</div> +<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  <span class="keywordflow">continue</span>;</div> +<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  }</div> +<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div> +<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  <a class="code" href="classTry.html">Try<os::Permissions></a> <a class="code" href="namespaceos.html#a3fc3402e6d83c2e2f1dc680d77489a29">permissions</a> = <a class="code" href="namespaceos.html#a3fc3402e6d83c2e2f1dc680d77489a29">os::permissions</a>(commandPath);</div> +<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  <span class="keywordflow">if</span> (permissions.<a class="code" href="classTry.html#a0b98f95163b8a38daafd1651b043a276">isError</a>()) {</div> +<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  <span class="keywordflow">continue</span>;</div> +<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  }</div> +<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> </div> +<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  <span class="keywordflow">if</span> (!permissions.<a class="code" href="classTry.html#a7be0768038e0628632492edf6cc1515a">get</a>().<a class="code" href="structos_1_1Permissions.html#a8d51e62d281d015ba6a4ee38c0dceb9a">owner</a>.<a class="code" href="structos_1_1Permissions.html#afe509a1398f95df7d2bda5fbfaa91a44">x</a> &&</div> +<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  !permissions.<a class="code" href="classTry.html#a7be0768038e0628632492edf6cc1515a">get</a>().<a class="code" href="structos_1_1Permissions.html#aff088e7e48d02dea27b19d0983d49b69">group</a>.<a class="code" href="structos_1_1Permissions.html#afe509a1398f95df7d2bda5fbfaa91a44">x</a> &&</div> +<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  !permissions.<a class="code" href="classTry.html#a7be0768038e0628632492edf6cc1515a">get</a>().<a class="code" href="structos_1_1Permissions.html#ae14ff3a707c064967e132d47a5a116ff">others</a>.<a class="code" href="structos_1_1Permissions.html#afe509a1398f95df7d2bda5fbfaa91a44">x</a>) {</div> +<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="keywordflow">continue</span>;</div> +<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  }</div> +<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div> +<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  <span class="keywordflow">return</span> commandPath;</div> +<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  }</div> +<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> </div> +<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  <span class="keywordflow">return</span> <a class="code" href="structNone.html">None</a>();</div> +<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> }</div> +<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div> +<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> } <span class="comment">// namespace os {</span></div> +<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div> +<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div> +<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="preprocessor">#endif // __STOUT_OS_POSIX_WHICH_HPP__</span></div> +<div class="ttc" id="namespaceos_html_a69b3969276ffa4cb698b9431ee43bd7c"><div class="ttname"><a href="namespaceos.html#a69b3969276ffa4cb698b9431ee43bd7c">os::exists</a></div><div class="ttdeci">bool exists(const std::string &path)</div><div class="ttdef"><b>Definition:</b> exists.hpp:26</div></div> +<div class="ttc" id="classOption_html"><div class="ttname"><a href="classOption.html">Option< std::string ></a></div></div> +<div class="ttc" id="exists_8hpp_html"><div class="ttname"><a href="exists_8hpp.html">exists.hpp</a></div></div> +<div class="ttc" id="classTry_html"><div class="ttname"><a href="classTry.html">Try</a></div><div class="ttdef"><b>Definition:</b> try.hpp:34</div></div> +<div class="ttc" id="structos_1_1Permissions_html_aff088e7e48d02dea27b19d0983d49b69"><div class="ttname"><a href="structos_1_1Permissions.html#aff088e7e48d02dea27b19d0983d49b69">os::Permissions::group</a></div><div class="ttdeci">struct os::Permissions::@21 group</div></div> +<div class="ttc" id="os_8hpp_html"><div class="ttname"><a href="os_8hpp.html">os.hpp</a></div></div> +<div class="ttc" id="none_8hpp_html"><div class="ttname"><a href="none_8hpp.html">none.hpp</a></div></div> +<div class="ttc" id="namespaceos_html_a3fc3402e6d83c2e2f1dc680d77489a29"><div class="ttname"><a href="namespaceos.html#a3fc3402e6d83c2e2f1dc680d77489a29">os::permissions</a></div><div class="ttdeci">Try< Permissions > permissions(const std::string &path)</div><div class="ttdef"><b>Definition:</b> permissions.hpp:61</div></div> +<div class="ttc" id="namespacepath_html_aa86b16a2171cec90bb3337930513ef0f"><div class="ttname"><a href="namespacepath.html#aa86b16a2171cec90bb3337930513ef0f">path::join</a></div><div class="ttdeci">std::string join(const std::string &path1, const std::string &path2, const char _separator=os::PATH_SEPARATOR)</div><div class="ttdef"><b>Definition:</b> path.hpp:56</div></div> +<div class="ttc" id="permissions_8hpp_html"><div class="ttname"><a href="permissions_8hpp.html">permissions.hpp</a></div></div> +<div class="ttc" id="namespaceos_html_a8d651d36e878b4284b6ab739be15bf16"><div class="ttname"><a href="namespaceos.html#a8d651d36e878b4284b6ab739be15bf16">os::which</a></div><div class="ttdeci">Option< std::string > which(const std::string &command, const Option< std::string > &_path=None())</div><div class="ttdef"><b>Definition:</b> which.hpp:31</div></div> +<div class="ttc" id="namespacestrings_html_afffe11c8ecce961981653358520d6a04"><div class="ttname"><a href="namespacestrings.html#afffe11c8ecce961981653358520d6a04">strings::tokenize</a></div><div class="ttdeci">std::vector< std::string > tokenize(const std::string &s, const std::string &delims, const Option< size_t > &maxTokens=None())</div><div class="ttdef"><b>Definition:</b> strings.hpp:138</div></div> +<div class="ttc" id="path_8hpp_html"><div class="ttname"><a href="path_8hpp.html">path.hpp</a></div></div> +<div class="ttc" id="classOption_html_a21358442c0fac1cc978a67a9a9089a79"><div class="ttname"><a href="classOption.html#a21358442c0fac1cc978a67a9a9089a79">Option::get</a></div><div class="ttdeci">const T & get() const &</div><div class="ttdef"><b>Definition:</b> option.hpp:118</div></div> +<div class="ttc" id="namespaceos_html_add69634db977768c56f0367b4bb03cd5"><div class="ttname"><a href="namespaceos.html#add69634db977768c56f0367b4bb03cd5">os::getenv</a></div><div class="ttdeci">Option< std::string > getenv(const std::string &key)</div><div class="ttdef"><b>Definition:</b> getenv.hpp:29</div></div> +<div class="ttc" id="option_8hpp_html"><div class="ttname"><a href="option_8hpp.html">option.hpp</a></div></div> +<div class="ttc" id="structos_1_1Permissions_html_ae14ff3a707c064967e132d47a5a116ff"><div class="ttname"><a href="structos_1_1Permissions.html#ae14ff3a707c064967e132d47a5a116ff">os::Permissions::others</a></div><div class="ttdeci">struct os::Permissions::@21 others</div></div> +<div class="ttc" id="structNone_html"><div class="ttname"><a href="structNone.html">None</a></div><div class="ttdef"><b>Definition:</b> none.hpp:27</div></div> +<div class="ttc" id="classTry_html_a0b98f95163b8a38daafd1651b043a276"><div class="ttname"><a href="classTry.html#a0b98f95163b8a38daafd1651b043a276">Try::isError</a></div><div class="ttdeci">bool isError() const </div><div class="ttdef"><b>Definition:</b> try.hpp:71</div></div> +<div class="ttc" id="structos_1_1Permissions_html_a8d51e62d281d015ba6a4ee38c0dceb9a"><div class="ttname"><a href="structos_1_1Permissions.html#a8d51e62d281d015ba6a4ee38c0dceb9a">os::Permissions::owner</a></div><div class="ttdeci">struct os::Permissions::@21 owner</div></div> +<div class="ttc" id="classOption_html_a06eab791122ebc1f8af4ad310e5e7d7e"><div class="ttname"><a href="classOption.html#a06eab791122ebc1f8af4ad310e5e7d7e">Option::isNone</a></div><div class="ttdeci">bool isNone() const </div><div class="ttdef"><b>Definition:</b> option.hpp:116</div></div> +<div class="ttc" id="structos_1_1Permissions_html_afe509a1398f95df7d2bda5fbfaa91a44"><div class="ttname"><a href="structos_1_1Permissions.html#afe509a1398f95df7d2bda5fbfaa91a44">os::Permissions::x</a></div><div class="ttdeci">bool x</div><div class="ttdef"><b>Definition:</b> permissions.hpp:51</div></div> +<div class="ttc" id="classTry_html_a7be0768038e0628632492edf6cc1515a"><div class="ttname"><a href="classTry.html#a7be0768038e0628632492edf6cc1515a">Try::get</a></div><div class="ttdeci">const T & get() const </div><div class="ttdef"><b>Definition:</b> try.hpp:73</div></div> +<div class="ttc" id="strings_8hpp_html"><div class="ttname"><a href="strings_8hpp.html">strings.hpp</a></div></div> +</div><!-- fragment --></div><!-- contents --> +<!-- start footer part --> +<hr class="footer"/><address class="footer"><small> +Generated by  <a href="http://www.doxygen.org/index.html"> +<img class="footer" src="doxygen.png" alt="doxygen"/> +</a> 1.8.5 +</small></address> +</body> +</html> http://git-wip-us.apache.org/repos/asf/mesos-site/blob/973110bf/content/api/latest/c++/subprocess__posix_8hpp_source.html ---------------------------------------------------------------------- diff --git a/content/api/latest/c++/subprocess__posix_8hpp_source.html b/content/api/latest/c++/subprocess__posix_8hpp_source.html index 048c4ca..027ba72 100644 --- a/content/api/latest/c++/subprocess__posix_8hpp_source.html +++ b/content/api/latest/c++/subprocess__posix_8hpp_source.html @@ -407,7 +407,7 @@ <div class="line"><a name="l00353"></a><span class="lineno"> 353</span> } <span class="comment">// namespace process {</span></div> <div class="line"><a name="l00354"></a><span class="lineno"> 354</span> </div> <div class="line"><a name="l00355"></a><span class="lineno"> 355</span> <span class="preprocessor">#endif // __PROCESS_POSIX_SUBPROCESS_HPP__</span></div> -<div class="ttc" id="namespaceos_html_a54f3320a4d6f88c14f80f5247aa879b9"><div class="ttname"><a href="namespaceos.html#a54f3320a4d6f88c14f80f5247aa879b9">os::dup2</a></div><div class="ttdeci">Try< Nothing > dup2(int oldFd, int newFd)</div><div class="ttdef"><b>Definition:</b> os.hpp:451</div></div> +<div class="ttc" id="namespaceos_html_a54f3320a4d6f88c14f80f5247aa879b9"><div class="ttname"><a href="namespaceos.html#a54f3320a4d6f88c14f80f5247aa879b9">os::dup2</a></div><div class="ttdeci">Try< Nothing > dup2(int oldFd, int newFd)</div><div class="ttdef"><b>Definition:</b> os.hpp:412</div></div> <div class="ttc" id="3rdparty_2stout_2include_2stout_2windows_8hpp_html_a894c4d58faeee7675b9e7e8244de1386"><div class="ttname"><a href="3rdparty_2stout_2include_2stout_2windows_8hpp.html#a894c4d58faeee7675b9e7e8244de1386">ssize_t</a></div><div class="ttdeci">SSIZE_T ssize_t</div><div class="ttdef"><b>Definition:</b> windows.hpp:192</div></div> <div class="ttc" id="structNothing_html"><div class="ttname"><a href="structNothing.html">Nothing</a></div><div class="ttdef"><b>Definition:</b> nothing.hpp:16</div></div> <div class="ttc" id="classError_html"><div class="ttname"><a href="classError.html">Error</a></div><div class="ttdef"><b>Definition:</b> errorbase.hpp:35</div></div>
