Method instead of Lambda expression in Foreach?

Why can’t I (or how could I …)

private static void Function(Entity entity, ref Translation t, in Rotation r)
{
      //Stuff!
}
 
[BurstCompile]
protected override void OnUpdate()
{
   Entities.ForEach(Function).Schedule()

//...

I see this has problems with capturing values of course, but still…? Maybe I’m just fundamentally ignorant in my adverse reaction to lambdas holding the bulk of the code of my application, but everything from diffing to indentations, adding breakpoints and watches to stepping through or into, is a veritable nightmare like it is now.

The lambda is replaced by the code gen, you can’t do that, you can, however, do this:

private static void Function(Entity entity, ref Translation t, in Rotation r)
{
      //Stuff!
}
[BurstCompile]
protected override void OnUpdate()
{
   Entities.ForEach((Entity entity, ref Translation t, in Rotation r) =>
{
    Function(entity, ref t, in r);
}).Schedule()
//...