B
Bartc
I need to be able generate C-style declarations from a specification (I call
it a typespec) in left-to-right form (as it might be expressed in English).
What is the algorithm, or where can I found the algorithm, to do so?
I have looked at some code in K&R2 p126 ('undcl'), but that works on
character input (I already have the typespec in internal form).
And I've heard of something called cdecl.c but that seems to be 2000 lines +
headers which I'm not keen to delve into; I expect the code to be very
simple, once I know it..
Simple Examples:
Input Outputs (with and without embedded name)
'Array 3 of int' int x[3] int[3]
'Pointer to char' char *x char*
But this needs to work with arbitrary typespecs.
it a typespec) in left-to-right form (as it might be expressed in English).
What is the algorithm, or where can I found the algorithm, to do so?
I have looked at some code in K&R2 p126 ('undcl'), but that works on
character input (I already have the typespec in internal form).
And I've heard of something called cdecl.c but that seems to be 2000 lines +
headers which I'm not keen to delve into; I expect the code to be very
simple, once I know it..
Simple Examples:
Input Outputs (with and without embedded name)
'Array 3 of int' int x[3] int[3]
'Pointer to char' char *x char*
But this needs to work with arbitrary typespecs.