home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / lifeos2.zip / LIFE-1.02 / EXAMPLES / SUPERLIN / SL_IO_UT.LF < prev    next >
Text File  |  1996-06-04  |  2KB  |  97 lines

  1. %
  2. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3. %
  4. %
  5. %                       I/O UTILITIES FOR SUPERLINT
  6. %                       ---------------------------
  7. %
  8. %  
  9. %
  10. %
  11. %  AUTHOR : Arnaud Venet                     CREATION : September 17th 1993
  12. %  ------                                    --------
  13. %
  14. %
  15. %                             ---------------                        
  16. %
  17. %                    
  18. %                   Last modification : September 17th 1993 
  19. %
  20. %
  21. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  22. %  (C) Digital Equipment Corporation 1993
  23. %
  24. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  25. %
  26.  
  27.  
  28.  
  29. remove_file(File) :-
  30.   @ = system(strcon("rm ", File)).
  31.  
  32.  
  33. %
  34. % ------------------------------------------------------------------------------
  35. %
  36.  
  37.  
  38. safe_open_in(File, InStream) :-
  39.   (
  40.     exists_file(File),
  41.     !,
  42.     open_in(File, InStream)
  43.   ;
  44.     write_err(">>> superlint : file ", File, " doesn't exist"),
  45.     nl_err,
  46.     halt
  47.   ).
  48.   
  49.  
  50. %
  51. % ------------------------------------------------------------------------------
  52. %
  53.  
  54.  
  55. display_token(identifier(Identifier)) -> truncate(Identifier).
  56.  
  57.  
  58. display_token(number(integer(Number))) -> Number.
  59.  
  60.  
  61. display_token(number(float(integer_part => IntegerPart, 
  62.                            decimal_part => DecimalPart))) -> 
  63.   strcon(IntegerPart, strcon(".", DecimalPart)).
  64.  
  65.  
  66. display_token(characters(Characters)) -> Characters.
  67.  
  68.  
  69. display_token(characters_string(String)) -> String.
  70.  
  71.  
  72. display_token(Token) -> root_sort(Token).
  73.  
  74.  
  75. %
  76. % ------------------------------------------------------------------------------
  77. %
  78.  
  79.  
  80. truncate(String) -> TruncatedString
  81.   | (
  82.       strlen(String) > max_string_length,
  83.       !,
  84.       TruncatedString = 
  85.         strcon(substr(String, 1, max_string_length), "...")
  86.     ;
  87.       TruncatedString = String
  88.     ).
  89.  
  90.  
  91. %
  92. % ------------------------------------------------------------------------------
  93. %
  94.  
  95.  
  96.  
  97.