X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Flanguage%2Flexer%2Fsegment.h;h=c647c8691dadd81f1e634ed91a63f0b2b11a4b9d;hb=b1fc57ddc57637e5c8bb87b478cbe585b6b4cf84;hp=686b471e18d4bc7e3536c33ed3dcbb6c7bf9a937;hpb=75a467ed2d32e1adb0c24cf89676cfb48845be98;p=pspp diff --git a/src/language/lexer/segment.h b/src/language/lexer/segment.h index 686b471e18..c647c8691d 100644 --- a/src/language/lexer/segment.h +++ b/src/language/lexer/segment.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 @@ -97,9 +97,13 @@ enum segment_type #define SEG_TYPE(NAME) SEG_##NAME, SEG_TYPES #undef SEG_TYPE - SEG_N_TYPES }; +/* Number of segment types. */ +#define SEG_TYPE(NAME) + 1 +enum { SEG_N_TYPES = SEG_TYPES }; +#undef SEG_TYPE + const char *segment_type_to_string (enum segment_type); /* A segmenter. Opaque. */ @@ -114,7 +118,7 @@ void segmenter_init (struct segmenter *, enum segmenter_mode); enum segmenter_mode segmenter_get_mode (const struct segmenter *); -int segmenter_push (struct segmenter *, const char *input, size_t n, +int segmenter_push (struct segmenter *, const char *input, size_t n, bool eof, enum segment_type *); enum prompt_style segmenter_get_prompt (const struct segmenter *);