uvw/fs_8h_source.html
2023-05-22 11:13:58 +02:00

568 lines
108 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>uvw: src/uvw/fs.h 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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.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 id="projectrow">
<td id="projectalign">
<div id="projectname">uvw<span id="projectnumber">&#160;3.1.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_98934c98f70735fe3a272005a9eb8736.html">uvw</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">fs.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef UVW_FS_INCLUDE_H</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define UVW_FS_INCLUDE_H</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &lt;chrono&gt;</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &lt;memory&gt;</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &lt;string&gt;</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &lt;utility&gt;</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &lt;uv.h&gt;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#include &quot;config.h&quot;</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &quot;enum.hpp&quot;</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="preprocessor">#include &quot;loop.h&quot;</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include &quot;request.hpp&quot;</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#include &quot;util.h&quot;</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceuvw.html">uvw</a> {</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="keyword">namespace </span>details {</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="keyword">enum class</span> uvw_fs_type : std::underlying_type_t&lt;uv_fs_type&gt; {</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> UNKNOWN = UV_FS_UNKNOWN,</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> CUSTOM = UV_FS_CUSTOM,</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> OPEN = UV_FS_OPEN,</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> CLOSE = UV_FS_CLOSE,</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> READ = UV_FS_READ,</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> WRITE = UV_FS_WRITE,</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> SENDFILE = UV_FS_SENDFILE,</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> STAT = UV_FS_STAT,</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> LSTAT = UV_FS_LSTAT,</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> FSTAT = UV_FS_FSTAT,</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> FTRUNCATE = UV_FS_FTRUNCATE,</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> UTIME = UV_FS_UTIME,</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> FUTIME = UV_FS_FUTIME,</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> ACCESS = UV_FS_ACCESS,</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> CHMOD = UV_FS_CHMOD,</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> FCHMOD = UV_FS_FCHMOD,</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> FSYNC = UV_FS_FSYNC,</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> FDATASYNC = UV_FS_FDATASYNC,</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> UNLINK = UV_FS_UNLINK,</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> RMDIR = UV_FS_RMDIR,</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> MKDIR = UV_FS_MKDIR,</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> MKDTEMP = UV_FS_MKDTEMP,</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> RENAME = UV_FS_RENAME,</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> SCANDIR = UV_FS_SCANDIR,</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> LINK = UV_FS_LINK,</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> SYMLINK = UV_FS_SYMLINK,</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> READLINK = UV_FS_READLINK,</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> CHOWN = UV_FS_CHOWN,</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> FCHOWN = UV_FS_FCHOWN,</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> REALPATH = UV_FS_REALPATH,</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> COPYFILE = UV_FS_COPYFILE,</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> LCHOWN = UV_FS_LCHOWN,</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> OPENDIR = UV_FS_OPENDIR,</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> READDIR = UV_FS_READDIR,</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> CLOSEDIR = UV_FS_CLOSEDIR,</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> STATFS = UV_FS_STATFS,</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> MKSTEMP = UV_FS_MKSTEMP,</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> LUTIME = UV_FS_LUTIME</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span>};</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> </div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span><span class="keyword">enum class</span> uvw_dirent_type_t : std::underlying_type_t&lt;uv_dirent_type_t&gt; {</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> UNKNOWN = UV_DIRENT_UNKNOWN,</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> FILE = UV_DIRENT_FILE,</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> DIR = UV_DIRENT_DIR,</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> LINK = UV_DIRENT_LINK,</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> FIFO = UV_DIRENT_FIFO,</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> SOCKET = UV_DIRENT_SOCKET,</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> CHAR = UV_DIRENT_CHAR,</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> BLOCK = UV_DIRENT_BLOCK</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span>};</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> </div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span><span class="keyword">enum class</span> uvw_file_open_flags : <span class="keywordtype">int</span> {</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> APPEND = UV_FS_O_APPEND,</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> CREAT = UV_FS_O_CREAT,</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> DIRECT = UV_FS_O_DIRECT,</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> DIRECTORY = UV_FS_O_DIRECTORY,</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> DSYNC = UV_FS_O_DSYNC,</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> EXCL = UV_FS_O_EXCL,</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> EXLOCK = UV_FS_O_EXLOCK,</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> FILEMAP = UV_FS_O_FILEMAP,</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> NOATIME = UV_FS_O_NOATIME,</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> NOCTTY = UV_FS_O_NOCTTY,</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> NOFOLLOW = UV_FS_O_NOFOLLOW,</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> NONBLOCK = UV_FS_O_NONBLOCK,</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> RANDOM = UV_FS_O_RANDOM,</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> RDONLY = UV_FS_O_RDONLY,</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> RDWR = UV_FS_O_RDWR,</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> SEQUENTIAL = UV_FS_O_SEQUENTIAL,</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> SHORT_LIVED = UV_FS_O_SHORT_LIVED,</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> SYMLINK = UV_FS_O_SYMLINK,</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> SYNC = UV_FS_O_SYNC,</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> TEMPORARY = UV_FS_O_TEMPORARY,</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> TRUNC = UV_FS_O_TRUNC,</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> WRONLY = UV_FS_O_WRONLY,</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> _UVW_ENUM = 0</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span>};</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> </div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span><span class="keyword">enum class</span> uvw_copy_file_flags : <span class="keywordtype">int</span> {</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> EXCL = UV_FS_COPYFILE_EXCL,</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> FICLONE = UV_FS_COPYFILE_FICLONE,</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> FICLONE_FORCE = UV_FS_COPYFILE_FICLONE_FORCE,</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> _UVW_ENUM = 0</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span>};</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> </div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span><span class="keyword">enum class</span> uvw_symlink_flags : <span class="keywordtype">int</span> {</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> DIR = UV_FS_SYMLINK_DIR,</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> JUNCTION = UV_FS_SYMLINK_JUNCTION,</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> _UVW_ENUM = 0</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span>};</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> </div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span>} <span class="comment">// namespace details</span></div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> </div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"><a class="line" href="structuvw_1_1fs__event.html"> 160</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structuvw_1_1fs__event.html">fs_event</a> {</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> <span class="keyword">using </span>fs_type = details::uvw_fs_type;</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> <span class="keyword">using </span>entry_type = details::uvw_dirent_type_t;</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> </div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> <a class="code hl_struct" href="structuvw_1_1fs__event.html">fs_event</a>(<span class="keyword">const</span> uv_fs_t &amp;req, std::unique_ptr&lt;<span class="keyword">const</span> <span class="keywordtype">char</span>[]&gt; <a class="code hl_variable" href="structuvw_1_1fs__event.html#a875f46b4b423cf1a07d7b88fd47450b3">data</a>)</div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> : <a class="code hl_struct" href="structuvw_1_1fs__event.html">fs_event</a>{req} {</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> read.data = std::move(<a class="code hl_variable" href="structuvw_1_1fs__event.html#a875f46b4b423cf1a07d7b88fd47450b3">data</a>);</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> }</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> </div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> <a class="code hl_struct" href="structuvw_1_1fs__event.html">fs_event</a>(<span class="keyword">const</span> uv_fs_t &amp;req)</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> : <a class="code hl_variable" href="structuvw_1_1fs__event.html#aba6a074fbe67e23eb320fa916f10a2ea">type</a>{req.fs_type},</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> <a class="code hl_variable" href="structuvw_1_1fs__event.html#a8360c0c11f32c8ddf1edfdc3808d2108">path</a>{req.path},</div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> <a class="code hl_variable" href="structuvw_1_1fs__event.html#a268a71d07c15d81cb384a0657cb708ce">result</a>{<span class="keyword">static_cast&lt;</span>std::size_t<span class="keyword">&gt;</span>(req.result)} {</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> <span class="keywordflow">switch</span>(<a class="code hl_variable" href="structuvw_1_1fs__event.html#aba6a074fbe67e23eb320fa916f10a2ea">type</a>) {</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> <span class="keywordflow">case</span> fs_type::STAT:</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> <span class="keywordflow">case</span> fs_type::LSTAT:</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> <span class="keywordflow">case</span> fs_type::FSTAT:</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> <a class="code hl_variable" href="structuvw_1_1fs__event.html#a4bdc7cb85d905420d20c9b9e8adab56d">stat</a> = *<span class="keyword">static_cast&lt;</span><a class="code hl_typedef" href="namespaceuvw.html#a7f8333af7e3de1e46417f57d930c636e">file_info</a> *<span class="keyword">&gt;</span>(req.ptr);</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> <span class="keywordflow">case</span> fs_type::READLINK:</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> readlink.data = <span class="keyword">static_cast&lt;</span><span class="keywordtype">char</span> *<span class="keyword">&gt;</span>(req.ptr);</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> <span class="keywordflow">case</span> fs_type::READDIR:</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> dirent.name = <span class="keyword">static_cast&lt;</span>uv_dir_t *<span class="keyword">&gt;</span>(req.ptr)-&gt;dirents[0].<a class="code hl_variable" href="structuvw_1_1fs__event.html#a5d208a113e76c46fda4c6ed58bb9fb69">name</a>;</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> dirent.type = <span class="keyword">static_cast&lt;</span>entry_type<span class="keyword">&gt;</span>(<span class="keyword">static_cast&lt;</span>uv_dir_t *<span class="keyword">&gt;</span>(req.ptr)-&gt;dirents[0].<a class="code hl_variable" href="structuvw_1_1fs__event.html#aba6a074fbe67e23eb320fa916f10a2ea">type</a>);</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> dirent.eos = !req.result;</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> <span class="keywordflow">case</span> fs_type::STATFS:</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> <a class="code hl_variable" href="structuvw_1_1fs__event.html#a5bffdfd4d1dbb0f019d8ed4c5e07cef6">statfs</a> = *<span class="keyword">static_cast&lt;</span><a class="code hl_typedef" href="namespaceuvw.html#ae0ae6e7fc2c6760fd0c8311b62a1b8dd">fs_info</a> *<span class="keyword">&gt;</span>(req.ptr);</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> <span class="keywordflow">default</span>:</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> <span class="comment">// nothing to do here</span></div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> }</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> }</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> </div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"><a class="line" href="structuvw_1_1fs__event.html#aba6a074fbe67e23eb320fa916f10a2ea"> 196</a></span> fs_type <a class="code hl_variable" href="structuvw_1_1fs__event.html#aba6a074fbe67e23eb320fa916f10a2ea">type</a>; </div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"><a class="line" href="structuvw_1_1fs__event.html#a8360c0c11f32c8ddf1edfdc3808d2108"> 197</a></span> <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code hl_variable" href="structuvw_1_1fs__event.html#a8360c0c11f32c8ddf1edfdc3808d2108">path</a>; </div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"><a class="line" href="structuvw_1_1fs__event.html#a268a71d07c15d81cb384a0657cb708ce"> 198</a></span> std::size_t <a class="code hl_variable" href="structuvw_1_1fs__event.html#a268a71d07c15d81cb384a0657cb708ce">result</a>; </div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> <span class="keyword">struct </span>{</div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"><a class="line" href="structuvw_1_1fs__event.html#a875f46b4b423cf1a07d7b88fd47450b3"> 201</a></span> std::unique_ptr&lt;const char[]&gt; <a class="code hl_variable" href="structuvw_1_1fs__event.html#a875f46b4b423cf1a07d7b88fd47450b3">data</a>; </div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> } read;</div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> </div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> <span class="keyword">struct </span>{</div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"><a class="line" href="structuvw_1_1fs__event.html#ac9a38d48b4d30f3ad3c2b3d227182465"> 205</a></span> <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code hl_variable" href="structuvw_1_1fs__event.html#ac9a38d48b4d30f3ad3c2b3d227182465">data</a>; </div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> } readlink;</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> </div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"><a class="line" href="structuvw_1_1fs__event.html#a4bdc7cb85d905420d20c9b9e8adab56d"> 208</a></span> <a class="code hl_typedef" href="namespaceuvw.html#a7f8333af7e3de1e46417f57d930c636e">file_info</a> <a class="code hl_variable" href="structuvw_1_1fs__event.html#a4bdc7cb85d905420d20c9b9e8adab56d">stat</a>; </div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"><a class="line" href="structuvw_1_1fs__event.html#a5bffdfd4d1dbb0f019d8ed4c5e07cef6"> 209</a></span> <a class="code hl_typedef" href="namespaceuvw.html#ae0ae6e7fc2c6760fd0c8311b62a1b8dd">fs_info</a> <a class="code hl_variable" href="structuvw_1_1fs__event.html#a5bffdfd4d1dbb0f019d8ed4c5e07cef6">statfs</a>; </div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> <span class="keyword">struct </span>{</div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"><a class="line" href="structuvw_1_1fs__event.html#a5d208a113e76c46fda4c6ed58bb9fb69"> 212</a></span> <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code hl_variable" href="structuvw_1_1fs__event.html#a5d208a113e76c46fda4c6ed58bb9fb69">name</a>; </div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"><a class="line" href="structuvw_1_1fs__event.html#a9a12e3b532a77c7ef9a2f72b64601cf4"> 213</a></span> entry_type <a class="code hl_variable" href="structuvw_1_1fs__event.html#a9a12e3b532a77c7ef9a2f72b64601cf4">type</a>; </div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"><a class="line" href="structuvw_1_1fs__event.html#a95c2cf7fe72fa263a8d36bbc9ea45d44"> 214</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structuvw_1_1fs__event.html#a95c2cf7fe72fa263a8d36bbc9ea45d44">eos</a>; </div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span> } dirent;</div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span>};</div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span> </div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__request.html"> 224</a></span><span class="keyword">class </span><a class="code hl_class" href="classuvw_1_1fs__request.html">fs_request</a>: <span class="keyword">public</span> <a class="code hl_class" href="classuvw_1_1request.html">request</a>&lt;T, uv_fs_t, fs_event&gt; {</div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span><span class="keyword">protected</span>:</div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span> <span class="keyword">static</span> <span class="keywordtype">void</span> fs_request_callback(uv_fs_t *req) {</div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"> 227</span> <span class="keywordflow">if</span>(<span class="keyword">auto</span> ptr = <a class="code hl_class" href="classuvw_1_1request.html">request&lt;T, uv_fs_t, fs_event&gt;::reserve</a>(req); req-&gt;result &lt; 0) {</div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span> ptr-&gt;publish(<a class="code hl_struct" href="structuvw_1_1error__event.html">error_event</a>{req-&gt;result});</div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"> 229</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span> ptr-&gt;publish(<a class="code hl_struct" href="structuvw_1_1fs__event.html">fs_event</a>{*req});</div>
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"> 231</span> }</div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"> 232</span> }</div>
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"> 233</span> </div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"> 234</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span> <span class="keyword">using </span>time = std::chrono::duration&lt;double&gt;;</div>
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span> <span class="keyword">using </span>fs_type = details::uvw_fs_type;</div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span> <span class="keyword">using </span>entry_type = details::uvw_dirent_type_t;</div>
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"> 238</span> </div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"> 239</span> <span class="keyword">using </span><a class="code hl_class" href="classuvw_1_1request.html">request</a>&lt;T, uv_fs_t, <a class="code hl_struct" href="structuvw_1_1fs__event.html">fs_event</a>&gt;::request;</div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span>};</div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> </div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html"> 254</a></span><span class="keyword">class </span><a class="code hl_class" href="classuvw_1_1file__req.html">file_req</a> final: <span class="keyword">public</span> <a class="code hl_class" href="classuvw_1_1fs__request.html">fs_request</a>&lt;file_req&gt; {</div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> <span class="keyword">static</span> <span class="keyword">constexpr</span> uv_file BAD_FD = -1;</div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span> </div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span> <span class="keyword">static</span> <span class="keywordtype">void</span> fs_open_callback(uv_fs_t *req);</div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> <span class="keyword">static</span> <span class="keywordtype">void</span> fs_close_callback(uv_fs_t *req);</div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span> <span class="keyword">static</span> <span class="keywordtype">void</span> fs_read_callback(uv_fs_t *req);</div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> </div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"> 262</span> <span class="keyword">using </span>file_open_flags = details::uvw_file_open_flags;</div>
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span> </div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span> <span class="keyword">using </span>fs_request::fs_request;</div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span> </div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> <a class="code hl_class" href="classuvw_1_1file__req.html">~file_req</a>() <span class="keyword">noexcept</span>;</div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"> 267</span> </div>
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#a465edff6a2f7fc5ddcd0b3b3fa375843"> 273</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1file__req.html#a465edff6a2f7fc5ddcd0b3b3fa375843">close</a>();</div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span> </div>
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#a9ec6d8b8e723d1a7abddbf081ca83f74"> 279</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1file__req.html#a9ec6d8b8e723d1a7abddbf081ca83f74">close_sync</a>();</div>
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span> </div>
<div class="line"><a id="l00319" name="l00319"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#ad938727a93ddaf24ade95fd19fdf232d"> 319</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1file__req.html#ad938727a93ddaf24ade95fd19fdf232d">open</a>(<span class="keyword">const</span> std::string &amp;path, file_open_flags flags, <span class="keywordtype">int</span> mode);</div>
<div class="line"><a id="l00320" name="l00320"></a><span class="lineno"> 320</span> </div>
<div class="line"><a id="l00358" name="l00358"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#ac236103144b9ee9b4159c488f2fb7889"> 358</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1file__req.html#ac236103144b9ee9b4159c488f2fb7889">open_sync</a>(<span class="keyword">const</span> std::string &amp;path, file_open_flags flags, <span class="keywordtype">int</span> mode);</div>
<div class="line"><a id="l00359" name="l00359"></a><span class="lineno"> 359</span> </div>
<div class="line"><a id="l00368" name="l00368"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#ad7723ecb676ae46d11b3f783cf637132"> 368</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1file__req.html#ad7723ecb676ae46d11b3f783cf637132">read</a>(int64_t offset, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> len);</div>
<div class="line"><a id="l00369" name="l00369"></a><span class="lineno"> 369</span> </div>
<div class="line"><a id="l00382" name="l00382"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#abbfbc1d3e729d09ea94594d880ea51ca"> 382</a></span> std::pair&lt;bool, std::pair&lt;std::unique_ptr&lt;const char[]&gt;, std::size_t&gt;&gt; <a class="code hl_function" href="classuvw_1_1file__req.html#abbfbc1d3e729d09ea94594d880ea51ca">read_sync</a>(int64_t offset, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> len);</div>
<div class="line"><a id="l00383" name="l00383"></a><span class="lineno"> 383</span> </div>
<div class="line"><a id="l00396" name="l00396"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#a370553e4a107433a5683cb12ab2fc8ec"> 396</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1file__req.html#a370553e4a107433a5683cb12ab2fc8ec">write</a>(std::unique_ptr&lt;<span class="keywordtype">char</span>[]&gt; buf, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> len, int64_t offset);</div>
<div class="line"><a id="l00397" name="l00397"></a><span class="lineno"> 397</span> </div>
<div class="line"><a id="l00410" name="l00410"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#ac8e7fd07e881b6d5822396c5e1687f21"> 410</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1file__req.html#ac8e7fd07e881b6d5822396c5e1687f21">write</a>(<span class="keywordtype">char</span> *buf, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> len, int64_t offset);</div>
<div class="line"><a id="l00411" name="l00411"></a><span class="lineno"> 411</span> </div>
<div class="line"><a id="l00423" name="l00423"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#a3de93f28af13fd9f2787479af05077ce"> 423</a></span> std::pair&lt;bool, std::size_t&gt; <a class="code hl_function" href="classuvw_1_1file__req.html#a3de93f28af13fd9f2787479af05077ce">write_sync</a>(std::unique_ptr&lt;<span class="keywordtype">char</span>[]&gt; buf, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> len, int64_t offset);</div>
<div class="line"><a id="l00424" name="l00424"></a><span class="lineno"> 424</span> </div>
<div class="line"><a id="l00430" name="l00430"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#adff17b7cd4d9b96d055873ba2a3b47c8"> 430</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1file__req.html#adff17b7cd4d9b96d055873ba2a3b47c8">stat</a>();</div>
<div class="line"><a id="l00431" name="l00431"></a><span class="lineno"> 431</span> </div>
<div class="line"><a id="l00439" name="l00439"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#a5185d8317db5de9d1a12f5f26ef87629"> 439</a></span> std::pair&lt;bool, file_info&gt; <a class="code hl_function" href="classuvw_1_1file__req.html#a5185d8317db5de9d1a12f5f26ef87629">stat_sync</a>();</div>
<div class="line"><a id="l00440" name="l00440"></a><span class="lineno"> 440</span> </div>
<div class="line"><a id="l00446" name="l00446"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#a52bb20eebc87231dc276a36842e672ed"> 446</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1file__req.html#a52bb20eebc87231dc276a36842e672ed">sync</a>();</div>
<div class="line"><a id="l00447" name="l00447"></a><span class="lineno"> 447</span> </div>
<div class="line"><a id="l00452" name="l00452"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#af5d6ab96e7b9621a232e25435a77184e"> 452</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1file__req.html#af5d6ab96e7b9621a232e25435a77184e">sync_sync</a>();</div>
<div class="line"><a id="l00453" name="l00453"></a><span class="lineno"> 453</span> </div>
<div class="line"><a id="l00459" name="l00459"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#a7a93bc8e3efd8a37aaa39e2e678f7640"> 459</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1file__req.html#a7a93bc8e3efd8a37aaa39e2e678f7640">datasync</a>();</div>
<div class="line"><a id="l00460" name="l00460"></a><span class="lineno"> 460</span> </div>
<div class="line"><a id="l00465" name="l00465"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#a290ee459502cfe95045d325cf2eb863f"> 465</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1file__req.html#a290ee459502cfe95045d325cf2eb863f">datasync_sync</a>();</div>
<div class="line"><a id="l00466" name="l00466"></a><span class="lineno"> 466</span> </div>
<div class="line"><a id="l00474" name="l00474"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#ade838576c44bfaca992e8b5c1c68040c"> 474</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1file__req.html#ade838576c44bfaca992e8b5c1c68040c">truncate</a>(int64_t offset);</div>
<div class="line"><a id="l00475" name="l00475"></a><span class="lineno"> 475</span> </div>
<div class="line"><a id="l00481" name="l00481"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#afc92909f482a4f470d8d1bebf0b687ac"> 481</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1file__req.html#afc92909f482a4f470d8d1bebf0b687ac">truncate_sync</a>(int64_t offset);</div>
<div class="line"><a id="l00482" name="l00482"></a><span class="lineno"> 482</span> </div>
<div class="line"><a id="l00492" name="l00492"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#a635b5b7d064e09dee3c8d85ec7170ba6"> 492</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1file__req.html#a635b5b7d064e09dee3c8d85ec7170ba6">sendfile</a>(<a class="code hl_typedef" href="namespaceuvw.html#a28622e02bfff09ba6cf8a86a929917ee">file_handle</a> out, int64_t offset, std::size_t length);</div>
<div class="line"><a id="l00493" name="l00493"></a><span class="lineno"> 493</span> </div>
<div class="line"><a id="l00505" name="l00505"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#a12ba5927e22fc7d45aaa98db5454d07c"> 505</a></span> std::pair&lt;bool, std::size_t&gt; <a class="code hl_function" href="classuvw_1_1file__req.html#a12ba5927e22fc7d45aaa98db5454d07c">sendfile_sync</a>(<a class="code hl_typedef" href="namespaceuvw.html#a28622e02bfff09ba6cf8a86a929917ee">file_handle</a> out, int64_t offset, std::size_t length);</div>
<div class="line"><a id="l00506" name="l00506"></a><span class="lineno"> 506</span> </div>
<div class="line"><a id="l00514" name="l00514"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#a6b6955e2e845a7295b6a47f72d7d1ea0"> 514</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1file__req.html#a6b6955e2e845a7295b6a47f72d7d1ea0">chmod</a>(<span class="keywordtype">int</span> mode);</div>
<div class="line"><a id="l00515" name="l00515"></a><span class="lineno"> 515</span> </div>
<div class="line"><a id="l00521" name="l00521"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#a53668d54b035ee22dd00c209ca407b02"> 521</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1file__req.html#a53668d54b035ee22dd00c209ca407b02">chmod_sync</a>(<span class="keywordtype">int</span> mode);</div>
<div class="line"><a id="l00522" name="l00522"></a><span class="lineno"> 522</span> </div>
<div class="line"><a id="l00533" name="l00533"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#aace86b402ab343c7ae26be49d8e52547"> 533</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1file__req.html#aace86b402ab343c7ae26be49d8e52547">futime</a>(time atime, time mtime);</div>
<div class="line"><a id="l00534" name="l00534"></a><span class="lineno"> 534</span> </div>
<div class="line"><a id="l00543" name="l00543"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#aa2bc09d50dd5ebebff9a9243189bcd73"> 543</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1file__req.html#aa2bc09d50dd5ebebff9a9243189bcd73">futime_sync</a>(time atime, time mtime);</div>
<div class="line"><a id="l00544" name="l00544"></a><span class="lineno"> 544</span> </div>
<div class="line"><a id="l00553" name="l00553"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#a3000cd6f6cb184727c18f7f8dcf3bc95"> 553</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1file__req.html#a3000cd6f6cb184727c18f7f8dcf3bc95">chown</a>(<a class="code hl_typedef" href="namespaceuvw.html#a0ce5f6829814d65c5087566b9e4a6a2e">uid_type</a> uid, <a class="code hl_typedef" href="namespaceuvw.html#a496a2034d9041b1d7813317f83ab6623">gid_type</a> gid);</div>
<div class="line"><a id="l00554" name="l00554"></a><span class="lineno"> 554</span> </div>
<div class="line"><a id="l00561" name="l00561"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#a3bc4fbc5ae4277d17ba1af339af4a162"> 561</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1file__req.html#a3bc4fbc5ae4277d17ba1af339af4a162">chown_sync</a>(<a class="code hl_typedef" href="namespaceuvw.html#a0ce5f6829814d65c5087566b9e4a6a2e">uid_type</a> uid, <a class="code hl_typedef" href="namespaceuvw.html#a496a2034d9041b1d7813317f83ab6623">gid_type</a> gid);</div>
<div class="line"><a id="l00562" name="l00562"></a><span class="lineno"> 562</span> </div>
<div class="line"><a id="l00571" name="l00571"></a><span class="lineno"><a class="line" href="classuvw_1_1file__req.html#ac369c73f3fabb45c1f1fa7439a478acd"> 571</a></span> <span class="keyword">operator</span> <a class="code hl_typedef" href="namespaceuvw.html#a28622e02bfff09ba6cf8a86a929917ee">file_handle</a>() const noexcept;</div>
<div class="line"><a id="l00572" name="l00572"></a><span class="lineno"> 572</span> </div>
<div class="line"><a id="l00573" name="l00573"></a><span class="lineno"> 573</span>private:</div>
<div class="line"><a id="l00574" name="l00574"></a><span class="lineno"> 574</span> std::unique_ptr&lt;<span class="keywordtype">char</span>[]&gt; current{<span class="keyword">nullptr</span>};</div>
<div class="line"><a id="l00575" name="l00575"></a><span class="lineno"> 575</span> uv_buf_t buffer{};</div>
<div class="line"><a id="l00576" name="l00576"></a><span class="lineno"> 576</span> uv_file file{BAD_FD};</div>
<div class="line"><a id="l00577" name="l00577"></a><span class="lineno"> 577</span>};</div>
<div class="line"><a id="l00578" name="l00578"></a><span class="lineno"> 578</span> </div>
<div class="line"><a id="l00591" name="l00591"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html"> 591</a></span><span class="keyword">class </span><a class="code hl_class" href="classuvw_1_1fs__req.html">fs_req</a> final: <span class="keyword">public</span> <a class="code hl_class" href="classuvw_1_1fs__request.html">fs_request</a>&lt;fs_req&gt; {</div>
<div class="line"><a id="l00592" name="l00592"></a><span class="lineno"> 592</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00593" name="l00593"></a><span class="lineno"> 593</span> <span class="keyword">using </span>copy_file_flags = details::uvw_copy_file_flags;</div>
<div class="line"><a id="l00594" name="l00594"></a><span class="lineno"> 594</span> <span class="keyword">using </span>symlink_flags = details::uvw_symlink_flags;</div>
<div class="line"><a id="l00595" name="l00595"></a><span class="lineno"> 595</span> </div>
<div class="line"><a id="l00596" name="l00596"></a><span class="lineno"> 596</span> <span class="keyword">using </span>fs_request::fs_request;</div>
<div class="line"><a id="l00597" name="l00597"></a><span class="lineno"> 597</span> </div>
<div class="line"><a id="l00598" name="l00598"></a><span class="lineno"> 598</span> <a class="code hl_class" href="classuvw_1_1fs__req.html">~fs_req</a>() <span class="keyword">noexcept</span>;</div>
<div class="line"><a id="l00599" name="l00599"></a><span class="lineno"> 599</span> </div>
<div class="line"><a id="l00607" name="l00607"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a99bce8dcdc8c408b2082e83a4c94c8da"> 607</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a99bce8dcdc8c408b2082e83a4c94c8da">unlink</a>(<span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l00608" name="l00608"></a><span class="lineno"> 608</span> </div>
<div class="line"><a id="l00614" name="l00614"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a7075ddf00f30876fb5afbebcce94811c"> 614</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a7075ddf00f30876fb5afbebcce94811c">unlink_sync</a>(<span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l00615" name="l00615"></a><span class="lineno"> 615</span> </div>
<div class="line"><a id="l00624" name="l00624"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#aa99d614127d51cd82f33ed80a5d6d81c"> 624</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#aa99d614127d51cd82f33ed80a5d6d81c">mkdir</a>(<span class="keyword">const</span> std::string &amp;path, <span class="keywordtype">int</span> mode);</div>
<div class="line"><a id="l00625" name="l00625"></a><span class="lineno"> 625</span> </div>
<div class="line"><a id="l00632" name="l00632"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a328e77d91611be65ab389f360752ae0c"> 632</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a328e77d91611be65ab389f360752ae0c">mkdir_sync</a>(<span class="keyword">const</span> std::string &amp;path, <span class="keywordtype">int</span> mode);</div>
<div class="line"><a id="l00633" name="l00633"></a><span class="lineno"> 633</span> </div>
<div class="line"><a id="l00641" name="l00641"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a16c3ccca89a6f9f2247c60f7f42c1c38"> 641</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a16c3ccca89a6f9f2247c60f7f42c1c38">mkdtemp</a>(<span class="keyword">const</span> std::string &amp;tpl);</div>
<div class="line"><a id="l00642" name="l00642"></a><span class="lineno"> 642</span> </div>
<div class="line"><a id="l00652" name="l00652"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a77be2d8dc95f2959d70ede04cc8e57a6"> 652</a></span> std::pair&lt;bool, const char *&gt; <a class="code hl_function" href="classuvw_1_1fs__req.html#a77be2d8dc95f2959d70ede04cc8e57a6">mkdtemp_sync</a>(<span class="keyword">const</span> std::string &amp;tpl);</div>
<div class="line"><a id="l00653" name="l00653"></a><span class="lineno"> 653</span> </div>
<div class="line"><a id="l00661" name="l00661"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#adbb356149f58a0af939422d56f8dbbf9"> 661</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#adbb356149f58a0af939422d56f8dbbf9">mkstemp</a>(<span class="keyword">const</span> std::string &amp;tpl);</div>
<div class="line"><a id="l00662" name="l00662"></a><span class="lineno"> 662</span> </div>
<div class="line"><a id="l00683" name="l00683"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#aaa36afa5541a24f1e64dab9019d1d4a0"> 683</a></span> std::pair&lt;bool, std::pair&lt;std::string, std::size_t&gt;&gt; <a class="code hl_function" href="classuvw_1_1fs__req.html#aaa36afa5541a24f1e64dab9019d1d4a0">mkstemp_sync</a>(<span class="keyword">const</span> std::string &amp;tpl);</div>
<div class="line"><a id="l00684" name="l00684"></a><span class="lineno"> 684</span> </div>
<div class="line"><a id="l00696" name="l00696"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a3846ebf228eb727cd2c01b4eaee5f1e0"> 696</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a3846ebf228eb727cd2c01b4eaee5f1e0">lutime</a>(<span class="keyword">const</span> std::string &amp;path, time atime, time mtime);</div>
<div class="line"><a id="l00697" name="l00697"></a><span class="lineno"> 697</span> </div>
<div class="line"><a id="l00707" name="l00707"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a063a7156f5c1027ecf515ef484b1ec3b"> 707</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a063a7156f5c1027ecf515ef484b1ec3b">lutime_sync</a>(<span class="keyword">const</span> std::string &amp;path, time atime, time mtime);</div>
<div class="line"><a id="l00708" name="l00708"></a><span class="lineno"> 708</span> </div>
<div class="line"><a id="l00716" name="l00716"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#af4a80f4c4064736bdfb94e6d5b826da5"> 716</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#af4a80f4c4064736bdfb94e6d5b826da5">rmdir</a>(<span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l00717" name="l00717"></a><span class="lineno"> 717</span> </div>
<div class="line"><a id="l00723" name="l00723"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a1d8412294116b35b5fb2ac0b1571c73a"> 723</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a1d8412294116b35b5fb2ac0b1571c73a">rmdir_sync</a>(<span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l00724" name="l00724"></a><span class="lineno"> 724</span> </div>
<div class="line"><a id="l00733" name="l00733"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#af7308a353dccae7553d1b061036fb5c8"> 733</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#af7308a353dccae7553d1b061036fb5c8">scandir</a>(<span class="keyword">const</span> std::string &amp;path, <span class="keywordtype">int</span> flags);</div>
<div class="line"><a id="l00734" name="l00734"></a><span class="lineno"> 734</span> </div>
<div class="line"><a id="l00745" name="l00745"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a5a352250528afacb1d2e933eb03b6a89"> 745</a></span> std::pair&lt;bool, std::size_t&gt; <a class="code hl_function" href="classuvw_1_1fs__req.html#a5a352250528afacb1d2e933eb03b6a89">scandir_sync</a>(<span class="keyword">const</span> std::string &amp;path, <span class="keywordtype">int</span> flags);</div>
<div class="line"><a id="l00746" name="l00746"></a><span class="lineno"> 746</span> </div>
<div class="line"><a id="l00776" name="l00776"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#ac93a57be902068cf21988802786a5efd"> 776</a></span> std::pair&lt;bool, std::pair&lt;entry_type, const char *&gt;&gt; <a class="code hl_function" href="classuvw_1_1fs__req.html#ac93a57be902068cf21988802786a5efd">scandir_next</a>();</div>
<div class="line"><a id="l00777" name="l00777"></a><span class="lineno"> 777</span> </div>
<div class="line"><a id="l00785" name="l00785"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#af7cebc8520c462bbf5dca01ad9b4b6dd"> 785</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#af7cebc8520c462bbf5dca01ad9b4b6dd">stat</a>(<span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l00786" name="l00786"></a><span class="lineno"> 786</span> </div>
<div class="line"><a id="l00796" name="l00796"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a534b0fdf5aa1451937a4b771c077171e"> 796</a></span> std::pair&lt;bool, file_info&gt; <a class="code hl_function" href="classuvw_1_1fs__req.html#a534b0fdf5aa1451937a4b771c077171e">stat_sync</a>(<span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l00797" name="l00797"></a><span class="lineno"> 797</span> </div>
<div class="line"><a id="l00805" name="l00805"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#ada5850ce91d82bb10f89aaa88c35f7fa"> 805</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#ada5850ce91d82bb10f89aaa88c35f7fa">lstat</a>(<span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l00806" name="l00806"></a><span class="lineno"> 806</span> </div>
<div class="line"><a id="l00816" name="l00816"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#abc7f0e6d57afb1ab6f15920a938f8105"> 816</a></span> std::pair&lt;bool, file_info&gt; <a class="code hl_function" href="classuvw_1_1fs__req.html#abc7f0e6d57afb1ab6f15920a938f8105">lstat_sync</a>(<span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l00817" name="l00817"></a><span class="lineno"> 817</span> </div>
<div class="line"><a id="l00828" name="l00828"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#aea6768d00e50d1be2dfb6258e5e8ff62"> 828</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#aea6768d00e50d1be2dfb6258e5e8ff62">statfs</a>(<span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l00829" name="l00829"></a><span class="lineno"> 829</span> </div>
<div class="line"><a id="l00842" name="l00842"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a8d9dd0b8131360969b4140a4748d3881"> 842</a></span> std::pair&lt;bool, fs_info&gt; <a class="code hl_function" href="classuvw_1_1fs__req.html#a8d9dd0b8131360969b4140a4748d3881">statfs_sync</a>(<span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l00843" name="l00843"></a><span class="lineno"> 843</span> </div>
<div class="line"><a id="l00852" name="l00852"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a6bd2e91fe0b69ed2076ea9828c1f3070"> 852</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a6bd2e91fe0b69ed2076ea9828c1f3070">rename</a>(<span class="keyword">const</span> std::string &amp;old, <span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l00853" name="l00853"></a><span class="lineno"> 853</span> </div>
<div class="line"><a id="l00860" name="l00860"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a816a3aded00313baf4f3617233ff6e7f"> 860</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a816a3aded00313baf4f3617233ff6e7f">rename_sync</a>(<span class="keyword">const</span> std::string &amp;old, <span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l00861" name="l00861"></a><span class="lineno"> 861</span> </div>
<div class="line"><a id="l00889" name="l00889"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a4050bda04dbeb9f64241cb5993616d9a"> 889</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a4050bda04dbeb9f64241cb5993616d9a">copyfile</a>(<span class="keyword">const</span> std::string &amp;old, <span class="keyword">const</span> std::string &amp;path, copy_file_flags flags = copy_file_flags::_UVW_ENUM);</div>
<div class="line"><a id="l00890" name="l00890"></a><span class="lineno"> 890</span> </div>
<div class="line"><a id="l00910" name="l00910"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a3970f8ad47d6b36dedde7a3296995419"> 910</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a3970f8ad47d6b36dedde7a3296995419">copyfile_sync</a>(<span class="keyword">const</span> std::string &amp;old, <span class="keyword">const</span> std::string &amp;path, copy_file_flags flags = copy_file_flags::_UVW_ENUM);</div>
<div class="line"><a id="l00911" name="l00911"></a><span class="lineno"> 911</span> </div>
<div class="line"><a id="l00920" name="l00920"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a46969ea8b7e112b5a4bee8f511f8fe10"> 920</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a46969ea8b7e112b5a4bee8f511f8fe10">access</a>(<span class="keyword">const</span> std::string &amp;path, <span class="keywordtype">int</span> mode);</div>
<div class="line"><a id="l00921" name="l00921"></a><span class="lineno"> 921</span> </div>
<div class="line"><a id="l00928" name="l00928"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a61fe18fb557ec9b50122dcc14b2e70e0"> 928</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a61fe18fb557ec9b50122dcc14b2e70e0">access_sync</a>(<span class="keyword">const</span> std::string &amp;path, <span class="keywordtype">int</span> mode);</div>
<div class="line"><a id="l00929" name="l00929"></a><span class="lineno"> 929</span> </div>
<div class="line"><a id="l00938" name="l00938"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a5fac1d4b1e320d69f055b6a9793e7758"> 938</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a5fac1d4b1e320d69f055b6a9793e7758">chmod</a>(<span class="keyword">const</span> std::string &amp;path, <span class="keywordtype">int</span> mode);</div>
<div class="line"><a id="l00939" name="l00939"></a><span class="lineno"> 939</span> </div>
<div class="line"><a id="l00946" name="l00946"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a9a6804d647a84523336cb9c45b31f3a7"> 946</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a9a6804d647a84523336cb9c45b31f3a7">chmod_sync</a>(<span class="keyword">const</span> std::string &amp;path, <span class="keywordtype">int</span> mode);</div>
<div class="line"><a id="l00947" name="l00947"></a><span class="lineno"> 947</span> </div>
<div class="line"><a id="l00959" name="l00959"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a501652024d76d5c8795f36b5dd7168c9"> 959</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a501652024d76d5c8795f36b5dd7168c9">utime</a>(<span class="keyword">const</span> std::string &amp;path, time atime, time mtime);</div>
<div class="line"><a id="l00960" name="l00960"></a><span class="lineno"> 960</span> </div>
<div class="line"><a id="l00970" name="l00970"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a3af58fd350f85a8bbf28a2f2b05fe055"> 970</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a3af58fd350f85a8bbf28a2f2b05fe055">utime_sync</a>(<span class="keyword">const</span> std::string &amp;path, time atime, time mtime);</div>
<div class="line"><a id="l00971" name="l00971"></a><span class="lineno"> 971</span> </div>
<div class="line"><a id="l00980" name="l00980"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a5c7baf9d368769495bbcef8054724730"> 980</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a5c7baf9d368769495bbcef8054724730">link</a>(<span class="keyword">const</span> std::string &amp;old, <span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l00981" name="l00981"></a><span class="lineno"> 981</span> </div>
<div class="line"><a id="l00988" name="l00988"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#adc1c2ad26a443484112e4d8d6aa5b156"> 988</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#adc1c2ad26a443484112e4d8d6aa5b156">link_sync</a>(<span class="keyword">const</span> std::string &amp;old, <span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l00989" name="l00989"></a><span class="lineno"> 989</span> </div>
<div class="line"><a id="l01006" name="l01006"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a57e76844c4f3e0be00a898b993c4bfab"> 1006</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a57e76844c4f3e0be00a898b993c4bfab">symlink</a>(<span class="keyword">const</span> std::string &amp;old, <span class="keyword">const</span> std::string &amp;path, symlink_flags flags = symlink_flags::_UVW_ENUM);</div>
<div class="line"><a id="l01007" name="l01007"></a><span class="lineno"> 1007</span> </div>
<div class="line"><a id="l01023" name="l01023"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#ace48242168c782f8c90d7b271b7e1108"> 1023</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#ace48242168c782f8c90d7b271b7e1108">symlink_sync</a>(<span class="keyword">const</span> std::string &amp;old, <span class="keyword">const</span> std::string &amp;path, symlink_flags flags = symlink_flags::_UVW_ENUM);</div>
<div class="line"><a id="l01024" name="l01024"></a><span class="lineno"> 1024</span> </div>
<div class="line"><a id="l01032" name="l01032"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a9b4a342e97d47ae1ec4af04deded39c2"> 1032</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a9b4a342e97d47ae1ec4af04deded39c2">readlink</a>(<span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l01033" name="l01033"></a><span class="lineno"> 1033</span> </div>
<div class="line"><a id="l01045" name="l01045"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#abe05419d1b0ceb286e8f2eb19e67097a"> 1045</a></span> std::pair&lt;bool, std::pair&lt;const char *, std::size_t&gt;&gt; <a class="code hl_function" href="classuvw_1_1fs__req.html#abe05419d1b0ceb286e8f2eb19e67097a">readlink_sync</a>(<span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l01046" name="l01046"></a><span class="lineno"> 1046</span> </div>
<div class="line"><a id="l01054" name="l01054"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a8fc1755f4ad573bb26a36d1b2e519a72"> 1054</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a8fc1755f4ad573bb26a36d1b2e519a72">realpath</a>(<span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l01055" name="l01055"></a><span class="lineno"> 1055</span> </div>
<div class="line"><a id="l01065" name="l01065"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#ad09c8eacd50c97fe307d1e04f75c93e0"> 1065</a></span> std::pair&lt;bool, const char *&gt; <a class="code hl_function" href="classuvw_1_1fs__req.html#ad09c8eacd50c97fe307d1e04f75c93e0">realpath_sync</a>(<span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l01066" name="l01066"></a><span class="lineno"> 1066</span> </div>
<div class="line"><a id="l01076" name="l01076"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a43981874a17a38beadd4e77f155d3d83"> 1076</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a43981874a17a38beadd4e77f155d3d83">chown</a>(<span class="keyword">const</span> std::string &amp;path, <a class="code hl_typedef" href="namespaceuvw.html#a0ce5f6829814d65c5087566b9e4a6a2e">uid_type</a> uid, <a class="code hl_typedef" href="namespaceuvw.html#a496a2034d9041b1d7813317f83ab6623">gid_type</a> gid);</div>
<div class="line"><a id="l01077" name="l01077"></a><span class="lineno"> 1077</span> </div>
<div class="line"><a id="l01085" name="l01085"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a4be95518f8313aa54d1348d93e415e68"> 1085</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a4be95518f8313aa54d1348d93e415e68">chown_sync</a>(<span class="keyword">const</span> std::string &amp;path, <a class="code hl_typedef" href="namespaceuvw.html#a0ce5f6829814d65c5087566b9e4a6a2e">uid_type</a> uid, <a class="code hl_typedef" href="namespaceuvw.html#a496a2034d9041b1d7813317f83ab6623">gid_type</a> gid);</div>
<div class="line"><a id="l01086" name="l01086"></a><span class="lineno"> 1086</span> </div>
<div class="line"><a id="l01096" name="l01096"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a914758e4c2ef6cf5a42e08ff4beb0155"> 1096</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a914758e4c2ef6cf5a42e08ff4beb0155">lchown</a>(<span class="keyword">const</span> std::string &amp;path, <a class="code hl_typedef" href="namespaceuvw.html#a0ce5f6829814d65c5087566b9e4a6a2e">uid_type</a> uid, <a class="code hl_typedef" href="namespaceuvw.html#a496a2034d9041b1d7813317f83ab6623">gid_type</a> gid);</div>
<div class="line"><a id="l01097" name="l01097"></a><span class="lineno"> 1097</span> </div>
<div class="line"><a id="l01105" name="l01105"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#adf9d73601817015e42b54733591dbbe9"> 1105</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#adf9d73601817015e42b54733591dbbe9">lchown_sync</a>(<span class="keyword">const</span> std::string &amp;path, <a class="code hl_typedef" href="namespaceuvw.html#a0ce5f6829814d65c5087566b9e4a6a2e">uid_type</a> uid, <a class="code hl_typedef" href="namespaceuvw.html#a496a2034d9041b1d7813317f83ab6623">gid_type</a> gid);</div>
<div class="line"><a id="l01106" name="l01106"></a><span class="lineno"> 1106</span> </div>
<div class="line"><a id="l01118" name="l01118"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a1963175c9aef9b4758c73b2d03ac4468"> 1118</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a1963175c9aef9b4758c73b2d03ac4468">opendir</a>(<span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l01119" name="l01119"></a><span class="lineno"> 1119</span> </div>
<div class="line"><a id="l01130" name="l01130"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a4a4368169a980debb2f0bc84a3569303"> 1130</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a4a4368169a980debb2f0bc84a3569303">opendir_sync</a>(<span class="keyword">const</span> std::string &amp;path);</div>
<div class="line"><a id="l01131" name="l01131"></a><span class="lineno"> 1131</span> </div>
<div class="line"><a id="l01140" name="l01140"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a51f5a31faa61d2adadb59b557b5be00b"> 1140</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a51f5a31faa61d2adadb59b557b5be00b">closedir</a>();</div>
<div class="line"><a id="l01141" name="l01141"></a><span class="lineno"> 1141</span> </div>
<div class="line"><a id="l01150" name="l01150"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#afa8540cee28f01e99fbcdefbef6ea2c1"> 1150</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#afa8540cee28f01e99fbcdefbef6ea2c1">closedir_sync</a>();</div>
<div class="line"><a id="l01151" name="l01151"></a><span class="lineno"> 1151</span> </div>
<div class="line"><a id="l01161" name="l01161"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a3f0de3c54d15cbfa373bc09608ad2e40"> 1161</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classuvw_1_1fs__req.html#a3f0de3c54d15cbfa373bc09608ad2e40">readdir</a>();</div>
<div class="line"><a id="l01162" name="l01162"></a><span class="lineno"> 1162</span> </div>
<div class="line"><a id="l01196" name="l01196"></a><span class="lineno"><a class="line" href="classuvw_1_1fs__req.html#a2cdc4f072bab357cd0321c582b06ee6d"> 1196</a></span> std::pair&lt;bool, std::pair&lt;entry_type, const char *&gt;&gt; <a class="code hl_function" href="classuvw_1_1fs__req.html#a2cdc4f072bab357cd0321c582b06ee6d">readdir_sync</a>();</div>
<div class="line"><a id="l01197" name="l01197"></a><span class="lineno"> 1197</span> </div>
<div class="line"><a id="l01198" name="l01198"></a><span class="lineno"> 1198</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l01199" name="l01199"></a><span class="lineno"> 1199</span> uv_dirent_t dirents[1];</div>
<div class="line"><a id="l01200" name="l01200"></a><span class="lineno"> 1200</span>};</div>
<div class="line"><a id="l01201" name="l01201"></a><span class="lineno"> 1201</span> </div>
<div class="line"><a id="l01203" name="l01203"></a><span class="lineno"><a class="line" href="structuvw_1_1fs__helper.html"> 1203</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structuvw_1_1fs__helper.html">fs_helper</a> {</div>
<div class="line"><a id="l01214" name="l01214"></a><span class="lineno"><a class="line" href="structuvw_1_1fs__helper.html#a396e5342610a8ba469a5696a44d704f9"> 1214</a></span> <span class="keyword">static</span> <a class="code hl_typedef" href="namespaceuvw.html#a1a4f79e341b89257a11403ee0739f2b4">os_file_descriptor</a> <a class="code hl_function" href="structuvw_1_1fs__helper.html#a396e5342610a8ba469a5696a44d704f9">handle</a>(<a class="code hl_typedef" href="namespaceuvw.html#a28622e02bfff09ba6cf8a86a929917ee">file_handle</a> file) <span class="keyword">noexcept</span>;</div>
<div class="line"><a id="l01215" name="l01215"></a><span class="lineno"> 1215</span> </div>
<div class="line"><a id="l01226" name="l01226"></a><span class="lineno"><a class="line" href="structuvw_1_1fs__helper.html#a687b749eb4b571f06accc3274377a48f"> 1226</a></span> <span class="keyword">static</span> <a class="code hl_typedef" href="namespaceuvw.html#a28622e02bfff09ba6cf8a86a929917ee">file_handle</a> <a class="code hl_function" href="structuvw_1_1fs__helper.html#a687b749eb4b571f06accc3274377a48f">open</a>(<a class="code hl_typedef" href="namespaceuvw.html#a1a4f79e341b89257a11403ee0739f2b4">os_file_descriptor</a> descriptor) <span class="keyword">noexcept</span>;</div>
<div class="line"><a id="l01227" name="l01227"></a><span class="lineno"> 1227</span>};</div>
<div class="line"><a id="l01228" name="l01228"></a><span class="lineno"> 1228</span> </div>
<div class="line"><a id="l01229" name="l01229"></a><span class="lineno"> 1229</span>} <span class="comment">// namespace uvw</span></div>
<div class="line"><a id="l01230" name="l01230"></a><span class="lineno"> 1230</span> </div>
<div class="line"><a id="l01231" name="l01231"></a><span class="lineno"> 1231</span><span class="preprocessor">#ifndef UVW_AS_LIB</span></div>
<div class="line"><a id="l01232" name="l01232"></a><span class="lineno"> 1232</span><span class="preprocessor"># include &quot;fs.cpp&quot;</span></div>
<div class="line"><a id="l01233" name="l01233"></a><span class="lineno"> 1233</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l01234" name="l01234"></a><span class="lineno"> 1234</span> </div>
<div class="line"><a id="l01235" name="l01235"></a><span class="lineno"> 1235</span><span class="preprocessor">#endif </span><span class="comment">// UVW_FS_INCLUDE_H</span></div>
<div class="ttc" id="aclassuvw_1_1file__req_html"><div class="ttname"><a href="classuvw_1_1file__req.html">uvw::file_req</a></div><div class="ttdoc">The file request.</div><div class="ttdef"><b>Definition:</b> <a href="fs_8h_source.html#l00254">fs.h:254</a></div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_a12ba5927e22fc7d45aaa98db5454d07c"><div class="ttname"><a href="classuvw_1_1file__req.html#a12ba5927e22fc7d45aaa98db5454d07c">uvw::file_req::sendfile_sync</a></div><div class="ttdeci">std::pair&lt; bool, std::size_t &gt; sendfile_sync(file_handle out, int64_t offset, std::size_t length)</div><div class="ttdoc">Sync sendfile.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_a290ee459502cfe95045d325cf2eb863f"><div class="ttname"><a href="classuvw_1_1file__req.html#a290ee459502cfe95045d325cf2eb863f">uvw::file_req::datasync_sync</a></div><div class="ttdeci">bool datasync_sync()</div><div class="ttdoc">Sync fdatasync.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_a3000cd6f6cb184727c18f7f8dcf3bc95"><div class="ttname"><a href="classuvw_1_1file__req.html#a3000cd6f6cb184727c18f7f8dcf3bc95">uvw::file_req::chown</a></div><div class="ttdeci">void chown(uid_type uid, gid_type gid)</div><div class="ttdoc">Async fchown.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_a370553e4a107433a5683cb12ab2fc8ec"><div class="ttname"><a href="classuvw_1_1file__req.html#a370553e4a107433a5683cb12ab2fc8ec">uvw::file_req::write</a></div><div class="ttdeci">void write(std::unique_ptr&lt; char[]&gt; buf, unsigned int len, int64_t offset)</div><div class="ttdoc">Async write.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_a3bc4fbc5ae4277d17ba1af339af4a162"><div class="ttname"><a href="classuvw_1_1file__req.html#a3bc4fbc5ae4277d17ba1af339af4a162">uvw::file_req::chown_sync</a></div><div class="ttdeci">bool chown_sync(uid_type uid, gid_type gid)</div><div class="ttdoc">Sync fchown.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_a3de93f28af13fd9f2787479af05077ce"><div class="ttname"><a href="classuvw_1_1file__req.html#a3de93f28af13fd9f2787479af05077ce">uvw::file_req::write_sync</a></div><div class="ttdeci">std::pair&lt; bool, std::size_t &gt; write_sync(std::unique_ptr&lt; char[]&gt; buf, unsigned int len, int64_t offset)</div><div class="ttdoc">Sync write.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_a465edff6a2f7fc5ddcd0b3b3fa375843"><div class="ttname"><a href="classuvw_1_1file__req.html#a465edff6a2f7fc5ddcd0b3b3fa375843">uvw::file_req::close</a></div><div class="ttdeci">void close()</div><div class="ttdoc">Async close.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_a5185d8317db5de9d1a12f5f26ef87629"><div class="ttname"><a href="classuvw_1_1file__req.html#a5185d8317db5de9d1a12f5f26ef87629">uvw::file_req::stat_sync</a></div><div class="ttdeci">std::pair&lt; bool, file_info &gt; stat_sync()</div><div class="ttdoc">Sync fstat.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_a52bb20eebc87231dc276a36842e672ed"><div class="ttname"><a href="classuvw_1_1file__req.html#a52bb20eebc87231dc276a36842e672ed">uvw::file_req::sync</a></div><div class="ttdeci">void sync()</div><div class="ttdoc">Async fsync.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_a53668d54b035ee22dd00c209ca407b02"><div class="ttname"><a href="classuvw_1_1file__req.html#a53668d54b035ee22dd00c209ca407b02">uvw::file_req::chmod_sync</a></div><div class="ttdeci">bool chmod_sync(int mode)</div><div class="ttdoc">Sync fchmod.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_a635b5b7d064e09dee3c8d85ec7170ba6"><div class="ttname"><a href="classuvw_1_1file__req.html#a635b5b7d064e09dee3c8d85ec7170ba6">uvw::file_req::sendfile</a></div><div class="ttdeci">void sendfile(file_handle out, int64_t offset, std::size_t length)</div><div class="ttdoc">Async sendfile.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_a6b6955e2e845a7295b6a47f72d7d1ea0"><div class="ttname"><a href="classuvw_1_1file__req.html#a6b6955e2e845a7295b6a47f72d7d1ea0">uvw::file_req::chmod</a></div><div class="ttdeci">void chmod(int mode)</div><div class="ttdoc">Async fchmod.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_a7a93bc8e3efd8a37aaa39e2e678f7640"><div class="ttname"><a href="classuvw_1_1file__req.html#a7a93bc8e3efd8a37aaa39e2e678f7640">uvw::file_req::datasync</a></div><div class="ttdeci">void datasync()</div><div class="ttdoc">Async fdatasync.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_a9ec6d8b8e723d1a7abddbf081ca83f74"><div class="ttname"><a href="classuvw_1_1file__req.html#a9ec6d8b8e723d1a7abddbf081ca83f74">uvw::file_req::close_sync</a></div><div class="ttdeci">bool close_sync()</div><div class="ttdoc">Sync close.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_aa2bc09d50dd5ebebff9a9243189bcd73"><div class="ttname"><a href="classuvw_1_1file__req.html#aa2bc09d50dd5ebebff9a9243189bcd73">uvw::file_req::futime_sync</a></div><div class="ttdeci">bool futime_sync(time atime, time mtime)</div><div class="ttdoc">Sync futime.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_aace86b402ab343c7ae26be49d8e52547"><div class="ttname"><a href="classuvw_1_1file__req.html#aace86b402ab343c7ae26be49d8e52547">uvw::file_req::futime</a></div><div class="ttdeci">void futime(time atime, time mtime)</div><div class="ttdoc">Async futime.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_abbfbc1d3e729d09ea94594d880ea51ca"><div class="ttname"><a href="classuvw_1_1file__req.html#abbfbc1d3e729d09ea94594d880ea51ca">uvw::file_req::read_sync</a></div><div class="ttdeci">std::pair&lt; bool, std::pair&lt; std::unique_ptr&lt; const char[]&gt;, std::size_t &gt; &gt; read_sync(int64_t offset, unsigned int len)</div><div class="ttdoc">Sync read.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_ac236103144b9ee9b4159c488f2fb7889"><div class="ttname"><a href="classuvw_1_1file__req.html#ac236103144b9ee9b4159c488f2fb7889">uvw::file_req::open_sync</a></div><div class="ttdeci">bool open_sync(const std::string &amp;path, file_open_flags flags, int mode)</div><div class="ttdoc">Sync open.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_ac8e7fd07e881b6d5822396c5e1687f21"><div class="ttname"><a href="classuvw_1_1file__req.html#ac8e7fd07e881b6d5822396c5e1687f21">uvw::file_req::write</a></div><div class="ttdeci">void write(char *buf, unsigned int len, int64_t offset)</div><div class="ttdoc">Async write.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_ad7723ecb676ae46d11b3f783cf637132"><div class="ttname"><a href="classuvw_1_1file__req.html#ad7723ecb676ae46d11b3f783cf637132">uvw::file_req::read</a></div><div class="ttdeci">void read(int64_t offset, unsigned int len)</div><div class="ttdoc">Async read.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_ad938727a93ddaf24ade95fd19fdf232d"><div class="ttname"><a href="classuvw_1_1file__req.html#ad938727a93ddaf24ade95fd19fdf232d">uvw::file_req::open</a></div><div class="ttdeci">void open(const std::string &amp;path, file_open_flags flags, int mode)</div><div class="ttdoc">Async open.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_ade838576c44bfaca992e8b5c1c68040c"><div class="ttname"><a href="classuvw_1_1file__req.html#ade838576c44bfaca992e8b5c1c68040c">uvw::file_req::truncate</a></div><div class="ttdeci">void truncate(int64_t offset)</div><div class="ttdoc">Async ftruncate.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_adff17b7cd4d9b96d055873ba2a3b47c8"><div class="ttname"><a href="classuvw_1_1file__req.html#adff17b7cd4d9b96d055873ba2a3b47c8">uvw::file_req::stat</a></div><div class="ttdeci">void stat()</div><div class="ttdoc">Async fstat.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_af5d6ab96e7b9621a232e25435a77184e"><div class="ttname"><a href="classuvw_1_1file__req.html#af5d6ab96e7b9621a232e25435a77184e">uvw::file_req::sync_sync</a></div><div class="ttdeci">bool sync_sync()</div><div class="ttdoc">Sync fsync.</div></div>
<div class="ttc" id="aclassuvw_1_1file__req_html_afc92909f482a4f470d8d1bebf0b687ac"><div class="ttname"><a href="classuvw_1_1file__req.html#afc92909f482a4f470d8d1bebf0b687ac">uvw::file_req::truncate_sync</a></div><div class="ttdeci">bool truncate_sync(int64_t offset)</div><div class="ttdoc">Sync ftruncate.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html"><div class="ttname"><a href="classuvw_1_1fs__req.html">uvw::fs_req</a></div><div class="ttdoc">The fs request.</div><div class="ttdef"><b>Definition:</b> <a href="fs_8h_source.html#l00591">fs.h:591</a></div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a063a7156f5c1027ecf515ef484b1ec3b"><div class="ttname"><a href="classuvw_1_1fs__req.html#a063a7156f5c1027ecf515ef484b1ec3b">uvw::fs_req::lutime_sync</a></div><div class="ttdeci">bool lutime_sync(const std::string &amp;path, time atime, time mtime)</div><div class="ttdoc">Sync lutime.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a16c3ccca89a6f9f2247c60f7f42c1c38"><div class="ttname"><a href="classuvw_1_1fs__req.html#a16c3ccca89a6f9f2247c60f7f42c1c38">uvw::fs_req::mkdtemp</a></div><div class="ttdeci">void mkdtemp(const std::string &amp;tpl)</div><div class="ttdoc">Async mktemp.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a1963175c9aef9b4758c73b2d03ac4468"><div class="ttname"><a href="classuvw_1_1fs__req.html#a1963175c9aef9b4758c73b2d03ac4468">uvw::fs_req::opendir</a></div><div class="ttdeci">void opendir(const std::string &amp;path)</div><div class="ttdoc">Opens a path asynchronously as a directory stream.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a1d8412294116b35b5fb2ac0b1571c73a"><div class="ttname"><a href="classuvw_1_1fs__req.html#a1d8412294116b35b5fb2ac0b1571c73a">uvw::fs_req::rmdir_sync</a></div><div class="ttdeci">bool rmdir_sync(const std::string &amp;path)</div><div class="ttdoc">Sync rmdir.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a2cdc4f072bab357cd0321c582b06ee6d"><div class="ttname"><a href="classuvw_1_1fs__req.html#a2cdc4f072bab357cd0321c582b06ee6d">uvw::fs_req::readdir_sync</a></div><div class="ttdeci">std::pair&lt; bool, std::pair&lt; entry_type, const char * &gt; &gt; readdir_sync()</div><div class="ttdoc">Iterates synchronously over a directory stream one entry at a time.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a328e77d91611be65ab389f360752ae0c"><div class="ttname"><a href="classuvw_1_1fs__req.html#a328e77d91611be65ab389f360752ae0c">uvw::fs_req::mkdir_sync</a></div><div class="ttdeci">bool mkdir_sync(const std::string &amp;path, int mode)</div><div class="ttdoc">Sync mkdir.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a3846ebf228eb727cd2c01b4eaee5f1e0"><div class="ttname"><a href="classuvw_1_1fs__req.html#a3846ebf228eb727cd2c01b4eaee5f1e0">uvw::fs_req::lutime</a></div><div class="ttdeci">void lutime(const std::string &amp;path, time atime, time mtime)</div><div class="ttdoc">Async lutime.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a3970f8ad47d6b36dedde7a3296995419"><div class="ttname"><a href="classuvw_1_1fs__req.html#a3970f8ad47d6b36dedde7a3296995419">uvw::fs_req::copyfile_sync</a></div><div class="ttdeci">bool copyfile_sync(const std::string &amp;old, const std::string &amp;path, copy_file_flags flags=copy_file_flags::_UVW_ENUM)</div><div class="ttdoc">Copies a file synchronously from a path to a new one.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a3af58fd350f85a8bbf28a2f2b05fe055"><div class="ttname"><a href="classuvw_1_1fs__req.html#a3af58fd350f85a8bbf28a2f2b05fe055">uvw::fs_req::utime_sync</a></div><div class="ttdeci">bool utime_sync(const std::string &amp;path, time atime, time mtime)</div><div class="ttdoc">Sync utime.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a3f0de3c54d15cbfa373bc09608ad2e40"><div class="ttname"><a href="classuvw_1_1fs__req.html#a3f0de3c54d15cbfa373bc09608ad2e40">uvw::fs_req::readdir</a></div><div class="ttdeci">void readdir()</div><div class="ttdoc">Iterates asynchronously over a directory stream one entry at a time.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a4050bda04dbeb9f64241cb5993616d9a"><div class="ttname"><a href="classuvw_1_1fs__req.html#a4050bda04dbeb9f64241cb5993616d9a">uvw::fs_req::copyfile</a></div><div class="ttdeci">void copyfile(const std::string &amp;old, const std::string &amp;path, copy_file_flags flags=copy_file_flags::_UVW_ENUM)</div><div class="ttdoc">Copies a file asynchronously from a path to a new one.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a43981874a17a38beadd4e77f155d3d83"><div class="ttname"><a href="classuvw_1_1fs__req.html#a43981874a17a38beadd4e77f155d3d83">uvw::fs_req::chown</a></div><div class="ttdeci">void chown(const std::string &amp;path, uid_type uid, gid_type gid)</div><div class="ttdoc">Async chown.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a46969ea8b7e112b5a4bee8f511f8fe10"><div class="ttname"><a href="classuvw_1_1fs__req.html#a46969ea8b7e112b5a4bee8f511f8fe10">uvw::fs_req::access</a></div><div class="ttdeci">void access(const std::string &amp;path, int mode)</div><div class="ttdoc">Async access.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a4a4368169a980debb2f0bc84a3569303"><div class="ttname"><a href="classuvw_1_1fs__req.html#a4a4368169a980debb2f0bc84a3569303">uvw::fs_req::opendir_sync</a></div><div class="ttdeci">bool opendir_sync(const std::string &amp;path)</div><div class="ttdoc">Opens a path synchronously as a directory stream.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a4be95518f8313aa54d1348d93e415e68"><div class="ttname"><a href="classuvw_1_1fs__req.html#a4be95518f8313aa54d1348d93e415e68">uvw::fs_req::chown_sync</a></div><div class="ttdeci">bool chown_sync(const std::string &amp;path, uid_type uid, gid_type gid)</div><div class="ttdoc">Sync chown.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a501652024d76d5c8795f36b5dd7168c9"><div class="ttname"><a href="classuvw_1_1fs__req.html#a501652024d76d5c8795f36b5dd7168c9">uvw::fs_req::utime</a></div><div class="ttdeci">void utime(const std::string &amp;path, time atime, time mtime)</div><div class="ttdoc">Async utime.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a51f5a31faa61d2adadb59b557b5be00b"><div class="ttname"><a href="classuvw_1_1fs__req.html#a51f5a31faa61d2adadb59b557b5be00b">uvw::fs_req::closedir</a></div><div class="ttdeci">void closedir()</div><div class="ttdoc">Closes asynchronously a directory stream.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a534b0fdf5aa1451937a4b771c077171e"><div class="ttname"><a href="classuvw_1_1fs__req.html#a534b0fdf5aa1451937a4b771c077171e">uvw::fs_req::stat_sync</a></div><div class="ttdeci">std::pair&lt; bool, file_info &gt; stat_sync(const std::string &amp;path)</div><div class="ttdoc">Sync stat.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a57e76844c4f3e0be00a898b993c4bfab"><div class="ttname"><a href="classuvw_1_1fs__req.html#a57e76844c4f3e0be00a898b993c4bfab">uvw::fs_req::symlink</a></div><div class="ttdeci">void symlink(const std::string &amp;old, const std::string &amp;path, symlink_flags flags=symlink_flags::_UVW_ENUM)</div><div class="ttdoc">Async symlink.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a5a352250528afacb1d2e933eb03b6a89"><div class="ttname"><a href="classuvw_1_1fs__req.html#a5a352250528afacb1d2e933eb03b6a89">uvw::fs_req::scandir_sync</a></div><div class="ttdeci">std::pair&lt; bool, std::size_t &gt; scandir_sync(const std::string &amp;path, int flags)</div><div class="ttdoc">Sync scandir.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a5c7baf9d368769495bbcef8054724730"><div class="ttname"><a href="classuvw_1_1fs__req.html#a5c7baf9d368769495bbcef8054724730">uvw::fs_req::link</a></div><div class="ttdeci">void link(const std::string &amp;old, const std::string &amp;path)</div><div class="ttdoc">Async link.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a5fac1d4b1e320d69f055b6a9793e7758"><div class="ttname"><a href="classuvw_1_1fs__req.html#a5fac1d4b1e320d69f055b6a9793e7758">uvw::fs_req::chmod</a></div><div class="ttdeci">void chmod(const std::string &amp;path, int mode)</div><div class="ttdoc">Async chmod.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a61fe18fb557ec9b50122dcc14b2e70e0"><div class="ttname"><a href="classuvw_1_1fs__req.html#a61fe18fb557ec9b50122dcc14b2e70e0">uvw::fs_req::access_sync</a></div><div class="ttdeci">bool access_sync(const std::string &amp;path, int mode)</div><div class="ttdoc">Sync access.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a6bd2e91fe0b69ed2076ea9828c1f3070"><div class="ttname"><a href="classuvw_1_1fs__req.html#a6bd2e91fe0b69ed2076ea9828c1f3070">uvw::fs_req::rename</a></div><div class="ttdeci">void rename(const std::string &amp;old, const std::string &amp;path)</div><div class="ttdoc">Async rename.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a7075ddf00f30876fb5afbebcce94811c"><div class="ttname"><a href="classuvw_1_1fs__req.html#a7075ddf00f30876fb5afbebcce94811c">uvw::fs_req::unlink_sync</a></div><div class="ttdeci">bool unlink_sync(const std::string &amp;path)</div><div class="ttdoc">Sync unlink.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a77be2d8dc95f2959d70ede04cc8e57a6"><div class="ttname"><a href="classuvw_1_1fs__req.html#a77be2d8dc95f2959d70ede04cc8e57a6">uvw::fs_req::mkdtemp_sync</a></div><div class="ttdeci">std::pair&lt; bool, const char * &gt; mkdtemp_sync(const std::string &amp;tpl)</div><div class="ttdoc">Sync mktemp.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a816a3aded00313baf4f3617233ff6e7f"><div class="ttname"><a href="classuvw_1_1fs__req.html#a816a3aded00313baf4f3617233ff6e7f">uvw::fs_req::rename_sync</a></div><div class="ttdeci">bool rename_sync(const std::string &amp;old, const std::string &amp;path)</div><div class="ttdoc">Sync rename.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a8d9dd0b8131360969b4140a4748d3881"><div class="ttname"><a href="classuvw_1_1fs__req.html#a8d9dd0b8131360969b4140a4748d3881">uvw::fs_req::statfs_sync</a></div><div class="ttdeci">std::pair&lt; bool, fs_info &gt; statfs_sync(const std::string &amp;path)</div><div class="ttdoc">Sync statfs.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a8fc1755f4ad573bb26a36d1b2e519a72"><div class="ttname"><a href="classuvw_1_1fs__req.html#a8fc1755f4ad573bb26a36d1b2e519a72">uvw::fs_req::realpath</a></div><div class="ttdeci">void realpath(const std::string &amp;path)</div><div class="ttdoc">Async realpath.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a914758e4c2ef6cf5a42e08ff4beb0155"><div class="ttname"><a href="classuvw_1_1fs__req.html#a914758e4c2ef6cf5a42e08ff4beb0155">uvw::fs_req::lchown</a></div><div class="ttdeci">void lchown(const std::string &amp;path, uid_type uid, gid_type gid)</div><div class="ttdoc">Async lchown.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a99bce8dcdc8c408b2082e83a4c94c8da"><div class="ttname"><a href="classuvw_1_1fs__req.html#a99bce8dcdc8c408b2082e83a4c94c8da">uvw::fs_req::unlink</a></div><div class="ttdeci">void unlink(const std::string &amp;path)</div><div class="ttdoc">Async unlink.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a9a6804d647a84523336cb9c45b31f3a7"><div class="ttname"><a href="classuvw_1_1fs__req.html#a9a6804d647a84523336cb9c45b31f3a7">uvw::fs_req::chmod_sync</a></div><div class="ttdeci">bool chmod_sync(const std::string &amp;path, int mode)</div><div class="ttdoc">Sync chmod.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_a9b4a342e97d47ae1ec4af04deded39c2"><div class="ttname"><a href="classuvw_1_1fs__req.html#a9b4a342e97d47ae1ec4af04deded39c2">uvw::fs_req::readlink</a></div><div class="ttdeci">void readlink(const std::string &amp;path)</div><div class="ttdoc">Async readlink.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_aa99d614127d51cd82f33ed80a5d6d81c"><div class="ttname"><a href="classuvw_1_1fs__req.html#aa99d614127d51cd82f33ed80a5d6d81c">uvw::fs_req::mkdir</a></div><div class="ttdeci">void mkdir(const std::string &amp;path, int mode)</div><div class="ttdoc">Async mkdir.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_aaa36afa5541a24f1e64dab9019d1d4a0"><div class="ttname"><a href="classuvw_1_1fs__req.html#aaa36afa5541a24f1e64dab9019d1d4a0">uvw::fs_req::mkstemp_sync</a></div><div class="ttdeci">std::pair&lt; bool, std::pair&lt; std::string, std::size_t &gt; &gt; mkstemp_sync(const std::string &amp;tpl)</div><div class="ttdoc">Sync mkstemp.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_abc7f0e6d57afb1ab6f15920a938f8105"><div class="ttname"><a href="classuvw_1_1fs__req.html#abc7f0e6d57afb1ab6f15920a938f8105">uvw::fs_req::lstat_sync</a></div><div class="ttdeci">std::pair&lt; bool, file_info &gt; lstat_sync(const std::string &amp;path)</div><div class="ttdoc">Sync lstat.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_abe05419d1b0ceb286e8f2eb19e67097a"><div class="ttname"><a href="classuvw_1_1fs__req.html#abe05419d1b0ceb286e8f2eb19e67097a">uvw::fs_req::readlink_sync</a></div><div class="ttdeci">std::pair&lt; bool, std::pair&lt; const char *, std::size_t &gt; &gt; readlink_sync(const std::string &amp;path)</div><div class="ttdoc">Sync readlink.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_ac93a57be902068cf21988802786a5efd"><div class="ttname"><a href="classuvw_1_1fs__req.html#ac93a57be902068cf21988802786a5efd">uvw::fs_req::scandir_next</a></div><div class="ttdeci">std::pair&lt; bool, std::pair&lt; entry_type, const char * &gt; &gt; scandir_next()</div><div class="ttdoc">Gets entries populated with the next directory entry data.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_ace48242168c782f8c90d7b271b7e1108"><div class="ttname"><a href="classuvw_1_1fs__req.html#ace48242168c782f8c90d7b271b7e1108">uvw::fs_req::symlink_sync</a></div><div class="ttdeci">bool symlink_sync(const std::string &amp;old, const std::string &amp;path, symlink_flags flags=symlink_flags::_UVW_ENUM)</div><div class="ttdoc">Sync symlink.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_ad09c8eacd50c97fe307d1e04f75c93e0"><div class="ttname"><a href="classuvw_1_1fs__req.html#ad09c8eacd50c97fe307d1e04f75c93e0">uvw::fs_req::realpath_sync</a></div><div class="ttdeci">std::pair&lt; bool, const char * &gt; realpath_sync(const std::string &amp;path)</div><div class="ttdoc">Sync realpath.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_ada5850ce91d82bb10f89aaa88c35f7fa"><div class="ttname"><a href="classuvw_1_1fs__req.html#ada5850ce91d82bb10f89aaa88c35f7fa">uvw::fs_req::lstat</a></div><div class="ttdeci">void lstat(const std::string &amp;path)</div><div class="ttdoc">Async lstat.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_adbb356149f58a0af939422d56f8dbbf9"><div class="ttname"><a href="classuvw_1_1fs__req.html#adbb356149f58a0af939422d56f8dbbf9">uvw::fs_req::mkstemp</a></div><div class="ttdeci">void mkstemp(const std::string &amp;tpl)</div><div class="ttdoc">Async mkstemp.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_adc1c2ad26a443484112e4d8d6aa5b156"><div class="ttname"><a href="classuvw_1_1fs__req.html#adc1c2ad26a443484112e4d8d6aa5b156">uvw::fs_req::link_sync</a></div><div class="ttdeci">bool link_sync(const std::string &amp;old, const std::string &amp;path)</div><div class="ttdoc">Sync link.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_adf9d73601817015e42b54733591dbbe9"><div class="ttname"><a href="classuvw_1_1fs__req.html#adf9d73601817015e42b54733591dbbe9">uvw::fs_req::lchown_sync</a></div><div class="ttdeci">bool lchown_sync(const std::string &amp;path, uid_type uid, gid_type gid)</div><div class="ttdoc">Sync lchown.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_aea6768d00e50d1be2dfb6258e5e8ff62"><div class="ttname"><a href="classuvw_1_1fs__req.html#aea6768d00e50d1be2dfb6258e5e8ff62">uvw::fs_req::statfs</a></div><div class="ttdeci">void statfs(const std::string &amp;path)</div><div class="ttdoc">Async statfs.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_af4a80f4c4064736bdfb94e6d5b826da5"><div class="ttname"><a href="classuvw_1_1fs__req.html#af4a80f4c4064736bdfb94e6d5b826da5">uvw::fs_req::rmdir</a></div><div class="ttdeci">void rmdir(const std::string &amp;path)</div><div class="ttdoc">Async rmdir.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_af7308a353dccae7553d1b061036fb5c8"><div class="ttname"><a href="classuvw_1_1fs__req.html#af7308a353dccae7553d1b061036fb5c8">uvw::fs_req::scandir</a></div><div class="ttdeci">void scandir(const std::string &amp;path, int flags)</div><div class="ttdoc">Async scandir.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_af7cebc8520c462bbf5dca01ad9b4b6dd"><div class="ttname"><a href="classuvw_1_1fs__req.html#af7cebc8520c462bbf5dca01ad9b4b6dd">uvw::fs_req::stat</a></div><div class="ttdeci">void stat(const std::string &amp;path)</div><div class="ttdoc">Async stat.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__req_html_afa8540cee28f01e99fbcdefbef6ea2c1"><div class="ttname"><a href="classuvw_1_1fs__req.html#afa8540cee28f01e99fbcdefbef6ea2c1">uvw::fs_req::closedir_sync</a></div><div class="ttdeci">bool closedir_sync()</div><div class="ttdoc">Closes synchronously a directory stream.</div></div>
<div class="ttc" id="aclassuvw_1_1fs__request_html"><div class="ttname"><a href="classuvw_1_1fs__request.html">uvw::fs_request</a></div><div class="ttdoc">Base class for fs/file request.</div><div class="ttdef"><b>Definition:</b> <a href="fs_8h_source.html#l00224">fs.h:224</a></div></div>
<div class="ttc" id="aclassuvw_1_1request_html"><div class="ttname"><a href="classuvw_1_1request.html">uvw::request</a></div><div class="ttdoc">Request base class.</div><div class="ttdef"><b>Definition:</b> <a href="request_8hpp_source.html#l00019">request.hpp:19</a></div></div>
<div class="ttc" id="anamespaceuvw_html"><div class="ttname"><a href="namespaceuvw.html">uvw</a></div><div class="ttdoc">uvw default namespace.</div><div class="ttdef"><b>Definition:</b> <a href="async_8h_source.html#l00008">async.h:8</a></div></div>
<div class="ttc" id="anamespaceuvw_html_a0ce5f6829814d65c5087566b9e4a6a2e"><div class="ttname"><a href="namespaceuvw.html#a0ce5f6829814d65c5087566b9e4a6a2e">uvw::uid_type</a></div><div class="ttdeci">uv_uid_t uid_type</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00098">util.h:98</a></div></div>
<div class="ttc" id="anamespaceuvw_html_a1a4f79e341b89257a11403ee0739f2b4"><div class="ttname"><a href="namespaceuvw.html#a1a4f79e341b89257a11403ee0739f2b4">uvw::os_file_descriptor</a></div><div class="ttdeci">details::uv_type_wrapper&lt; uv_os_fd_t &gt; os_file_descriptor</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00087">util.h:87</a></div></div>
<div class="ttc" id="anamespaceuvw_html_a28622e02bfff09ba6cf8a86a929917ee"><div class="ttname"><a href="namespaceuvw.html#a28622e02bfff09ba6cf8a86a929917ee">uvw::file_handle</a></div><div class="ttdeci">details::uv_type_wrapper&lt; uv_file &gt; file_handle</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00085">util.h:85</a></div></div>
<div class="ttc" id="anamespaceuvw_html_a496a2034d9041b1d7813317f83ab6623"><div class="ttname"><a href="namespaceuvw.html#a496a2034d9041b1d7813317f83ab6623">uvw::gid_type</a></div><div class="ttdeci">uv_gid_t gid_type</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00099">util.h:99</a></div></div>
<div class="ttc" id="anamespaceuvw_html_a7f8333af7e3de1e46417f57d930c636e"><div class="ttname"><a href="namespaceuvw.html#a7f8333af7e3de1e46417f57d930c636e">uvw::file_info</a></div><div class="ttdeci">uv_stat_t file_info</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00096">util.h:96</a></div></div>
<div class="ttc" id="anamespaceuvw_html_ae0ae6e7fc2c6760fd0c8311b62a1b8dd"><div class="ttname"><a href="namespaceuvw.html#ae0ae6e7fc2c6760fd0c8311b62a1b8dd">uvw::fs_info</a></div><div class="ttdeci">uv_statfs_t fs_info</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00097">util.h:97</a></div></div>
<div class="ttc" id="astructuvw_1_1error__event_html"><div class="ttname"><a href="structuvw_1_1error__event.html">uvw::error_event</a></div><div class="ttdoc">Error event.</div><div class="ttdef"><b>Definition:</b> <a href="emitter_8h_source.html#l00023">emitter.h:23</a></div></div>
<div class="ttc" id="astructuvw_1_1fs__event_html"><div class="ttname"><a href="structuvw_1_1fs__event.html">uvw::fs_event</a></div><div class="ttdoc">Common fs event.</div><div class="ttdef"><b>Definition:</b> <a href="fs_8h_source.html#l00160">fs.h:160</a></div></div>
<div class="ttc" id="astructuvw_1_1fs__event_html_a268a71d07c15d81cb384a0657cb708ce"><div class="ttname"><a href="structuvw_1_1fs__event.html#a268a71d07c15d81cb384a0657cb708ce">uvw::fs_event::result</a></div><div class="ttdeci">std::size_t result</div><div class="ttdef"><b>Definition:</b> <a href="fs_8h_source.html#l00198">fs.h:198</a></div></div>
<div class="ttc" id="astructuvw_1_1fs__event_html_a4bdc7cb85d905420d20c9b9e8adab56d"><div class="ttname"><a href="structuvw_1_1fs__event.html#a4bdc7cb85d905420d20c9b9e8adab56d">uvw::fs_event::stat</a></div><div class="ttdeci">file_info stat</div><div class="ttdef"><b>Definition:</b> <a href="fs_8h_source.html#l00208">fs.h:208</a></div></div>
<div class="ttc" id="astructuvw_1_1fs__event_html_a5bffdfd4d1dbb0f019d8ed4c5e07cef6"><div class="ttname"><a href="structuvw_1_1fs__event.html#a5bffdfd4d1dbb0f019d8ed4c5e07cef6">uvw::fs_event::statfs</a></div><div class="ttdeci">fs_info statfs</div><div class="ttdef"><b>Definition:</b> <a href="fs_8h_source.html#l00209">fs.h:209</a></div></div>
<div class="ttc" id="astructuvw_1_1fs__event_html_a5d208a113e76c46fda4c6ed58bb9fb69"><div class="ttname"><a href="structuvw_1_1fs__event.html#a5d208a113e76c46fda4c6ed58bb9fb69">uvw::fs_event::name</a></div><div class="ttdeci">const char * name</div><div class="ttdef"><b>Definition:</b> <a href="fs_8h_source.html#l00212">fs.h:212</a></div></div>
<div class="ttc" id="astructuvw_1_1fs__event_html_a8360c0c11f32c8ddf1edfdc3808d2108"><div class="ttname"><a href="structuvw_1_1fs__event.html#a8360c0c11f32c8ddf1edfdc3808d2108">uvw::fs_event::path</a></div><div class="ttdeci">const char * path</div><div class="ttdef"><b>Definition:</b> <a href="fs_8h_source.html#l00197">fs.h:197</a></div></div>
<div class="ttc" id="astructuvw_1_1fs__event_html_a875f46b4b423cf1a07d7b88fd47450b3"><div class="ttname"><a href="structuvw_1_1fs__event.html#a875f46b4b423cf1a07d7b88fd47450b3">uvw::fs_event::data</a></div><div class="ttdeci">std::unique_ptr&lt; const char[]&gt; data</div><div class="ttdef"><b>Definition:</b> <a href="fs_8h_source.html#l00201">fs.h:201</a></div></div>
<div class="ttc" id="astructuvw_1_1fs__event_html_a95c2cf7fe72fa263a8d36bbc9ea45d44"><div class="ttname"><a href="structuvw_1_1fs__event.html#a95c2cf7fe72fa263a8d36bbc9ea45d44">uvw::fs_event::eos</a></div><div class="ttdeci">bool eos</div><div class="ttdef"><b>Definition:</b> <a href="fs_8h_source.html#l00214">fs.h:214</a></div></div>
<div class="ttc" id="astructuvw_1_1fs__event_html_a9a12e3b532a77c7ef9a2f72b64601cf4"><div class="ttname"><a href="structuvw_1_1fs__event.html#a9a12e3b532a77c7ef9a2f72b64601cf4">uvw::fs_event::type</a></div><div class="ttdeci">entry_type type</div><div class="ttdef"><b>Definition:</b> <a href="fs_8h_source.html#l00213">fs.h:213</a></div></div>
<div class="ttc" id="astructuvw_1_1fs__event_html_aba6a074fbe67e23eb320fa916f10a2ea"><div class="ttname"><a href="structuvw_1_1fs__event.html#aba6a074fbe67e23eb320fa916f10a2ea">uvw::fs_event::type</a></div><div class="ttdeci">fs_type type</div><div class="ttdef"><b>Definition:</b> <a href="fs_8h_source.html#l00196">fs.h:196</a></div></div>
<div class="ttc" id="astructuvw_1_1fs__event_html_ac9a38d48b4d30f3ad3c2b3d227182465"><div class="ttname"><a href="structuvw_1_1fs__event.html#ac9a38d48b4d30f3ad3c2b3d227182465">uvw::fs_event::data</a></div><div class="ttdeci">const char * data</div><div class="ttdef"><b>Definition:</b> <a href="fs_8h_source.html#l00205">fs.h:205</a></div></div>
<div class="ttc" id="astructuvw_1_1fs__helper_html"><div class="ttname"><a href="structuvw_1_1fs__helper.html">uvw::fs_helper</a></div><div class="ttdoc">Helper functions.</div><div class="ttdef"><b>Definition:</b> <a href="fs_8h_source.html#l01203">fs.h:1203</a></div></div>
<div class="ttc" id="astructuvw_1_1fs__helper_html_a396e5342610a8ba469a5696a44d704f9"><div class="ttname"><a href="structuvw_1_1fs__helper.html#a396e5342610a8ba469a5696a44d704f9">uvw::fs_helper::handle</a></div><div class="ttdeci">static os_file_descriptor handle(file_handle file) noexcept</div><div class="ttdoc">Gets the OS dependent handle.</div></div>
<div class="ttc" id="astructuvw_1_1fs__helper_html_a687b749eb4b571f06accc3274377a48f"><div class="ttname"><a href="structuvw_1_1fs__helper.html#a687b749eb4b571f06accc3274377a48f">uvw::fs_helper::open</a></div><div class="ttdeci">static file_handle open(os_file_descriptor descriptor) noexcept</div><div class="ttdoc">Gets the file descriptor.</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.6
</small></address>
</body>
</html>