c :* sd is a demand that says "evaluated
c times,
and any trace in which it is evaluated will evaluate at least as deep
as
sd".
Matching on this pattern synonym is a complete match. If the matched
demand was
AbsDmd, it will match as
C_00 :* seqSubDmd.
If the matched demand was
BotDmd, it will match as
C_10 :*
botSubDmd. The builder of this pattern synonym simply
discards the
SubDemand if the
Card was absent and
returns
AbsDmd or
BotDmd instead. It will assert that
the discarded sub-demand was
seqSubDmd and
botSubDmd,
respectively.
Call sites should consider whether they really want to look at the
SubDemand of an absent demand and match on
AbsDmd and/or
BotDmd otherwise. Really, any other
SubDemand would be
allowed and might work better, depending on context.