371        token t(f_lexer.next_token());
 
  372        if(t.
tok() == token_t::TOK_EOF)
 
  385            case token_t::TOK_REGEX:
 
  389                    f_validators.push_back(v);
 
  391                    t = f_lexer.next_token();
 
  395            case token_t::TOK_IDENTIFIER:
 
  399                    t = f_lexer.next_token();
 
  400                    if(t.
tok() == token_t::TOK_OPEN_PARENTHESIS)
 
  402                        t = f_lexer.next_token();
 
  403                        if(t.
tok() != token_t::TOK_CLOSE_PARENTHESIS)
 
  407                                if(t.
tok() == token_t::TOK_INVALID)
 
  411                                if(t.
tok() != token_t::TOK_IDENTIFIER
 
  412                                && t.
tok() != token_t::TOK_STRING
 
  413                                && t.
tok() != token_t::TOK_REGEX)
 
  415                                    cppthread::log << cppthread::log_level_t::error
 
  416                                                   << 
"validator(): expected a regex, an identifier or a string inside the () of a parameter. Remaining input: \"" 
  424                                t = f_lexer.next_token();
 
  425                                if(t.
tok() == token_t::TOK_CLOSE_PARENTHESIS)
 
  430                                if(t.
tok() == token_t::TOK_EOF)
 
  432                                    cppthread::log << cppthread::log_level_t::error
 
  433                                                   << 
"validator(): parameter list must end with ')'. Remaining input: \"" 
  440                                if(t.
tok() != token_t::TOK_COMMA)
 
  442                                    if(t.
tok() == token_t::TOK_INVALID)
 
  446                                    cppthread::log << cppthread::log_level_t::error
 
  447                                                   << 
"validator(): parameters must be separated by ','. Remaining input: \"" 
  455                                    t = f_lexer.next_token();
 
  457                                while(t.
tok() == token_t::TOK_COMMA);
 
  460                        t = f_lexer.next_token();
 
  463                    f_validators.push_back(v);
 
  468                if(t.
tok() != token_t::TOK_INVALID)
 
  470                    cppthread::log << cppthread::log_level_t::error
 
  471                                   << 
"validator(): unexpected token in validator definition;" 
  472                                      " expected an identifier. Remaining input: \"" 
  481            if(t.
tok() == token_t::TOK_EOF)
 
  486            if(t.
tok() != token_t::TOK_OR)
 
  488                if(t.
tok() != token_t::TOK_INVALID)
 
  490                    cppthread::log << cppthread::log_level_t::error
 
  491                                   << 
"validator(): validator definitions must be separated by '|'. Remaining input: \"" 
  499            t = f_lexer.next_token();
 
  501        snapdev::NOT_REACHED();