Trailing-Edge
-
PDP-10 Archives
-
decuslib20-07
-
decus/20-0172/msgmac.req
There is 1 other file named msgmac.req in the archive. Click here to see a list.
! MSGMAC.REQ -- Some general purpose definitions for PRETTY
!++
! Facility: PRETTY
!
! Abstract:
!
! This file contains the $BLF_MESSAGE macro.
!
! Environment: Transportable
!
! Creation Date: MAY 1981
!
!--
! This file assumes that the declaration
!
! LIBRARY 'XPORT:' ;
!
! or equivalent has already appeared in the program.
!++
! What follows is the set of declarations that are needed by any module
! that makes calls to the message facility.
!
! This set of declarations includes:
!
! - The declaration of the keyword macro that serves as the interface
! to the message facility.
! - An External Literal declaration referring to the message codes
! that are declared in the error message file.
! - A Literal declaration defining the integer codes that
! specify the type of error message to be written.
! - An External Routine declaration referring to the routine
! that the macro calls. The actual routine is declared in
! its own separate module (MSGMOD.BLI).
!
!--
!
! MACROS:
!
KEYWORDMACRO
$blf_message ( type = -1 ,
code = -1 ,
xcode = -1 ,
string = ,
fao1 = -1 ,
fao2 = -1 ) =
!+
! The main action of the macro is to call the routine BLF$_MSG.
!
! If the STRING parameter is specified in the macro call, the string
! information is stored in a local string descriptor and passed to the
! routine BLF$_MSG as the address of the descriptor.
!
! If the STRING parameter is not specified in the call to the macro,
! then the dummy address -1 is passed as the address of the string
! descriptor. The routine can check the value of the address to determine
! that no string was specified in the call to the macro.
!-
%IF %NULL (STRING) %THEN
BLF$_MSG (type, code, xcode, -1, fao1, fao2)
%ELSE
BEGIN
LOCAL
str_desc : $STR_DESCRIPTOR () ;
$STR_DESC_INIT (DESCRIPTOR = str_desc , %QUOTE STRING = string) ;
BLF$_MSG (type, code, xcode, str_desc, fao1, fao2) ;
END
%FI % ;
!
! EXTERNAL REFERENCES:
!
EXTERNAL LITERAL
!+
! The following literals are the message codes.
! When SIGNAL is called to signal an error, the message associated
! with the error is indicated by the message code.
!
! If any messages are added, deleted, of modified in the message file
! it is necessary to update this list of external
! references. At any given time, this list should be in one-to-one
! correspondence with the messages in the message file.
!-
PRETTY_ERRSFOUND,
PRETTY_BADINFILE ,
PRETTY_BADOUTFIL ,
PRETTY_BADLISFIL ;
!+
! The routine that does the message writing is declared as a global routine
! in its own module. Any module that calls it must have this External
! Routine declaration.
!
! The %DECLARED stuff is needed because the module that contains the
! message handling routine also contains this require file.
!-
%IF NOT %DECLARED (blf$_msg) %THEN
EXTERNAL ROUTINE
blf$_msg ;
%FI
!
! EQUATED SYMBOLS:
!
LITERAL
!+
! These literals are integer codes that the caller uses to specify
! the type of message to be written.
!-
output = 1 , ! Type = Output
debug = 2 , ! Type = Debug
xport = 3 , ! Type = Xport
success = 4 , ! Type = Standard Message
informational = 4 ,
warning = 4 ,
error = 4 ,
fatal = 4 ;
!++
! End of declarations needed for the message handling facility
!--
! MSGMAC.REQ -- LAST LINE