1 //#!gentee.exe -p default "%1"
2 /******************************************************************************
3 *
4 * Copyright (C) 2006, The Gentee Group. All rights reserved.
5 * This file is part of the Gentee open source project - http://www.gentee.com.
6 *
7 * THIS FILE IS PROVIDED UNDER THE TERMS OF THE GENTEE LICENSE ("AGREEMENT").
8 * ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE CONSTITUTES RECIPIENTS
9 * ACCEPTANCE OF THE AGREEMENT.
10 *
11 * ID: lextbl 17.10.06 0.0.A.HJWUU
12 *
13 * Author: Alexey Krivonogov ( gentee )
14 *
15 * Summary: This program creates tables for lexical analizer. It gets a
16 description in GT format and generate .g and *.c sourse files with the
17 according lexical tables.
18 *
19 ******************************************************************************/
20 include : $"..\..\lib\stdlib\stdlib.g"
21 include : "genlex.g"
22
23 /*-----------------------------------------------------------------------------
24 *
25 * ID: lextbl 12.10.06 1.1.A.ABKL
26 *
27 * Summary: This program loads all *.gt files with lexical tables from the
28 current directory and generate *.g or *.c files for gentee lexical analizer.
29 *
30 -----------------------------------------------------------------------------*/
31
32 func lextbl<main>
33 {
34 ffind fd
35 // This is required only for gentee2.dll. Later it must be deleted
36 // gentee_init( 0 )
37
38 // fd.init("fgentee.gt", $FIND_FILE )
39 fd.init("fc.gt", $FIND_FILE )
40 foreach cur, fd
41 {
42 str name
43
44 cur.name.fgetparts( 0->str, name, 0->str )
45 print("Generating \( name )...")
46 generatelex( name )
47 print("OK\n")
48 }
49 // gentee_deinit()
50 congetch("Press any key...")
51 }
52