| 155 | WasiExpect<INode> INode::fromFd(int32_t Fd) { return createStdNode(Fd); } |
| 156 | |
| 157 | WasiExpect<INode> INode::open(std::string Path, __wasi_oflags_t OpenFlags, |
| 158 | __wasi_fdflags_t FdFlags, |
| 159 | VFS::Flags VFSFlags) noexcept { |
| 160 | const int Flags = openFlags(OpenFlags, FdFlags, VFSFlags); |
| 161 | |
| 162 | if (auto NewFd = ::open(Path.c_str(), Flags, 0644); unlikely(NewFd < 0)) { |
| 163 | return WasiUnexpect(fromErrNo(errno)); |
| 164 | } else { |
| 165 | return INode(NewFd); |
| 166 | } |
| 167 | } |
| 168 | |
| 169 | WasiExpect<void> INode::fdAdvise(__wasi_filesize_t, __wasi_filesize_t, |
| 170 | __wasi_advice_t) const noexcept { |