1139747Simp/*- 24Srgrimes * Mach Operating System 34Srgrimes * Copyright (c) 1991,1990 Carnegie Mellon University 44Srgrimes * All Rights Reserved. 58876Srgrimes * 64Srgrimes * Permission to use, copy, modify and distribute this software and its 74Srgrimes * documentation is hereby granted, provided that both the copyright 84Srgrimes * notice and this permission notice appear in all copies of the 94Srgrimes * software, derivative works or modified versions, and any portions 104Srgrimes * thereof, and that both notices appear in supporting documentation. 118876Srgrimes * 128876Srgrimes * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS 134Srgrimes * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR 144Srgrimes * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. 158876Srgrimes * 164Srgrimes * Carnegie Mellon requests users of this software to return to 178876Srgrimes * 184Srgrimes * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU 194Srgrimes * School of Computer Science 204Srgrimes * Carnegie Mellon University 214Srgrimes * Pittsburgh PA 15213-3890 228876Srgrimes * 234Srgrimes * any improvements or extensions that they make and grant Carnegie the 244Srgrimes * rights to redistribute these changes. 254Srgrimes * 2650477Speter * $FreeBSD$ 274Srgrimes */ 28623Srgrimes 29716Swollman#ifndef _DDB_DB_LEX_H_ 3012472Sbde#define _DDB_DB_LEX_H_ 31716Swollman 324Srgrimes/* 334Srgrimes * Author: David B. Golub, Carnegie Mellon University 344Srgrimes * Date: 7/90 354Srgrimes */ 364Srgrimes/* 374Srgrimes * Lexical analyzer. 384Srgrimes */ 39174914Srwatsonvoid db_flush_lex(void); 40174914Srwatsonchar *db_get_line(void); 41174914Srwatsonvoid db_inject_line(const char *command); 42174914Srwatsonint db_read_line(void); 43174914Srwatsonint db_read_token(void); 44174914Srwatsonvoid db_unread_token(int t); 454Srgrimes 4637504Sbdeextern db_expr_t db_tok_number; 478876Srgrimes#define TOK_STRING_SIZE 120 484Srgrimesextern char db_tok_string[TOK_STRING_SIZE]; 494Srgrimes 504Srgrimes#define tEOF (-1) 514Srgrimes#define tEOL 1 524Srgrimes#define tNUMBER 2 534Srgrimes#define tIDENT 3 544Srgrimes#define tPLUS 4 554Srgrimes#define tMINUS 5 564Srgrimes#define tDOT 6 574Srgrimes#define tSTAR 7 584Srgrimes#define tSLASH 8 594Srgrimes#define tEQ 9 604Srgrimes#define tLPAREN 10 614Srgrimes#define tRPAREN 11 624Srgrimes#define tPCT 12 634Srgrimes#define tHASH 13 644Srgrimes#define tCOMMA 14 654Srgrimes#define tDITTO 15 664Srgrimes#define tDOLLAR 16 674Srgrimes#define tEXCL 17 684Srgrimes#define tSHIFT_L 18 694Srgrimes#define tSHIFT_R 19 704Srgrimes#define tDOTDOT 20 71174914Srwatson#define tSEMI 21 724Srgrimes 7312472Sbde#endif /* !_DDB_DB_LEX_H_ */ 74