[fpc-pascal] Procedures that work like WRITELN()

James Richters james.richters at productionautomation.net
Wed Dec 27 12:25:01 CET 2023


I wanted to write what I thought should be a simple procedure, just instead
of calling WRITELN() with some arguments,
call WRITELOG() with the same arguments that you would use to write to a
file, but my WRITELOG() procedure would 
write to the screen and the file.. but I can't figure out how to pass all
the arguments to the two WRTIELNs.
 
So..
 
Procedure WriteLog(Filename:String, AllOtherAurguments:????);
Begin
    Writeln(Filename,AllOtherAurguments);
    Writeln(AllOtherAurguments);
End;
 
How can I make this work?  Since WRITELN can take any number of many kinds
of arguments,
how can I get them all and pass them along without knowing how many or what
types they are?
How does WRITELN even work when you don't know this information?  
 
I'm guessing there should be some way to do this, because WRITELN itself
works, but how it could 
possibly work is not within my experience. 
 
The only way I could think of would be if there were versions of WRITELN
with every combination
of possible arguments, but that seems completely unmanageable and
ridiculous,
so there must be something more advanced going on, but maybe WRTELN is
special and not something I can duplicate?
 
 
Any Ideas?
 
James
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20231227/262099c8/attachment-0001.htm>


More information about the fpc-pascal mailing list