*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> Uil (3X)              
Title
Content
Arch
Section
 

Uil(3X)

Contents


NAME    [Toc]    [Back]

       Uil - Invokes the UIL compiler from within an application

SYNOPSIS    [Toc]    [Back]

       #include <uil/UilDef.h>

       Uil_status_type   Uil  (command_desc,  compile_desc,  message_cb,
 message_data, status_cb, status_data)
               Uil_command_type *command_desc;
               Uil_compile_desc_type *compile_desc;
               Uil_continue_type (*message_cb) ();
               char *message_data;
               Uil_continue_type (*status_cb) ();
               char *status_data;

DESCRIPTION    [Toc]    [Back]

       The Uil function provides a callable entry point  for  the
       UIL  compiler.  The  Uil callable interface can be used to
       process a UIL source file and to generate  UID  files,  as
       well  as  return  a detailed description of the UIL source
       module in the form of a symbol table (parse tree).  Specifies
  the  uil  command  line.  Returns the results of the
       compilation.  Specifies a callback function that is called
       when  the  compiler  encounters  errors in the UIL source.
       Specifies user data that is passed to the message callback
       function  (message_cb).  Note  that  this  argument is not
       interpreted by UIL, and is used exclusively by the calling
       application.  Specifies a callback function that is called
       to allow X applications to service X events such as updating
  the screen.  This function is called at various check
       points, which have been hard coded into the UIL  compiler.
       The status_update_delay argument in command_desc specifies
       the number of check points to be passed  before  the  status_cb
  function  is invoked.  Specifies user data that is
       passed to the status callback function  (status_cb).  Note
       that this argument is not interpreted by the UIL compiler,
       and is used exclusively by the calling application.

       The  data   structures   Uil_command_type   and   Uil_compile_desc_type
 are detailed below.

       typedef struct Uil_command_type { char *source_file;
           /* single source to compile */ char *resource_file; /*
       name of output file */  char  *listing_file;  /*  name  of
       listing file */ unsigned int *include_dir_count;
           /*   number   of   dirs.   in   include_dir   */  char
       *((*include_dir) []);
           /* dir. to search for include files */ unsigned  listing_file_flag:
 1;
           /*  produce  a listing */ unsigned resource_file_flag:
       1;
           /* generate UID output */ unsigned  machine_code_flag:
       1;
           /*     generate     machine     code    */    unsigned
       report_info_msg_flag: 1;
           /*    report     info     messages     */     unsigned
       report_warn_msg_flag: 1;
           /* report warnings */ unsigned parse_tree_flag: 1;
           /*   generate   parse   tree   */  unsigned  int  status_update_delay;

           /* number of times a status point is */
           /* passed before calling status_cb */
           /*  function  0  means  called  every  time  */   char
       *database;
           /* name of database file */ unsigned database_flag: 1;
           /* read a new database  file  */  unsigned  use_setlocale_flag:
 1;
           /* enable calls to setlocale */ };

       typedef  struct  Uil_compile_desc_type { unsigned int compiler_version;

           /*  version  number  of  compiler  */   unsigned   int
       data_version;
           /*    version    number    of   structures   */   char
       *parse_tree_root; /* parse tree  output  */  unsigned  int
       message_count  [Uil_k_max_status+1];  /* array of severity
       counts */ };

       Following is a description of the message  callback  function
 specified by message_cb:

       Uil_continue_type    (*message_cb)   (message_data,   message_number,
 severity, msg_buffer, src_buffer, ptr_buffer,
       loc_buffer, message_count)
               char *message_data;
               int message_number;
               int severity;
               char *msg_buffer, *src_buffer;
               char *ptr_buffer, *loc_buffer;
               int message_count[];


       Specifies  a callback function that UIL invokes instead of
       printing an error message when the compiler encounters  an
       error in the UIL source. The callback should return one of
       these values: Tells UIL to  terminate  processing  of  the
       source  file.  Tells UIL to continue processing the source
       file.

       Following are the arguments: Data supplied by the application
 as the message_data argument to the Uil function. UIL
       does not interpret this data in any way; it just passes it
       to  the callback.  An index into a table of error messages
       and severities, for internal use by UIL.  An integer  that
       indicates  the  severity of the error. The possible values
       are the status constants returned  by  the  Uil  function.
       See  the  RETURN  VALUE  section  below.   A  string  that
       describes the error.  A string consisting  of  the  source
       line  where the error occurred.  This is not always available;
 the argument is then NULL.  A string  consisting  of
       whitespace and a printing character in the character position
 corresponding to the column of the source line  where
       the error occurred. This string may be printed beneath the
       source line to provide a visual indication of  the  column
       where  the  error  occurred. This is not always available;
       the argument is then NULL.  A string identifying the  line
       number  and  file  of  the  source  line  where  the error
       occurred. This is not always available;  the  argument  is
       then  NULL.  An array of integers containing the number of
       diagnostic messages issued  thus  far  for  each  severity
       level.  To find the number of messages issued for the current
 severity level, use  the  severity  argument  as  the
       index into this array.

       Following is a description of the status callback function
       specified by status_cb:

       Uil_continue_type (*status_cb) (status_data,  percent_complete,
 lines_processed, current_file, message_count)
               char *status_data;
               int percent_complete;
               int lines_processed;
               char *current_file;
               int message_count[];


       Specifies  a  callback function that is invoked to allow X
       applications to service X  events  such  as  updating  the
       screen.  The  callback  should return one of these values:
       Tells UIL to terminate  processing  of  the  source  file.
       Tells UIL to continue processing the source file.

       Following are the arguments: Data supplied by the application
 as the status_data argument to the Uil function.  UIL
       does not interpret this data in any way; it just passes it
       to the callback.  An integer indicating what percentage of
       the  current  source  file  has been processed so far.  An
       integer indicating how many lines of  the  current  source
       file have been read so far.  A string containing the pathname
 of the current source file.   An  array  of  integers
       containing  the  number of diagnostic messages issued thus
       far for each severity level. To find the  number  of  messages
  issued for a given severity level, use the severity
       level as the index into this array. The possible  severity
       levels  are the status constants returned by the Uil function.
 See the RETURN VALUE section below.

RETURN VALUE    [Toc]    [Back]

       This function returns one  of  these  status  return  constants:
 The operation succeeded.  The operation succeeded,
       and an informational message is returned.   The  operation
       succeeded,  and a warning message is returned.  The operation
 failed due to an error.  The operation failed due  to
       an error.

SEE ALSO    [Toc]    [Back]

      
      
       UilDumpSymbolTable(3X), uil(1X)



                                                          Uil(3X)
[ Back ]
 Similar pages
Name OS Title
ladebug Tru64 Invokes the Ladebug debugger
cedit Tru64 Invokes the UDC Manager utility
ftnsplit IRIX Invokes the Fortran file splitter
ftnmgen IRIX Invokes the Fortran makefile generator
installupdate Tru64 Invokes the Update Installation procedure
netscape Tru64 Invokes Netscape (R) Communicator for the World Wide Web
ftnchop IRIX Invokes the program unit problem isolator
kloadsrv Tru64 Invokes the kernel load server daemon
setup Tru64 invokes a system setup menu for console and workstation displays without graphics capabilities
runcord Tru64 invokes cord to rearrange procedures in an executable file to facilitate better cache mapping
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service