¿Cómo obtener un valor de un Span <T> con árboles de expresión Linq?
Me gustaría usar árboles de expresión de Linq para llamar al indexador de unSpan<T>
. El código se ve así:
var spanGetter = typeof(Span<>)
.MakeGenericType(typeof(float)).GetMethod("get_Item");
var myFloatSpan = Expression.Parameter(typeof(Span<float>), "s");
var myValue = Expression.Call(
myFloatSpan,
spanGetter,
Expression.Constant(42));
var myAdd = Expression.Add(
myValue,
Expression.Constant(13f));
Sin embargo, este código falla porquemyValue
es de tipoSingle&
(también conocido comoref struct
) en lugar de escribirSingle
(también conocido comostruct
).
Cómo evaluar unSpan<T>
de un árbol de expresión?