MCPcopy Create free account
hub / github.com/F-Stack/f-stack / addReplyCommand

Function addReplyCommand

app/redis-6.2.6/src/server.c:4477–4516  ·  view source on GitHub ↗

Output the representation of a Redis command. Used by the COMMAND command. */

Source from the content-addressed store, hash-verified

4475
4476/* Output the representation of a Redis command. Used by the COMMAND command. */
4477void addReplyCommand(client *c, struct redisCommand *cmd) {
4478 if (!cmd) {
4479 addReplyNull(c);
4480 } else {
4481 /* We are adding: command name, arg count, flags, first, last, offset, categories */
4482 addReplyArrayLen(c, 7);
4483 addReplyBulkCString(c, cmd->name);
4484 addReplyLongLong(c, cmd->arity);
4485
4486 int flagcount = 0;
4487 void *flaglen = addReplyDeferredLen(c);
4488 flagcount += addReplyCommandFlag(c,cmd,CMD_WRITE, "write");
4489 flagcount += addReplyCommandFlag(c,cmd,CMD_READONLY, "readonly");
4490 flagcount += addReplyCommandFlag(c,cmd,CMD_DENYOOM, "denyoom");
4491 flagcount += addReplyCommandFlag(c,cmd,CMD_ADMIN, "admin");
4492 flagcount += addReplyCommandFlag(c,cmd,CMD_PUBSUB, "pubsub");
4493 flagcount += addReplyCommandFlag(c,cmd,CMD_NOSCRIPT, "noscript");
4494 flagcount += addReplyCommandFlag(c,cmd,CMD_RANDOM, "random");
4495 flagcount += addReplyCommandFlag(c,cmd,CMD_SORT_FOR_SCRIPT,"sort_for_script");
4496 flagcount += addReplyCommandFlag(c,cmd,CMD_LOADING, "loading");
4497 flagcount += addReplyCommandFlag(c,cmd,CMD_STALE, "stale");
4498 flagcount += addReplyCommandFlag(c,cmd,CMD_SKIP_MONITOR, "skip_monitor");
4499 flagcount += addReplyCommandFlag(c,cmd,CMD_SKIP_SLOWLOG, "skip_slowlog");
4500 flagcount += addReplyCommandFlag(c,cmd,CMD_ASKING, "asking");
4501 flagcount += addReplyCommandFlag(c,cmd,CMD_FAST, "fast");
4502 flagcount += addReplyCommandFlag(c,cmd,CMD_NO_AUTH, "no_auth");
4503 flagcount += addReplyCommandFlag(c,cmd,CMD_MAY_REPLICATE, "may_replicate");
4504 if (cmdHasMovableKeys(cmd)) {
4505 addReplyStatus(c, "movablekeys");
4506 flagcount += 1;
4507 }
4508 setDeferredSetLen(c, flaglen, flagcount);
4509
4510 addReplyLongLong(c, cmd->firstkey);
4511 addReplyLongLong(c, cmd->lastkey);
4512 addReplyLongLong(c, cmd->keystep);
4513
4514 addReplyCommandCategories(c,cmd);
4515 }
4516}
4517
4518/* COMMAND <subcommand> <args> */
4519void commandCommand(client *c) {

Callers 1

commandCommandFunction · 0.85

Calls 10

addReplyNullFunction · 0.85
addReplyArrayLenFunction · 0.85
addReplyBulkCStringFunction · 0.85
addReplyLongLongFunction · 0.85
addReplyDeferredLenFunction · 0.85
addReplyCommandFlagFunction · 0.85
cmdHasMovableKeysFunction · 0.85
addReplyStatusFunction · 0.85
setDeferredSetLenFunction · 0.85

Tested by

no test coverage detected