[Delphi 6] Introspection - iterate through all class members of a given type?



Suppose I have a form with several components of type TFooBar. An
event handler passes the form to some other modules method
FooBarInspector() that wants to deal all the FooBars on the object it
is passed.


procedure FooBarInspector(Thing:TObject);
begin

// how would I code this?
for each TFooBar (as aFooBar) in Thing do begin
doSomethingWith (aFooBar);
end;

end;

.