daemon: debug segv correct use of dereferencing NULL.
[libguestfs.git] / generator / generator_types.ml
index 9da7e45..16cb089 100644 (file)
@@ -20,7 +20,7 @@
 
 (* Types used to describe the API. *)
 
-type style = ret * args * args
+type style = ret * args * optargs
     (* The [style] is a tuple which describes the return value and
      * arguments of a function.
      * 
@@ -203,6 +203,14 @@ and argt =
      *)
   | Pointer of (string * string)
 
+and optargs = optargt list
+
+and optargt =
+  | OBool of string    (* boolean *)
+  | OInt of string     (* int (smallish ints, signed, <= 31 bits) *)
+  | OInt64 of string   (* any 64 bit int *)
+  | OString of string  (* const char *name, cannot be NULL *)
+
 type errcode = [ `CannotReturnError | `ErrorIsMinusOne | `ErrorIsNULL ]
 
 type flags =
@@ -290,6 +298,12 @@ and test =
      *)
   | TestOutputDevice of seq * string
 
+    (* Run the command sequence and expect a hashtable.  Check
+     * one of more fields in the hashtable against known good
+     * strings.
+     *)
+  | TestOutputHashtable of seq * (string * string) list
+
   (* Run the command sequence and expect the final command (only)
    * to fail.
    *)