タイプの任意の式が与えられた場合Expression<Func<int>>、結果に影響を与える可能性があるが、必ずしもそうとは限らないすべてのオブジェクトのリストを取得するにはどうすればよいですか。
私はこのような関数を探しています:
IEnumerable<object> GetFactors(Expression<Func<int>> expression)
{
//return a list of all objects in the expression that affect the result.
}
例1
Expression<Func<int>> expression = () => a + b;
ここでa、およびbはintsであり、含むおよびGetFactorsを返します。IEnumerable<object>ab
例2
Expression<Func<int>> expression = () => obj1 != obj2 ? a + b : c + d;
GetFactorsをIEnumerable<object>含む、、、、、、obj1およびobj2を返します。abcd