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

Function fmt_flow_full

plugins/askrene/child/flow.c:187–213  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

185}
186
187const char *fmt_flow_full(const tal_t *ctx,
188 const struct route_query *rq,
189 const struct flow *flow)
190{
191 struct amount_msat amt = flow->delivers;
192 char *str = fmt_amount_msat(ctx, flow->delivers);
193
194 for (int i = tal_count(flow->path) - 1; i >= 0; i--) {
195 struct short_channel_id_dir scidd;
196 struct amount_msat min, max;
197 scidd.scid = gossmap_chan_scid(rq->gossmap, flow->path[i]);
198 scidd.dir = flow->dirs[i];
199 if (!amount_msat_add_fee(&amt,
200 flow->path[i]->half[scidd.dir].base_fee,
201 flow->path[i]->half[scidd.dir].proportional_fee))
202 abort();
203 get_constraints(rq, flow->path[i], scidd.dir, &min, &max);
204 tal_append_fmt(&str, " <- %s %s (cap=%s,fee=%u+%u,delay=%u)",
205 fmt_amount_msat(tmpctx, amt),
206 fmt_short_channel_id_dir(tmpctx, &scidd),
207 fmt_amount_msat(tmpctx, max),
208 flow->path[i]->half[scidd.dir].base_fee,
209 flow->path[i]->half[scidd.dir].proportional_fee,
210 flow->path[i]->half[scidd.dir].delay);
211 }
212 return str;
213}
214
215#ifndef SUPERVERBOSE_ENABLED
216#undef SUPERVERBOSE

Callers 3

remove_bottleneckFunction · 0.85
increase_flowsFunction · 0.85
refine_flowsFunction · 0.85

Calls 7

gossmap_chan_scidFunction · 0.85
amount_msat_add_feeFunction · 0.85
abortFunction · 0.85
get_constraintsFunction · 0.85
tal_append_fmtFunction · 0.85
fmt_short_channel_id_dirFunction · 0.85
fmt_amount_msatFunction · 0.50

Tested by

no test coverage detected