Guardian Programmer's Guide

Table Of Contents
Formatting and Manipulating Character Data
Guardian Programmer’s Guide 421922-014
19 - 47
Sorting Characters
?INSPECT,SYMBOLS
?NOLIST, SOURCE $TOOLS.ZTOOLD04.ZSYSTAL;
?LIST
!Literals:
LITERAL ELEMENT^SIZE = 6;
LITERAL MAXFLEN = ZSYS^VAL^LEN^FILENAME;
!Global variables:
INT TERM^NUM;
INT ERROR;
?NOLIST
?SOURCE $SYSTEM.SYSTEM.EXTDECS0(HEAPSORTX_,PROCESS_GETINFO_,
? WRITEX,PROCESS_STOP_,INITIALIZER,FILE_OPEN_)
?LIST
!------------------------------------------------------------
! Procedure to sort two strings A and B. Returns 1 if A less
! than B, returns 0 if B less than or equal to A.
!------------------------------------------------------------
INT PROC ASCENDING(A,B);
INT .EXT A;
INT .EXT B;
BEGIN
RETURN IF A < B FOR ELEMENT^SIZE THEN 1 ELSE 0;
END;