public static ISequencerUC TryReThrowException(this ISequencerUC sequencer) { SequencerRegisterUC register = sequencer as SequencerRegisterUC; if (register == null) { return(sequencer); } register.ExceptionRegister.TryReThrowException(); return(sequencer); }
Register <TEnum>(this ISequencerUC sequencer, ISequencerPointUC <TEnum> sequencerPoint) where TEnum : struct { SequencerRegisterUC register = sequencer as SequencerRegisterUC; if (register == null) { return(sequencer); } register.ExceptionRegister.TryReThrowException(); register.Add(sequencerPoint); return(sequencer); }
TestPointAsync <TEnum>(this ISequencerUC sequencer, TEnum registration) where TEnum : struct { SequencerRegisterUC register = sequencer as SequencerRegisterUC; if (register == null) { return(TestPointUC.EmptyCompleted); } ISequencerExceptionRegister exceptionRegister = register.ExceptionRegister.TryReThrowException(); ISequencerTaskRegister taskRegister = register.TaskRegister; ISequencerPointUC <TEnum> seqPoint = register.TryGet(registration); return (seqPoint?.TestPoint(taskRegister, exceptionRegister) ?? TestPointUC.EmptyCompleted ); }