Background
I'm currently writing my own (retrospective) line by line debugger for cold fusion because the existing line by line debuggers don't work for our version of cold fusion with our version of Eclipse. I have (for tag format at least) got this pretty much working. It functions simply by having a java program instrumente each (valid) line with <CFDUMP var='LINENUMBER' output='D:/retrospectiveData.txt'>
and then the same program interprets this output file to show a nice line by line progress through the program (even though its after the fact)
The problem
While the vast majority of tags behave such that if the tag before them is executed they are as well <cfelse>
and <cfelseif>
don't work this way. This means that those lines can be incorrectly shown in my debugger as being run. For example consider the following instrumented program
<CFDUMP var='1' output='D:/retrospectiveData.txt'><cfif 1=1>
<CFDUMP var='2' output='D:/retrospectiveData.txt'> <!--- something --->
<CFDUMP var='3' output='D:/retrospectiveData.txt'><cfelseif 1=1>
<CFDUMP var='4' output='D:/retrospectiveData.txt'> <!--- something2 --->
<CFDUMP var='5' output='D:/retrospectiveData.txt'></cfif>
The <cfelseif 1=1>
will be marked as being executed when in fact it never was. Given that it evaluates to true this will make it confusing that <!--- something2 --->
never runs
The question
Is there any way to have a text file output when an or tag is executed (whether it evaluates to true or false). I know I can't simply stuff an extra tag inside the <cfelseif 1=1>
.