system/std.zusatz/1.8.7/src/std analysator

Raw file
Back to index

PACKET std analysator                             (* Autor : Rudolf Ruland *)
                                                  (* Stand : 06.11.86      *)
       DEFINES std analysator :
 
 
LET text code                      =  1, 
    error code                     =  2, 
    token code                     =  3; 
 
INT VAR instruction begin;
TEXT VAR unknown instruction := "";
     
PROC std analysator (INT CONST op code, TEXT VAR string,
                     INT VAR par1, par2, par3, par4, par5, par6, par7) :
 
  SELECT op code OF 
   
    CASE text code   :  analyse text 
    CASE error code  :  report errors 
    CASE token code  :  report tokens 
 
  END SELECT ;
 
  . record     :  string
  . record pos :  par1
  . width      :  par4
  . height     :  par5
  . depth      :  par6
 
  . analyse text : 
      instruction begin := record pos + 1;
      record pos := pos (record, "#", instruction begin) + 1;
      width      := 0;
      height     := 0;
      depth      := 0;
      unknown instruction := subtext (record, instruction begin, instruction end);
 
      . instruction end : record pos - 2
 
 
. error msg  :  string 
. error nr   :  par1
.
  report errors :
    IF error nr = 0
       THEN error msg := "unbekannte Anweisung (ignoriert): ";
            error msg CAT unknown instruction;
            error nr  := 1;
       ELSE error msg := "";
            error nr  := 0;
    FI;
 
 
. token text           :  string
. token nr             :  par1
. token font nr        :  par2
. token modifications  :  par3
. token width          :  par4
. token x pos          :  par5
. token y pos          :  par6
. token type           :  par7
. 
  report tokens :
 
END PROC std analysator;
 
END PACKET std analysator;