/[MITgcm]/mitgcm.org/devel/buildweb/code-browser/F90Mapper/VarDic.lex
ViewVC logotype

Contents of /mitgcm.org/devel/buildweb/code-browser/F90Mapper/VarDic.lex

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1.1.1 - (show annotations) (download) (vendor branch)
Fri Sep 20 19:47:31 2002 UTC (22 years, 9 months ago) by adcroft
Branch: Import, MAIN
CVS Tags: baseline, HEAD
Changes since 1.1: +0 -0 lines
Importing web-site building process.

1 /* $Id: VarDic.lex,v 1.2 1997/03/22 20:58:46 cnh Exp $ */
2 /* Lex analyser to process variable database into HTML table */
3 %p 100000
4 %a 100000
5 %o 100000
6 %n 100000
7 %k 100000
8 %e 100000
9 %option noyywrap
10
11 /* Matches variable names */
12 NAME [_a-zA-Z]+[_a-zA-Z0-9\./]*
13
14 %{
15 #include <stdio.h>
16 #include <string.h>
17 #include "VarDic.tab.h"
18 #include "GLOBALS.h"
19
20 /* DEBUGGING aids */
21 #define DP(a)
22 #define DP(a) (printf("\"%s\" (%d,%d)\n",a,Lno,Cno))
23 #define RETURN(a) return(a)
24 /* #define RETURN(a) printf("Token %d\n",a);return(a) */
25 %}
26 %%
27 ^#.* {DP("COMMENT");}
28 HREF {DP("HREF"); Cno=Cno+VarDicleng; RETURN(HREF);}
29 TEXT {DP("TEXT"); Cno=Cno+VarDicleng; RETURN(TEXT);}
30 UNITS {DP("UNITS"); Cno=Cno+VarDicleng; RETURN(UNITS);}
31 NOTES {DP("NOTES"); Cno=Cno+VarDicleng; RETURN(NOTES);}
32 {NAME} {DP("NAME"); Cno=Cno+VarDicleng;
33 VarDiclval.stringPtr=strdup(VarDictext);
34 RETURN(NAME);}
35 [ ] {DP("SPACE"); Cno=Cno+VarDicleng; }
36 \{ {DP("{"); Cno=Cno+VarDicleng; RETURN('{');}
37 \} {DP("}"); Cno=Cno+VarDicleng; RETURN('}');}
38 ; {DP(";"); Cno=Cno+VarDicleng; RETURN(';');}
39 = {DP("="); Cno=Cno+VarDicleng; RETURN('=');}
40
41 \"([^\"\n\\\\"]|\\.)*\" {DP("STRING"); Cno=Cno+VarDicleng;
42 VarDiclval.stringPtr=strcopy(VarDictext+1);
43 VarDiclval.stringPtr[strlen(VarDiclval.stringPtr)-1]='\0';
44 RETURN(STRING);}
45
46 \"([^\"\n\\\\"]|\\.)*$ {DP("UNTERMINATED STRING");
47 Cno=Cno+VarDicleng;
48 fprintf(stderr,
49 "Error: unterminated string. <%s> Line %d Column %d\n",
50 currentFile,Lno,Cno);
51 fprintf(stderr,"==> %s\n",VarDictext);
52 }
53
54
55 \n {DP("\\n");
56 ++Lno;Cno=1;
57 }
58
59 . {DP("UNMATCHED");
60 Cno=Cno+VarDicleng;
61 }

  ViewVC Help
Powered by ViewVC 1.1.22