private void RemoveNotSetStatementExpressions(RemoveConditionOnlyVariables.VariableStateAndExpression keyValuePair, HashSet <RemoveConditionOnlyVariables.VariableStateAndExpression> variablesToRemove) { stackVariable2 = new Stack <RemoveConditionOnlyVariables.StatementExpression>(keyValuePair.get_StatementExpressions()); keyValuePair.get_StatementExpressions().Clear(); V_0 = stackVariable2.GetEnumerator(); try { while (V_0.MoveNext()) { V_1 = V_0.get_Current(); if (V_1.get_Statement() == null) { continue; } if (V_1.get_ParentWhileStatement() == null) { keyValuePair.get_StatementExpressions().Add(V_1); } else { V_2 = this.GetParentWhileStatementIndex(keyValuePair.get_StatementExpressions(), V_1.get_ParentWhileStatement()); keyValuePair.get_StatementExpressions().Insert(V_2, V_1); } } } finally { ((IDisposable)V_0).Dispose(); } if (keyValuePair.get_StatementExpressions().get_Count() == 0) { dummyVar0 = variablesToRemove.Add(keyValuePair); } return; }
private Expression GetCurrentStatementExpression(RemoveConditionOnlyVariables.VariableStateAndExpression variableStateAndExpression) { if (variableStateAndExpression.get_StatementExpressions().get_Count() == 0) { return(null); } V_0 = variableStateAndExpression.get_StatementExpressions().get_Item(variableStateAndExpression.get_StatementExpressions().get_Count() - 1); dummyVar0 = variableStateAndExpression.get_StatementExpressions().Remove(V_0); return(V_0.get_Expression().CloneExpressionOnly()); }