Displaying 13 results from an estimated 13 matches for "rawlist".
2019 Jun 27
0
Re: [PATCH 08/11] Rust bindings: Fix memory management and format the file
...{
None
} else {
- let r = unsafe { *(self.p) };
self.p = unsafe { self.p.offset(1) };
Some(r)
}
}
}
-fn arg_string_list (v: &Vec<String>) -> Vec<*const i8> {
- let length = v.len();
+#[repr(C)]
+struct RawList<T> {
+ size: u32,
+ ptr: *const T,
+}
+
+struct RawListIter<'a, T> {
+ current: u32,
+ list: &'a RawList<T>,
+}
+
+impl<T> RawList<T> {
+ fn iter<'a>(&'a self) -> RawListIter<'a, T> {
+ RawListIter {
+...
2019 Jun 27
0
[PATCH 9/9] Rust bindings: Complete bindings
...mp;mut self) -> Option<*const T> {
+ let r = unsafe { *(self.p) };
+ if r.is_null() {
None
} else {
- let r = unsafe { *(self.p) };
self.p = unsafe { self.p.offset(1) };
Some(r)
}
@@ -171,12 +173,15 @@ struct RawList<T> {
struct RawListIter<'a, T> {
current: u32,
- list: &'a RawList<T>
+ list: &'a RawList<T>,
}
-impl<T> RawList<T> {
+impl<T> RawList<T> {
fn iter<'a>(&'a self) -> RawListIter<'a,...
2019 Jun 27
4
Re: [PATCH 9/9] Rust bindings: Complete bindings
Patch 9 is a kind of dumping ground of all kinds of stuff. It may be
better to spend some time with git rebase -i trying to work this into
more coherent patches.
Rich.
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-p2v converts physical machines to virtual machines. Boot with a
live
2019 Jun 27
16
[PATCH 1/9] Rust bindings: Add Rust bindings
From: Hiroyuki_Katsura <hiroyuki.katsura.0513@gmail.com>
---
Makefile.am | 4 ++++
configure.ac | 3 +++
generator/Makefile.am | 3 +++
generator/bindtests.ml | 3 +++
generator/bindtests.mli | 1 +
generator/main.ml | 5 +++++
generator/rust.ml | 34 ++++++++++++++++++++++++++++++++++
generator/rust.mli | 19 +++++++++++++++++++
2019 Jul 20
0
[PATCH] Rust bindings: Add Rust bindings
...List.iter (
+ fun { s_camel_name = name; s_name = c_name; } ->
+ pr " #[allow(dead_code)]\n";
+ pr " fn guestfs_free_%s(v: *const Raw%s);\n" c_name name;
+ pr " #[allow(dead_code)]\n";
+ pr " fn guestfs_free_%s_list(l: *const RawList<Raw%s>);\n" c_name name;
+ ) external_structs;
+ pr "}\n";
+
+ (* [Outline] There are three types for each optional structs: SOptArgs,
+ * CExprSOptArgs, RawSOptArgs.
+ * SOptArgs: for Rust bindings' API. This can be seen by bindings' users.
+ * CExprSOptArgs:...
2019 Jul 23
2
Re: [PATCH] Rust bindings: Add Rust bindings
...{ s_camel_name = name; s_name = c_name; } ->
> + pr " #[allow(dead_code)]\n";
> + pr " fn guestfs_free_%s(v: *const Raw%s);\n" c_name name;
> + pr " #[allow(dead_code)]\n";
> + pr " fn guestfs_free_%s_list(l: *const RawList<Raw%s>);\n"
> c_name name;
> + ) external_structs;
> + pr "}\n";
> +
> + (* [Outline] There are three types for each optional structs: SOptArgs,
> + * CExprSOptArgs, RawSOptArgs.
> + * SOptArgs: for Rust bindings' API. This can be seen by binding...
2019 Jul 23
0
Re: [PATCH] Rust bindings: Add Rust bindings
...List.iter (
+ fun { s_camel_name = name; s_name = c_name; } ->
+ pr " #[allow(dead_code)]\n";
+ pr " fn guestfs_free_%s(v: *const Raw%s);\n" c_name name;
+ pr " #[allow(dead_code)]\n";
+ pr " fn guestfs_free_%s_list(l: *const RawList<Raw%s>);\n" c_name name;
+ ) external_structs;
+ pr "}\n";
+
+ (* [Outline] There are three types for each optional structs: SOptArgs,
+ * CExprSOptArgs, RawSOptArgs.
+ * SOptArgs: for Rust bindings' API. This can be seen by bindings' users.
+ * CExprSOptArgs:...
2019 Jul 20
2
Re: [PATCH] Rust bindings: Add Rust bindings
> Is this just trying if the guestfs can be linked with?
Yes. In OCaml bindings, there is the corresponding test(
https://github.com/libguestfs/libguestfs/blob/master/ocaml/t/guestfs_010_load.ml).
I just mimicked it. If it is not required, I will remove it.
divided the generated files and handmade files in rust/src/ directory. I'll
send this fixed patch to this mailing list.
I'm not
2019 Jul 08
2
Re: [PATCH] Add Rust bindings
On Mon, Jul 08, 2019 at 10:04:57AM +0100, Richard W.M. Jones wrote:
>On Mon, Jul 08, 2019 at 10:49:55AM +0200, Martin Kletzander wrote:
>> On Mon, Jul 08, 2019 at 10:10:10AM +0200, Pino Toscano wrote:
>> >On Saturday, 6 July 2019 13:03:24 CEST Martin Kletzander wrote:
>> >>Just one thing, the Cargo.toml includes a version under which the crate would be
>>
2019 Jul 29
1
Re: [PATCH] Rust bindings: Add Rust bindings
...List.iter (
+ fun { s_camel_name = name; s_name = c_name; } ->
+ pr " #[allow(dead_code)]\n";
+ pr " fn guestfs_free_%s(v: *const Raw%s);\n" c_name name;
+ pr " #[allow(dead_code)]\n";
+ pr " fn guestfs_free_%s_list(l: *const RawList<Raw%s>);\n" c_name name;
+ ) external_structs;
+ pr "}\n";
+
+ (* [Outline] There are three types for each optional structs: SOptArgs,
+ * CExprSOptArgs, RawSOptArgs.
+ * SOptArgs: for Rust bindings' API. This can be seen by bindings' users.
+ * CExprSOptArgs:...
2019 Jul 17
2
[PATCH] Rust bindings: Add Rust bindings
...type Item = *const T;
+ fn next(&mut self) -> Option<*const T> {
+ let r = unsafe { *(self.p) };
+ if r.is_null() {
+ None
+ } else {
+ self.p = unsafe { self.p.offset(1) };
+ Some(r)
+ }
+ }
+}
+
+#[repr(C)]
+struct RawList<T> {
+ size: u32,
+ ptr: *const T,
+}
+
+struct RawListIter<'a, T> {
+ current: u32,
+ list: &'a RawList<T>,
+}
+
+impl<T> RawList<T> {
+ fn iter<'a>(&'a self) -> RawListIter<'a, T> {
+ RawListIter {
+...
2019 Jul 26
4
Re: [PATCH] Rust bindings: Add Rust bindings
Hi Hiroyuki,
sorry for the late reply.
Most of the work is definitely nice! There are few notes below,
although they are not big issues. I will check this patch once more
on monday, especially the rust parts.
Otherwise, I'd say that we are close to merging this :)
On Tuesday, 23 July 2019 10:37:17 CEST Hiroyuki Katsura wrote:
> From: Hiroyuki_Katsura
2019 Jul 02
16
[PATCH] Add Rust bindings
I fixed the patch I submitted before based on comments, and there are some
commits which are merged or divided. So, I will re-send all the patches.
Regards,
Hiroyuki Katsura