private Expression FixCaseLiteralValue(LiteralExpression literalCondition) { V_0 = this.theSwitch.get_Condition().get_ExpressionType(); V_1 = Convert.ToInt32(literalCondition.get_Value()) + this.conditionOffset; literalCondition.set_Value(V_1); V_2 = this.context.get_MethodContext().get_Method().get_Module().get_TypeSystem(); if (String.op_Equality(V_0.get_Name(), "System.Nullable`1") && V_0.get_HasGenericParameters()) { V_0 = V_0.get_GenericParameters().get_Item(0); } if (String.op_Equality(V_0.get_FullName(), V_2.get_Char().get_FullName())) { return(new LiteralExpression((object)Convert.ToChar(V_1), V_2, null)); } if (String.op_Equality(V_0.get_FullName(), V_2.get_Boolean().get_FullName())) { return(new LiteralExpression((object)Convert.ToBoolean(V_1), V_2, null)); } V_3 = V_0.Resolve(); if (V_3 == null || !V_3.get_IsEnum()) { return(literalCondition); } V_4 = EnumHelper.GetEnumExpression(V_3, literalCondition, V_2); if (V_4 as LiteralExpression != null) { V_4 = new ExplicitCastExpression(V_4, V_3, null); } return(V_4); }