PPWIZARD is a free preprocessor for HTML, REXX, Visual Basic or any text files.
![]() | ![]() | ![]() | ![]() | ![]() |
#pop |
This command can be used to restore macros or rexx variables from a stack or validate nesting. This is useful for recursive type applications.
Syntax #1 |
[WhiteSpace]#pop ["]Stack Name["]
When only one parameter is passed it is a simple stack pop with the name of the stack being passed. The same name would have been used on a previous #PUSH command.
Syntax #2 |
[WhiteSpace]#pop ["]Type["] ["]Item["] ...
The "Type" parameter is used to indicate what sort of information is being popped. This should be "MACRO" for macro values or "REXXVAR" for rexx variables.
You may specify one or more "Item" parameters. These are popped (with StackPop()) off the stack in reverse order (from right to left). The reason for the reverse order is so that you do not have to manually reverse them yourself and possibly making a mistake.
The items were probably originally placed onto the stack with the #PUSH command.
Example |
;---Set rexx variable and Save --- #RexxVar RxVar = 'Demonstating overlap' #push RexxVar RxVar ;--- Set macros and save value --- #define FirstMacro Something1 #define SecondMacro Something2 #push macro FirstMacro SecondMacro ;--- Restore The rexx variable --- #pop RexxVar RxVar ;--- Change Value --- #define FirstMacro SomethingElse1 ;--- Restore Values --- #pop macro FirstMacro SecondMacro