a68g-listing.h

     
   1  //! @file a68g-listing.h
   2  //! @author J. Marcel van der Veer
   3  
   4  //! @section Copyright
   5  //!
   6  //! This file is part of Algol68G - an Algol 68 compiler-interpreter.
   7  //! Copyright 2001-2023 J. Marcel van der Veer [algol68g@xs4all.nl].
   8  
   9  //! @section License
  10  //!
  11  //! This program is free software; you can redistribute it and/or modify it 
  12  //! under the terms of the GNU General Public License as published by the 
  13  //! Free Software Foundation; either version 3 of the License, or 
  14  //! (at your option) any later version.
  15  //!
  16  //! This program is distributed in the hope that it will be useful, but 
  17  //! WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 
  18  //! or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 
  19  //! more details. You should have received a copy of the GNU General Public 
  20  //! License along with this program. If not, see [http://www.gnu.org/licenses/].
  21  
  22  //! @section Synopsis
  23  //!
  24  //! Definitions for making listing files.
  25  
  26  #if ! defined (__A68G_LISTING_H__)
  27  #define __A68G_LISTING_H__
  28  
  29  void list_source_line (FILE_T, LINE_T *, BOOL_T);
  30  void print_mode_flat (FILE_T, MOID_T *);
  31  void tree_listing (FILE_T, NODE_T *, int, LINE_T *, int *, BOOL_T);
  32  void write_listing_header (void);
  33  void write_listing (void);
  34  void write_object_listing (void);
  35  void write_source_listing (void);
  36  void write_tree_listing (void);
  37  
  38  #endif