summaryrefslogtreecommitdiff
path: root/README
blob: fb8fab4a912284901c51df14858c7fdfefd431cc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
This is a very first prototype of an introspection framework for GObject. 

The metadata format is described in metadata-format.txt, the XML IDL format 
follows the DTD in gidl.dtd. Look at the files in tests/ for testcases, 
and at examples/ for bigger examples. 

The code in src/ currently produces four things:
- g-idl-compile, a metadata compiler. It converts one or more IDL files 
  into one or more metadata blobs. It can either emit the raw metadata 
  blob (--raw) or C code (--code). 
- libirepository, the repository API. 
- g-idl-generate, an IDL generator, using the repository API. It generates
  IDL files from binary metadata which can be in a shared object, or a raw
  metadata blob (--raw). 
- a function to invoke functions, given the function info object. The 
  implementation is based on libffi (a recent snapshot of libffi can
  be found at http://spindazzle.org/libffi-green.tar.gz). After the 
  autoconfiscation, configure expects to find a ffi.pc file. The 
  ffi.pc.in file in this directory may be helpful in construction 
  such a file.

There are a number of IDL test files in test/, and a script to do
roundtrip tests (IDL -> binary -> IDL).
 
The introspection framework needs a lot more work, see TODO.