restructure StringArrayWriter trait into StringArray struct

This commit is contained in:
Pat Hickey
2020-09-02 14:11:32 -07:00
parent b63e974014
commit 39f1c9716c
5 changed files with 111 additions and 91 deletions

View File

@@ -1,6 +1,5 @@
use crate::entry::{Entry, EntryHandle};
use crate::handle::HandleRights;
use crate::string_array_writer::StringArrayWriter;
use crate::sys::clock;
use crate::wasi::wasi_snapshot_preview1::WasiSnapshotPreview1;
use crate::wasi::{types, AsBytes};
@@ -17,12 +16,11 @@ impl<'a> WasiSnapshotPreview1 for WasiCtx {
argv: &GuestPtr<'b, GuestPtr<'b, u8>>,
argv_buf: &GuestPtr<'b, u8>,
) -> Result<()> {
self.args().write_to_guest(argv_buf, argv)
self.args.write_to_guest(argv_buf, argv)
}
fn args_sizes_get(&self) -> Result<(types::Size, types::Size)> {
let args = self.args();
Ok((args.number_elements()?, args.cumulative_size()?))
Ok((self.args.number_elements, self.args.cumulative_size))
}
fn environ_get<'b>(
@@ -30,12 +28,11 @@ impl<'a> WasiSnapshotPreview1 for WasiCtx {
environ: &GuestPtr<'b, GuestPtr<'b, u8>>,
environ_buf: &GuestPtr<'b, u8>,
) -> Result<()> {
self.env().write_to_guest(environ_buf, environ)
self.env.write_to_guest(environ_buf, environ)
}
fn environ_sizes_get(&self) -> Result<(types::Size, types::Size)> {
let args = self.args();
Ok((args.number_elements()?, args.cumulative_size()?))
Ok((self.env.number_elements, self.env.cumulative_size))
}
fn clock_res_get(&self, id: types::Clockid) -> Result<types::Timestamp> {