public unsafe static TRet MakeTypedReference <TRet>(object target, TypedRefFunc <TRet> func, params FieldInfo[] fields) { TypedReference tr; MakeTypedReference(&tr, target, fields); return(func(tr)); }
public static TRet GetTypedReference <T, TRet>(ref T reference, TypedRefFunc <TRet> func) { return(func(__makeref(reference))); }
public static unsafe TRet ArrayAddress <TArray, TRet>(TArray arr, int[] indices, TypedRefFunc <TRet> func) where TArray : TArrayBase { TypedReference tr; ArrayAddress <TArray>(arr, &tr, indices); return(func(tr)); }