MCPcopy Create free account
hub / github.com/ElementsProject/lightning / param_core

Function param_core

common/json_param.c:338–367  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

336}
337
338static bool param_core(struct command *cmd,
339 const char *buffer,
340 const jsmntok_t tokens[],
341 va_list ap)
342{
343 struct param *params = tal_arr(tmpctx, struct param, 0);
344 const char *name;
345 bool allow_extra = false;
346
347 while ((name = va_arg(ap, const char *)) != NULL) {
348 enum param_style style = va_arg(ap, enum param_style);
349 const char *depr_start = va_arg(ap, const char *);
350 const char *depr_end = va_arg(ap, const char *);
351 param_cbx cbx = va_arg(ap, param_cbx);
352 void *arg = va_arg(ap, void *);
353 if (streq(name, "")) {
354 allow_extra = true;
355 continue;
356 }
357 param_add(&params, name, style, depr_start, depr_end, cbx, arg);
358 }
359
360 if (command_usage_only(cmd)) {
361 check_params(params);
362 command_set_usage(cmd, param_usage(cmd, params));
363 return false;
364 }
365
366 return param_arr(cmd, buffer, tokens, params, allow_extra) == NULL;
367}
368
369bool param(struct command *cmd,
370 const char *buffer,

Callers 2

paramFunction · 0.85
param_checkFunction · 0.85

Calls 6

param_addFunction · 0.85
check_paramsFunction · 0.85
param_usageFunction · 0.85
param_arrFunction · 0.85
command_usage_onlyFunction · 0.50
command_set_usageFunction · 0.50

Tested by

no test coverage detected