bool MatchSwitchCaseAndBuildExpression(ILBasicBlock head, out ILLabel trueLabel, out ILLabel falseLabel, out ILExpression expr) { ILExpression condition; if (MatchSwitchCase(head, out trueLabel, out falseLabel, out condition)) { var ranges = head.JoinILRangesFromTail(5); expr = new ILExpression(GMCode.Bt, trueLabel, new ILExpression(GMCode.Seq, null, condition)); expr.WithILRanges(ranges); return(true); } trueLabel = default(ILLabel); falseLabel = default(ILLabel); expr = default(ILExpression); return(false); }