⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dsl.l

📁 一个SQL解析器
💻 L
字号:
/*Distributed data base FacilitatorParserVersion 1.0Copyright 1986 Columbia Union CollegeBy Leroy G. Cain*/%{#include "string.h"#include "parser.h"#include "rwsearch.c"%}D       [0-9]E       [Ee][-+]?{D}+%%[a-zA-Z]+   {int     rw;        if((rw= rwsearch(yytext)) == IDENTIFIER )        {                yylval.nsbuf = strcpy(scratch,yytext);        }                return rw;}"$"[a-zA-Z_][a-zA-Z0-9_#@]* return( PARM );[a-zA-Z_][a-zA-Z0-9_#@]* {   	yylval.nsbuf = strcpy (scratch, yytext);   /* KMW */	return IDENTIFIER ;}\"[^\"]*        |\'[^\']*        {        if(yytext[yyleng-1] ==  '\\')                yymore();        else        {                yytext[yyleng++] = input();                yytext[yyleng] = '\0';                return( STRING );        }}{D}+    return ( INTEGER );{D}+"."{D}*({E})?       |{D}+"."{D}+({E})?       |{D}+{E} return ( REAL );":"     return ':' ;";"     return ';' ;".*"    return ALLFIELDS ;"."     return '.' ;","     return ',' ;"!"     return NOT ;"!="    return NE ;"<="    return LE ;">="    return GE ;"<"     return LT ;"!<"    return NLT ;">"     return GT ;"!>"    return NGT ;"("     return '(' ;")"     return ')' ;">>"    return RIGHTSHIFT ;"<<"    return LEFTSHIFT ;"|"     return '|' ; /* Bit or */"||"    return E_OR ; /* or */"^"     return '^' ; /* Bit ex-or */"&"     return '&' ; /* Bit and */"&&"    return E_AND ; /* and */"~"     return '~' ; /* Ones compliment */"`"     return '`' ; /* Sematic control */"]"     return ']' ;"["     return '[' ;"="     return EQ ;"+"     return '+' ;"-"     return '-' ;"*"     return '*' ;"**"    return PWR ;"/"     return '/' ;"%"     return '%' ; /* Modulus */"?"     return '?' ;[/] return( ILLEGAL );[ \n\t\r] ;%%

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -