headertoxml now support any number of classes per header

This commit is contained in:
ocoursiere
2002-11-19 23:30:26 +00:00
parent 3f97b1f69d
commit 1d4758c59d

View File

@@ -173,39 +173,45 @@ begin
XMLWriter := TXMLWriter.Create(s); XMLWriter := TXMLWriter.Create(s);
try try
XMLWriter.StartClasses; XMLWriter.StartClasses;
XMLWriter.StartClasse(Elem); while Elem <> nil do
XMLWriter.StartFunction(Elem^.children); begin
CurrentArg := Elem^.args; if Elem <> nil then
if CurrentArg <> nil then WriteLn(Elem^.aName);
begin XMLWriter.StartClasse(Elem);
XMLWriter.StartParam(CurrentArg); XMLWriter.StartFunction(Elem^.children);
while CurrentArg^.Next <> nil do CurrentArg := Elem^.args;
if CurrentArg <> nil then
begin begin
CurrentArg := CurrentArg^.Next;
XMLWriter.StartParam(CurrentArg); XMLWriter.StartParam(CurrentArg);
end; while CurrentArg^.Next <> nil do
end;
XMLWriter.StartResult(Elem^.ret_type);
XMLWriter.EndFunction;
Current := Elem^.children;
while Current^.next <> nil do
begin
Current := Current^.next;
XMLWriter.StartFunction(Current);
CurrentArg := Current^.args;
if CurrentArg <> nil then
begin begin
CurrentArg := CurrentArg^.Next;
XMLWriter.StartParam(CurrentArg); XMLWriter.StartParam(CurrentArg);
while CurrentArg^.next <> nil do
begin
CurrentArg := CurrentArg^.next;
XMLWriter.StartParam(CurrentArg);
end;
end; end;
XMLWriter.StartResult(Current^.ret_type); end;
XMLWriter.EndFunction; XMLWriter.StartResult(Elem^.ret_type);
end; XMLWriter.EndFunction;
XMLWriter.EndClasse; Current := Elem^.children;
while Current^.next <> nil do
begin
Current := Current^.next;
XMLWriter.StartFunction(Current);
CurrentArg := Current^.args;
if CurrentArg <> nil then
begin
XMLWriter.StartParam(CurrentArg);
while CurrentArg^.next <> nil do
begin
CurrentArg := CurrentArg^.next;
XMLWriter.StartParam(CurrentArg);
end;
end;
XMLWriter.StartResult(Current^.ret_type);
XMLWriter.EndFunction;
end;
XMLWriter.EndClasse;
Elem := Elem^.next;
end;
XMLWriter.EndClasses; XMLWriter.EndClasses;
finally finally
XMLWriter.Free; XMLWriter.Free;