/// <summary> /// Checks if the expression can be coppied or moved, without changing the semantics of the program. Additional checks must be made to find the scope of the supposed move. /// </summary> /// <param name="expression">The expression in question.</param> /// <returns>Returns true, if the expression can be safely moved/coppied.</returns> private bool CanBePropagated(Expression expression) { ExpressionTreeVisitor etv = new ExpressionTreeVisitor(); return(etv.CanBePropagated(expression)); }
/// <summary> /// Checks if the expression can be coppied or moved, without changing the semantics of the program. Additional checks must be made to find the scope of the supposed move. /// </summary> /// <param name="expression">The expression in question.</param> /// <returns>Returns true, if the expression can be safely moved/coppied.</returns> private bool CanBePropagated(Expression expression) { ExpressionTreeVisitor etv = new ExpressionTreeVisitor(); return etv.CanBePropagated(expression); }