diff options
author | Andrew Tridgell <tridge@samba.org> | 2000-05-17 07:10:50 +0000 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 2000-05-17 07:10:50 +0000 |
commit | 6738591a229c728ab9d64192e197ac93645a8897 (patch) | |
tree | 2ee35bd2c61df7a94bb6dd219aec2e148702966a /source3/aparser/parsetree.awk | |
parent | ba2f726efdb97c95c6110b0365a011121e27fce3 (diff) | |
download | samba-6738591a229c728ab9d64192e197ac93645a8897.tar.gz samba-6738591a229c728ab9d64192e197ac93645a8897.tar.bz2 samba-6738591a229c728ab9d64192e197ac93645a8897.zip |
added primitive define macros
started converting matty's srvsvc.idl to a .struct file
(This used to be commit cf8d4c42e259d65d4d16c91316acc0bad71ff177)
Diffstat (limited to 'source3/aparser/parsetree.awk')
-rw-r--r-- | source3/aparser/parsetree.awk | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/source3/aparser/parsetree.awk b/source3/aparser/parsetree.awk index fe0958e7bf..6fee6e2a4a 100644 --- a/source3/aparser/parsetree.awk +++ b/source3/aparser/parsetree.awk @@ -9,17 +9,10 @@ function start_module(name) num_tests=0; } -function parse_typedef(type1, type2, - LOCAL, type, i) +function parse_define(def1, def2, + LOCAL, type, i) { - type=type2; - if (substr(type,1,1)=="*") type=substr(type,2); - - i=match(type,"[[]"); - if (i != 0) type = substr(type, 1, i-1); - start_struct(type); - add_struct_elem(type1, type2); - end_struct(""); + defines[def1]=def2; } function start_struct(name) @@ -44,6 +37,9 @@ function end_struct(name) function add_element(type, elem, case, LOCAL, elem_num, i, v) { + while (defines[type]!="") { + type=defines[type]; + } elem_num=num_elements; if (substr(elem, 1, 1) == "*") { |