[Back to MISC SWAG index] [Back to Main SWAG index] [Original]
{
> Ok I am playing and trying to get a unit to do this stuff
> AddFunction( fn : string); (* add a function name to the loop *)
> RemoveFuction( fn : string); ReadyLoop; StartLoop; EndLoop; ClearLoop;
> basicly the statloop will run ALL the AddFunction'ed functoins til the
> code hits a EndLoop;
You could have an array of procedures/functions... thus:
}
Type
MyFunction:Function (X,Y,Z:Byte; R:Real; S:String; Var W:Word):String;
{Create exactly what you need. You probibly only want function:Boolean or
something}
Var
Funcs:Array[1..20] Of MyFunction;
FuncsCount:Byte;
{$F+}
Function Example_My_Func(X,Y,Z:Byte; R:Real; S:String; Var W:Word):String;
Begin
{Any code here!}
Example_My_Func:=S+'!';
End;
{$F-}
Procedure Add_Function(Func:MyFunction);
Begin
Inc(FuncsCount);
Funcs[FuncsCount]:=Func;
End;
Procedure Call_All_Funcs;
Var
L:Byte;
A_Word:Word;
Begin
For L:=1 To FuncsCount Do
Writeln(Funcs[FuncsCount](1,2,3,1.55,'Yay',A_Word));
End;
Begin
FuncsCount:=0; {Initialisation}
Add_Function(@Example_My_Func); {<= Not sure if the '@' symbol is needed}
Call_All_Funcs;
{Dont need to remove them or anything.}
End.
[Back to MISC SWAG index] [Back to Main SWAG index] [Original]