private static PythonConstantExpression ExtractConstant(LightExpression<LookupCompilationDelegate> lambda) {
var body = lambda.Body as BlockExpression;
if (body == null ||
body.Expressions.Count != 2 ||
!(body.Expressions[0] is DebugInfoExpression) ||
body.Expressions[1].NodeType != ExpressionType.Convert ||
!(((MSAst.UnaryExpression)body.Expressions[1]).Operand is PythonConstantExpression)) {
return null;
}
return (PythonConstantExpression)((MSAst.UnaryExpression)body.Expressions[1]).Operand;
}