X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Flanguage%2Flexer%2Fformat-parser.c;h=aa30852d11327b3ddcf2d3fc8488f04649fc73f7;hb=cee6f0eb54144da7034566fa1bcdcee22337ae6a;hp=2ecd539b8fc1660e75f2a8cda703eb7910becb4b;hpb=da67dbb8a63ee516a6ae69c6099fde077dc20dcc;p=pspp diff --git a/src/language/lexer/format-parser.c b/src/language/lexer/format-parser.c index 2ecd539b8f..aa30852d11 100644 --- a/src/language/lexer/format-parser.c +++ b/src/language/lexer/format-parser.c @@ -16,13 +16,14 @@ #include +#include "language/lexer/format-parser.h" + #include #include #include #include "data/format.h" #include "data/variable.h" -#include "language/lexer/format-parser.h" #include "language/lexer/lexer.h" #include "libpspp/message.h" #include "libpspp/misc.h" @@ -31,7 +32,16 @@ #include "gettext.h" #define _(msgid) gettext (msgid) -static bool +/* Parses a token taking the form of a format specifier and + returns true only if successful. Emits an error message on + failure. Stores a null-terminated string representing the + format type in TYPE, and the width and number of decimal + places in *WIDTH and *DECIMALS. + + TYPE is not checked as to whether it is really the name of a + format. Both width and decimals are considered optional. If + missing, *WIDTH or *DECIMALS or both will be set to 0. */ +bool parse_abstract_format_specifier__ (struct lexer *lexer, char type[FMT_TYPE_LEN_MAX + 1], uint16_t *width, uint8_t *decimals) @@ -78,15 +88,8 @@ error: return false; } -/* Parses a token taking the form of a format specifier and - returns true only if successful. Emits an error message on - failure. Stores a null-terminated string representing the - format type in TYPE, and the width and number of decimal - places in *WIDTH and *DECIMALS. - - TYPE is not checked as to whether it is really the name of a - format. Both width and decimals are considered optional. If - missing, *WIDTH or *DECIMALS or both will be set to 0. */ +/* Like parse_abstract_format_specifier__(), but additionally advanced past + the token if successful. */ bool parse_abstract_format_specifier (struct lexer *lexer, char type[FMT_TYPE_LEN_MAX + 1], @@ -98,10 +101,9 @@ parse_abstract_format_specifier (struct lexer *lexer, return ok; } -/* Parses a format specifier from the token stream and returns - true only if successful. Emits an error message on - failure. The caller should call check_input_specifier() or - check_output_specifier() on the parsed format as +/* Parses a format specifier from the token stream and returns true only if + successful. Emits an error message on failure. The caller should call + fmt_check_input() or fmt_check_output() on the parsed format as necessary. */ bool parse_format_specifier (struct lexer *lexer, struct fmt_spec *format)