rust/hedgewars-server/src/protocol/parser.rs
changeset 15132 1e45db229f9f
parent 15096 e935b1ad23f3
child 15133 6a1ba3540fa0
equal deleted inserted replaced
15131:6a8c294f49c9 15132:1e45db229f9f
   271             |i| cmdc_single_arg(i, "DELETE", a_line, Delete),
   271             |i| cmdc_single_arg(i, "DELETE", a_line, Delete),
   272             |i| cmdc_single_arg(i, "SAVEROOM", a_line, SaveRoom),
   272             |i| cmdc_single_arg(i, "SAVEROOM", a_line, SaveRoom),
   273             |i| cmdc_single_arg(i, "LOADROOM", a_line, LoadRoom),
   273             |i| cmdc_single_arg(i, "LOADROOM", a_line, LoadRoom),
   274             |i| cmdc_single_arg(i, "GLOBAL", a_line, Global),
   274             |i| cmdc_single_arg(i, "GLOBAL", a_line, Global),
   275             |i| cmdc_single_arg(i, "WATCH", u32_line, Watch),
   275             |i| cmdc_single_arg(i, "WATCH", u32_line, Watch),
   276             |i| cmdc_single_arg(i, "GREETING", a_line, Greeting),
       
   277             |i| cmdc_single_arg(i, "VOTE", yes_no_line, Vote),
   276             |i| cmdc_single_arg(i, "VOTE", yes_no_line, Vote),
   278             |i| cmdc_single_arg(i, "FORCE", yes_no_line, ForceVote),
   277             |i| cmdc_single_arg(i, "FORCE", yes_no_line, ForceVote),
   279             |i| cmdc_single_arg(i, "INFO", a_line, Info),
   278             |i| cmdc_single_arg(i, "INFO", a_line, Info),
   280             |i| cmdc_single_arg(i, "MAXTEAMS", u8_line, MaxTeams),
   279             |i| cmdc_single_arg(i, "MAXTEAMS", u8_line, MaxTeams),
   281             |i| cmdc_single_arg(i, "CALLVOTE", |i| opt!(i, voting), CallVote),
   280             |i| cmdc_single_arg(i, "CALLVOTE", |i| opt!(i, voting), CallVote),
   286         input,
   285         input,
   287         hw_tag("CMD\n"),
   286         hw_tag("CMD\n"),
   288         alt((
   287         alt((
   289             cmd_no_arg_message,
   288             cmd_no_arg_message,
   290             cmd_single_arg_message,
   289             cmd_single_arg_message,
       
   290             |i| {
       
   291                 precededc(i, hw_tag_no_case("GREETING"), opt_space_arg)
       
   292                     .map(|(i, s)| (i, Greeting(s)))
       
   293             },
   291             |i| precededc(i, hw_tag_no_case("PART"), opt_space_arg).map(|(i, s)| (i, Part(s))),
   294             |i| precededc(i, hw_tag_no_case("PART"), opt_space_arg).map(|(i, s)| (i, Part(s))),
   292             |i| precededc(i, hw_tag_no_case("QUIT"), opt_space_arg).map(|(i, s)| (i, Quit(s))),
   295             |i| precededc(i, hw_tag_no_case("QUIT"), opt_space_arg).map(|(i, s)| (i, Quit(s))),
   293             |i| {
   296             |i| {
   294                 precededc(i, hw_tag_no_case("SAVE"), |i| {
   297                 precededc(i, hw_tag_no_case("SAVE"), |i| {
   295                     pairc(
   298                     pairc(