Subversion Repositories Vertical

Rev

Rev 2 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. /*
  2.  *$Header: c:\\cygwin\\cvsroot/Vert03/vertlib/lx_support.h,v 1.1.1.1 2003/11/04 23:34:56 mjames Exp $
  3.  *
  4.  * $Log: lx_support.h,v $
  5.  * Revision 1.1.1.1  2003/11/04 23:34:56  mjames
  6.  * Imported into local repositrory
  7.  *
  8.  * Revision 1.4  2002/01/15 12:33:44  mjames
  9.  * DLL declarations put in
  10.  *
  11.  * Revision 1.3  2001/10/31 22:20:08  mjames
  12.  * Tidying up problematical comments caused by CVS
  13.  * 'intelligent' comment guessing
  14.  *
  15.  *
  16.  * Revision 1.2  2001/06/06 12:10:20  mjames
  17.  * Move from HPUX
  18.  *
  19.  * Revision 1.1.1.1  2000/10/19 21:58:38  mjames
  20.  * Mike put it here
  21.  *
  22.  *
  23.  * Revision 1.34  2000/10/04  10:37:11  10:37:11  mjames (Mike James)
  24.  * Modified for Vertical2 : support COMPONENTS and SIGNALS
  25.  *
  26.  * Revision 1.34  2000/10/04  10:37:11  10:37:11  mjames (Mike James)
  27.  * Part of Release PSAVAT01
  28.  *
  29.  * Revision 1.33  2000/10/02  11:04:16  11:04:16  mjames (Mike James)
  30.  * new_vhdl
  31.  *
  32.  
  33.  * Revision 1.32  2000/09/27  14:42:23  14:42:23  mjames (Mike James)
  34.  
  35.  * Part of Release Sep_27_ST_2000
  36.  
  37.  *
  38.  
  39.  * Revision 1.31  2000/09/27  10:57:48  10:57:48  mjames (Mike James)
  40.  
  41.  * Moved cleanup lex_strings call to the yacc parser
  42.  
  43.  * as it previously free'd strings prior to use
  44.  
  45.  * under some circumstances.
  46.  
  47.  *
  48.  
  49.  * Revision 1.30  2000/09/21  10:15:53  10:15:53  mjames (Mike James)
  50.  
  51.  * Part of Release Sep21Alpha
  52.  
  53.  *
  54.  
  55.  * Revision 1.29  2000/08/25  09:57:18  09:57:18  mjames (Mike James)
  56.  
  57.  * Part of Release Aug25_alpha
  58.  
  59.  *
  60.  
  61.  * Revision 1.28  2000/08/16  08:57:35  08:57:35  mjames (Mike James)
  62.  
  63.  * Part of Release CD01_Aug2000
  64.  
  65.  *
  66.  
  67.  * Revision 1.27  2000/08/14  14:45:15  14:45:15  mjames (Mike James)
  68.  
  69.  * Part of Release Aug_14_2000
  70.  
  71.  *
  72.  
  73.  * Revision 1.26  2000/08/11  08:30:36  08:30:36  mjames (Mike James)
  74.  
  75.  * Part of Release Aug_11_2000
  76.  
  77.  *
  78.  
  79.  * Revision 1.25  2000/08/09  10:31:52  10:31:52  mjames (Mike James)
  80.  
  81.  * Part of Release Aug__9_2000
  82.  
  83.  *
  84.  
  85.  * Revision 1.24  2000/05/31  11:43:04  11:43:04  mjames (Mike James)
  86.  
  87.  * Part of Release May_31_2000
  88.  
  89.  *
  90.  
  91.  * Revision 1.23  2000/05/08  17:01:42  17:01:42  mjames (Mike James)
  92.  
  93.  * Part of Release May__8_2000
  94.  
  95.  *
  96.  
  97.  * Revision 1.22  2000/05/08  16:59:35  16:59:35  mjames (Mike James)
  98.  
  99.  * Part of Release May__8_2000
  100.  
  101.  *
  102.  
  103.  * Revision 1.21  2000/05/08  16:57:12  16:57:12  mjames (Mike James)
  104.  
  105.  * Part of Release May__8_2000
  106.  
  107.  *
  108.  
  109.  * Revision 1.20  2000/03/08  16:19:14  16:19:14  mjames (Mike James)
  110.  
  111.  * New version including PC
  112.  
  113.  *
  114.  
  115.  * Revision 1.17  2000/02/18  15:45:36  15:45:36  mjames (Mike James)
  116.  
  117.  * Amended to support PC
  118.  
  119.  *
  120.  
  121.  * Revision 1.16  2000/01/20  15:58:52  15:58:52  mjames (Mike James)
  122.  
  123.  * Part of Release R22
  124.  
  125.  *
  126.  
  127.  * Revision 1.15  99/12/22  11:15:33  11:15:33  mjames (Mike James)
  128.  
  129.  * Part of Release Dec_22_1999
  130.  
  131.  *
  132.  
  133.  * Revision 1.14  99/11/23  13:52:08  13:52:08  mjames (Mike James)
  134.  
  135.  * Addded syntax to support special generics for Certify support
  136.  
  137.  *
  138.  
  139.  * Revision 1.13  99/05/04  09:52:21  09:52:21  mjames (Mike James)
  140.  
  141.  * General checkin
  142.  
  143.  *
  144.  
  145.  * Revision 1.12  98/02/11  11:26:40  11:26:40  mjames (Mike James)
  146.  
  147.  * Checked in for version 6.2a
  148.  
  149.  *
  150.  
  151.  * Revision 1.11  97/04/23  08:44:15  08:44:15  mjames (Mike James)
  152.  
  153.  * CHecked in for release rel23041997
  154.  
  155.  *
  156.  
  157.  * Revision 1.10  96/07/19  14:38:54  14:38:54  mjames (Mike James)
  158.  
  159.  * Update to give to PRL
  160.  
  161.  *
  162.  
  163.  * Revision 1.9  1996/07/12  15:52:12  mjames
  164.  
  165.  * Sorted out things like Alias and Jumpers
  166.  
  167.  * Work Correctly
  168.  
  169.  * Print COrrectly
  170.  
  171.  *
  172.  
  173.  * Revision 1.8  96/06/17  13:01:56  13:01:56  mjames (Mike James)
  174.  
  175.  * Added case insensitive string compares
  176.  
  177.  *
  178.  
  179.  * Revision 1.7  96/03/29  14:46:53  14:46:53  mjames (Mike James)
  180.  
  181.  * Added VHDL netlist writing to the capabilities of ACFREAD
  182.  
  183.  *
  184.  
  185.  * Revision 1.6  96/03/18  13:51:18  13:51:18  mjames (Mike James)
  186.  
  187.  * Real Revision 2.1
  188.  
  189.  *
  190.  
  191.  * Revision 1.4  96/02/13  09:13:31  09:13:31  mjames (Mike James)
  192.  
  193.  * Updated to be version 2.0 with net joining
  194.  
  195.  *
  196.  
  197.  * Revision 1.3  96/02/08  15:28:33  15:28:33  mjames (Mike James)
  198.  
  199.  * First release
  200.  
  201.  *
  202.  
  203.  * Revision 1.2  96/02/07  16:02:19  16:02:19  mjames (Mike James)
  204.  
  205.  * Added correct RCS tags
  206.  
  207.  *
  208.  
  209.  * Revision 1.1  96/01/08  15:23:18  15:23:18  mjames (Mike James)
  210.  
  211.  * Initial revision
  212.  
  213.  *
  214.  
  215.  * Revision 1.2  96/01/04  17:55:54  17:55:54  mjames (Mike James)
  216.  
  217.  * Correcly reading ACF
  218.  
  219.  *
  220.  
  221.  * Revision 1.1  96/01/04  10:18:47  10:18:47  mjames (Mike James)
  222.  
  223.  * Initial revision
  224.  
  225.  *
  226.  
  227.  * Revision 1.1  94/03/23  17:11:09  17:11:09  mjames (Mike James)
  228.  
  229.  * Initial revision
  230.  
  231.  *
  232.  
  233.  * Revision 1.4  93/08/26  10:37:50  mjames
  234.  
  235.  * RCS header
  236.  
  237.  *  */
  238.  
  239.  
  240.  
  241. typedef struct str
  242.  
  243.   {
  244.  
  245.   char * dat ;
  246.  
  247.   struct str * next;
  248.  
  249.   } sstr ;
  250.  
  251.  
  252.  
  253.  
  254.  
  255. extern struct str  * lx_first, * lx_last;
  256.  
  257.  
  258.  
  259. /* variables defined here */
  260.  
  261. extern int yy_nArgs;
  262.  
  263. extern char **yy_Args;
  264.  
  265.  
  266.  
  267. /* these manipulate a small linked list of the tokens on the line */
  268.  
  269. /* if linemode is '1' then preserve quote escapes */
  270.  
  271. extern void expand_string( char * source ,
  272.       char * dest , int nArgs, char * Args[] );
  273.  
  274.  
  275.  
  276. /* handler for the struct str linked list string */
  277. extern char * make_string( char * token, struct str ** pfirst,
  278.                            struct str ** plast);
  279.  
  280. extern void   free_strings(  struct str ** pfirst,struct str ** plast);
  281.  
  282.  
  283. extern void free_lex_strings(void);
  284.  
  285.  
  286.  
  287. /* string comparison. Returns '1' for EQUAL !! */
  288.  
  289.  
  290.  
  291. extern  int strneq(char    *s1,char    *s2,int n);
  292.  
  293.  
  294.  
  295. extern  int streq(char    *s1,char    *s2);
  296.  
  297.