public static Decode Loopback(this DecodeComplex complex) { Option <Type> Loop(ITracer tracer, string code, IReadOnlyCollection <Type> awaited) => complex(tracer, Loop, code, awaited); return(Loop); }
public static DecodeComplex Fallback(this DecodeComplex a, DecodeComplex b) => (logger, decoder, code, awaited) => a(logger, decoder, code, awaited).OrElse(() => b(logger, decoder, code, awaited));