Actually add module needed for $SHOW-ESCAPES functionality.
This commit is contained in:
parent
f8a91010c8
commit
a48e8dab05
1 changed files with 39 additions and 0 deletions
39
REESCAPE.COB
Normal file
39
REESCAPE.COB
Normal file
|
@ -0,0 +1,39 @@
|
|||
IDENTIFICATION DIVISION.
|
||||
PROGRAM-ID. "RE-ESCAPE".
|
||||
|
||||
DATA DIVISION.
|
||||
WORKING-STORAGE SECTION.
|
||||
01 ESCAPED PIC X(999).
|
||||
01 PTRS.
|
||||
03 IN-PTR PIC 999.
|
||||
03 OUT-PTR PIC 999.
|
||||
01 CURRENT-CHAR PIC X.
|
||||
88 ESCAPE-CHAR VALUE "$".
|
||||
01 LOOP-STATE PIC 99.
|
||||
88 DONE VALUE 99.
|
||||
|
||||
LINKAGE SECTION.
|
||||
01 UNESCAPED PIC X(999).
|
||||
01 COUNTER PIC 9.
|
||||
|
||||
PROCEDURE DIVISION USING UNESCAPED, COUNTER.
|
||||
MOVE 0 TO LOOP-STATE, COUNTER.
|
||||
MOVE 1 TO IN-PTR, OUT-PTR.
|
||||
MOVE SPACES TO ESCAPED.
|
||||
PERFORM MAYBE-ESCAPE-CHAR UNTIL DONE.
|
||||
MOVE ESCAPED TO UNESCAPED.
|
||||
EXIT PROGRAM.
|
||||
|
||||
MAYBE-ESCAPE-CHAR.
|
||||
IF IN-PTR IS LESS THAN 999 AND
|
||||
OUT-PTR IS LESS THAN 999 THEN
|
||||
UNSTRING UNESCAPED INTO CURRENT-CHAR WITH POINTER IN-PTR
|
||||
IF ESCAPE-CHAR THEN
|
||||
IF OUT-PTR IS LESS THAN 998 THEN
|
||||
ADD 1 TO COUNTER
|
||||
STRING "$$" INTO ESCAPED WITH POINTER OUT-PTR
|
||||
ELSE MOVE 99 TO LOOP-STATE
|
||||
ELSE
|
||||
STRING CURRENT-CHAR INTO ESCAPED WITH POINTER OUT-PTR
|
||||
ELSE
|
||||
MOVE 99 TO LOOP-STATE.
|
Loading…
Reference in a new issue