From f9530a581522a418b8298791969ac8a0e002dfff Mon Sep 17 00:00:00 2001 From: m-holger Date: Thu, 18 Aug 2022 18:25:51 +0100 Subject: Code tidy: replace if with case statement in QPDFTokenizer::handleCharacter --- libqpdf/QPDFTokenizer.cc | 46 ++++++++++++++++++++++++++++++++++------------ 1 file changed, 34 insertions(+), 12 deletions(-) (limited to 'libqpdf/QPDFTokenizer.cc') diff --git a/libqpdf/QPDFTokenizer.cc b/libqpdf/QPDFTokenizer.cc index f5a50695..6c83119f 100644 --- a/libqpdf/QPDFTokenizer.cc +++ b/libqpdf/QPDFTokenizer.cc @@ -233,46 +233,68 @@ QPDFTokenizer::handleCharacter(char ch) this->state = st_in_space; this->val += ch; } - } else if (ch == '%') { + return; + } + switch (ch) { + case '%': this->state = st_in_comment; if (this->include_ignorable) { this->val += ch; } - } else if (ch == '(') { + return; + + case '(': this->string_depth = 1; this->string_ignoring_newline = false; memset(this->bs_num_register, '\0', sizeof(this->bs_num_register)); this->last_char_was_bs = false; this->last_char_was_cr = false; this->state = st_in_string; - } else if (ch == '<') { + return; + + case '<': this->state = st_lt; - } else if (ch == '>') { + return; + + case '>': this->state = st_gt; - } else { + return; + + default: this->val += ch; - if (ch == ')') { + switch (ch) { + case ')': this->type = tt_bad; QTC::TC("qpdf", "QPDFTokenizer bad )"); this->error_message = "unexpected )"; this->state = st_token_ready; - } else if (ch == '[') { + return; + + case '[': this->type = tt_array_open; this->state = st_token_ready; - } else if (ch == ']') { + return; + + case ']': this->type = tt_array_close; this->state = st_token_ready; - } else if (ch == '{') { + return; + + case '{': this->type = tt_brace_open; this->state = st_token_ready; - } else if (ch == '}') { + return; + + case '}': this->type = tt_brace_close; this->state = st_token_ready; - } else { + return; + + default: this->state = st_literal; + return; } } - return; case st_in_space: // We only enter this state if include_ignorable is true. -- cgit v1.2.3-54-g00ecf