X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Flanguage%2Flexer%2Fscan.h;h=73f208033b1383001cd5f814f564f2f211523663;hb=78cffcbf683cd66a6717d40854825d731fd4f01d;hp=fdb50801c44c34b8fdeae4181a705d3ad4ea5651;hpb=afdf3096926b561f4e6511c10fcf73fc6796b9d2;p=pspp diff --git a/src/language/lexer/scan.h b/src/language/lexer/scan.h index fdb50801c4..73f208033b 100644 --- a/src/language/lexer/scan.h +++ b/src/language/lexer/scan.h @@ -1,5 +1,5 @@ /* PSPP - a program for statistical analysis. - Copyright (C) 2010, 2011 Free Software Foundation, Inc. + Copyright (C) 2010, 2011, 2013 Free Software Foundation, Inc. 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 @@ -89,5 +89,19 @@ enum scan_result void scanner_init (struct scanner *, struct token *); enum scan_result scanner_push (struct scanner *, enum segment_type, struct substring, struct token *); + +/* A simplified lexer for handling syntax in a string. */ + +struct string_lexer + { + const char *input; + size_t length; + size_t offset; + struct segmenter segmenter; + }; + +void string_lexer_init (struct string_lexer *, const char *input, + enum segmenter_mode); +bool string_lexer_next (struct string_lexer *, struct token *); #endif /* scan.h */