// sattool - visual satellite tracking and prediction tool. // Copyright 2000 Tom Rothamel // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. /* This file defines the lexer for the date parsing routines. */ %{ #include "sattool.h" #include "date_parser.h" #include #define yylval date_lval %} %option noyywrap DIGIT [0-9] %% today { return TODAY; } yesterday { return YESTERDAY; } tomorrow { return TOMORROW; } noon { return NOON; } midnight { return MIDNIGHT; } now { return NOW; } s { return SECONDS; } second { return SECONDS; } seconds { return SECONDS; } m { return MINUTES; } minute { return MINUTES; } minutes { return MINUTES; } h { return HOURS; } hour { return HOURS; } hours { return HOURS; } d { return DAYS; } day { return DAYS; } days { return DAYS; } {DIGIT}+ { yylval = atoi(yytext); return NUM; } [ \t\n] . { return yytext[0]; } %% void date_scan_string(char *s) { yy_scan_string(s); }