internal static status ToStatusWithLog(StatusRef?self) { if (self.HasValue) { var ι = self.Value; return(ι.x.ViaDecorator( ι.logData.scope, log && ι.logData.Reason())); } else { var scope = staticLogData.Value.scope; var reason = staticLogData.Value.Reason(); if (scope == null) { throw new InvOp("scope is null"); } staticLogData = null; return(hold.ViaDecorator(scope, log && reason)); } }