aboutsummaryrefslogtreecommitdiffstats
path: root/tools/libxl/idl.txt
diff options
context:
space:
mode:
authorGianni Tedesco <gianni.tedesco@citrix.com>2010-09-16 17:12:21 +0100
committerGianni Tedesco <gianni.tedesco@citrix.com>2010-09-16 17:12:21 +0100
commit7c12b60534f8192967ede71f70d8ea52741f3270 (patch)
tree0ad2a9974a6e3e648bf0313015d81fc10f0d9a57 /tools/libxl/idl.txt
parent8fa2c1212db29509d38076a9930c8f328a91fc01 (diff)
downloadxen-7c12b60534f8192967ede71f70d8ea52741f3270.tar.gz
xen-7c12b60534f8192967ede71f70d8ea52741f3270.tar.bz2
xen-7c12b60534f8192967ede71f70d8ea52741f3270.zip
libxl: change IDL to export a saner interface for upcoming language bindings
Firstly remove an anonymous union in libxl_device_pci structure which was making auto-generating language bindings more complicated than necessary and exporting random bits of low level ABI that libxl that would rather hide anyway. There is a corresponding (untested) change to the ocaml binding which maintains previous ml API. Secondly make the libxl_file_reference type a Builtin. This is a 'semantic correctness' issue in that libxl ABI/API won't change. But it makes it so that when the IDL is used to generate language bindings that a file_reference type is not exported. Also implement a Numeric type which all integers are derived from. Make sure a boolean signed/unsigned attribute is set accordingly. This is required to allow language bindings to correctly handle the sign bit in environments with arbitrarily long integers. Signed-off-by: Gianni Tedesco <gianni.tedesco@citrix.com> Acked-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Diffstat (limited to 'tools/libxl/idl.txt')
-rw-r--r--tools/libxl/idl.txt3
1 files changed, 2 insertions, 1 deletions
diff --git a/tools/libxl/idl.txt b/tools/libxl/idl.txt
index 9cb3f67ee7..c691051393 100644
--- a/tools/libxl/idl.txt
+++ b/tools/libxl/idl.txt
@@ -13,7 +13,8 @@ contain the initial namespace element (e.g. "libxl_"). See below for
how to specify a namespace.
The Type.typename contains the C name of the type _including_ the
-namespace element.
+namespace element while Type.rawname is always set to the 'base' name
+of the type.
The libxltypes.Type base class has several other properties which
apply to all types. The properties are set by passing a named