Merge branch 'master' of ssh://git.samba.org/data/git/samba into noejs
[samba.git] / pidl / TODO
1 - warn when union instances don't have a discriminant
2
3 - EJS output backend shouldn't use the NDR levels stuff but instead 
4   as the "C levels" and NDR levels don't necessarily match.
5
6 - true multiple dimension array / strings in arrays support
7
8 - compatibility mode for generating MIDL-readable data:
9  - strip out pidl-specific properties
10
11 - make bitmap an optional attribute on enum
12 - support nested elements
13 - support typedefs properly (e.g. allow "typedef void **bla;")
14 - make typedefs generate real typedefs
15 - improve represent_as(): allow it to be used for arrays and other complex 
16   types
17
18 - --explain-ndr option that dumps out parse tree ?
19
20 - seperate tables for NDR and DCE/RPC
21  - maybe no tables for NDR at all? we only need them for ndrdump 
22    and that can use dlsym()
23
24 - allow data structures outside of interfaces
25
26 - mem_ctx in the interface rather than as struct ndr member.
27
28 - real typelibs
29
30 - fix [in,out] handling and allocation for samba3:
31  - add inout
32  - make NULL to mean "allocate me"
33  - remove NDR_AUTO_REF_ALLOC flag
34
35 - automatic test generator based on IDL pointer types
36
37 - support converting structs to tuples in Python rather than objects
38 - convert structs with a single mattering member to that member directly, e.g.:
39   struct bar {
40     int size;
41         [size_is(size)] uint32 *array;
42   };
43
44   should be converted to an array of uint32's
45
46 - python: fill in size members automatically in some places if the struct isn't being returned
47   (so we don't have to cope with the array growing)