X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Flanguage%2Flexer%2Flexer.h;fp=src%2Flanguage%2Flexer%2Flexer.h;h=a197662ac4f74d4aeac0f8791702c958a0909cf5;hb=09e02e5fc7f463a4243de3daaa9e8f2c6fb2d619;hp=11a0c60d32517ff827638fed671f405d72f436bc;hpb=05b22f6597e46d85b9942f88b4c72659958d6100;p=pspp diff --git a/src/language/lexer/lexer.h b/src/language/lexer/lexer.h index 11a0c60d32..a197662ac4 100644 --- a/src/language/lexer/lexer.h +++ b/src/language/lexer/lexer.h @@ -26,11 +26,18 @@ #include "language/lexer/segment.h" #include "libpspp/cast.h" #include "libpspp/compiler.h" +#include "libpspp/message.h" #include "libpspp/prompt.h" +#include "libpspp/str.h" struct lexer; +struct lex_source; struct macro; +void lex_source_ref (const struct lex_source *); +void lex_source_unref (struct lex_source *); +struct substring lex_source_get_line (const struct lex_source *, int line); + /* Handling of errors. */ enum lex_error_mode { @@ -151,6 +158,8 @@ struct substring lex_next_tokss (const struct lexer *, int n); int lex_ofs (const struct lexer *); const struct token *lex_ofs_token (const struct lexer *, int ofs); struct msg_location *lex_ofs_location (const struct lexer *, int ofs0, int ofs1); +struct msg_point lex_ofs_start_point (const struct lexer *, int ofs); +struct msg_point lex_ofs_end_point (const struct lexer *, int ofs); /* Token representation. */ char *lex_next_representation (const struct lexer *, int n0, int n1);