r7552: Use ParseExpr() for [value] attributes; allows
[Samba/aatanasov.git] / source / build / pidl / TODO
blobd63fb4af7eb8800c471d231940307136ee225466
1 - Fix string support.
2  This would make strings a special kind of arrays flagged by the 
3  [string] attribute. Pidl itself would support a couple of extra 
4  attributes for it's own use while being compatible with other IDL 
5  compilers. 
6  Proposed extensions for pidl (to arrays):
7    [convert(t)] attribute for forcing conversions from CH_UCS2, etc to UTF8
8    [noterm] attribute -> Indicating there is no terminating character
9    [nullterm] attribute -> Indicating the string is null terminated
11 The various flags for strings would change as follows:
13 LIBNDR_FLAG_STR_ASCII               -> [convert(CH_ASCII)]
14 LIBNDR_FLAG_STR_LEN4                        -> optionally [length_is()]
15 LIBNDR_FLAG_STR_SIZE4               -> [size_is()] or if needed [conformant]
16 LIBNDR_FLAG_STR_NOTERM              -> [noterm]
17 LIBNDR_FLAG_STR_NULLTERM            -> [nullterm]
18 LIBNDR_FLAG_STR_SIZE2               -> uint16 length; [string] char data[length]
19 LIBNDR_FLAG_STR_BYTESIZE            -> uint16 length; [string] char data[length]
20 LIBNDR_FLAG_STR_FIXLEN32            -> [32]
21 LIBNDR_FLAG_STR_CONFORMANT          -> no longer needed
22 LIBNDR_FLAG_STR_CHARLEN             -> ???
23 LIBNDR_FLAG_STR_UTF8                -> Nothing (but UCS2 has [convert(CH_UCS2)]
24 LIBNDR_FLAG_STR_FIXLEN15            -> [15]
26 - True multiple dimension array / strings in arrays support (closely related to 
27         things specified above)