Mercurial > illumos > onarm
diff usr/src/cmd/cron/att2.l @ 0:c9caec207d52 b86
Initial porting based on b86
author | Koji Uno <koji.uno@sun.com> |
---|---|
date | Tue, 02 Jun 2009 18:56:50 +0900 |
parents | |
children | 1a15d5aaf794 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/usr/src/cmd/cron/att2.l Tue Jun 02 18:56:50 2009 +0900 @@ -0,0 +1,90 @@ +%{ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License, Version 1.0 only + * (the "License"). You may not use this file except in compliance + * with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + */ +%} +%{ +/* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ +%} +%{ +/* All Rights Reserved */ +%} + +%{ +#ident "@(#)att2.l 1.8 05/06/10 SMI" /* SVr4.0 1.2 */ +%} + +%{ + +#include "att1.h" +#include <ctype.h> +#define LL(t,v) return(yylval = v, t) +#undef getc +#define getc(x) (*argp?tolower(*argp++):EOF) +#undef feof +#define feof(x) (*argp?0:1) +extern int yylval; +char *argp = ""; +%} +%% +[ \t\n]+ ; +"jan"|"january" { LL(MONTH, 0); } +"feb"|"february" { LL(MONTH, 1); } +"mar"|"march" { LL(MONTH, 2); } +"apr"|"april" { LL(MONTH, 3); } +"may" { LL(MONTH, 4); } +"jun"|"june" { LL(MONTH, 5); } +"jul"|"july" { LL(MONTH, 6); } +"aug"|"august" { LL(MONTH, 7); } +"sep"|"september" { LL(MONTH, 8); } +"oct"|"october" { LL(MONTH, 9); } +"nov"|"november" { LL(MONTH, 10); } +"dec"|"december" { LL(MONTH, 11); } +"sun"|"sunday" { LL(DAY, 0); } +"mon"|"monday" { LL(DAY, 1); } +"tue"|"tuesday" { LL(DAY, 2); } +"wed"|"wednesday" { LL(DAY, 3); } +"thu"|"thursday" { LL(DAY, 4); } +"fri"|"friday" { LL(DAY, 5); } +"sat"|"saturday" { LL(DAY, 6); } +"today" { LL(DAY, 7); } +"tomorrow" { LL(DAY, 8); } +"noon" { LL(TIME, NOON); } +"midnight" { LL(TIME, MIDNIGHT); } +"now" { LL(TIME, NOW); } +"am" { LL(SUFF, AM); } +"pm" { LL(SUFF, PM); } +"zulu" { LL(ZONE, ZULU); } +"utc" { LL(ZONE, ZULU); } +"gmt" { LL(ZONE, ZULU); } +"next" { LL(NEXT, 1); } +"min"s?|"minute"s? { LL(UNIT, MINUTE); } +"hour"s? { LL(UNIT, HOUR); } +"day"s? { LL(UNIT, DAY); } +"week"s? { LL(UNIT, WEEK); } +"month"s? { LL(UNIT, MONTH); } +"year"s? { LL(UNIT, YEAR); } +[0-9] { yylval = yytext[0] - '0'; return(NUMB); } +[:] { LL(COLON, 0); } +[,] { LL(COMMA, 0); } +[+] { LL(PLUS, 0); } +. { LL(UNKNOWN, 0); } +%%