}
}
def render
() = System.
out.
println("x=" + x
); }
def updatePhysical
(body
:VelocityComponent
) { body.x += body.vx;
}
}
player.vx = 10;
Foo.updatePhysical(player);
player.render();
}
dHJhaXQgQ29tcG9uZW50IHsgfQp0cmFpdCBUcmFuc2Zvcm1Db21wb25lbnQgZXh0ZW5kcyBDb21wb25lbnQgewogICAgdmFyIHggOiBJbnQgPSAwOwp9CnRyYWl0IFZlbG9jaXR5Q29tcG9uZW50IGV4dGVuZHMgVHJhbnNmb3JtQ29tcG9uZW50IHsKICAgIHZhciB2eCA6IEludCA9IDA7Cn0KdHJhaXQgUmVuZGVyQ29tcG9uZW50IGV4dGVuZHMgVHJhbnNmb3JtQ29tcG9uZW50IHdpdGggVmVsb2NpdHlDb21wb25lbnQgewogICAgZGVmIHJlbmRlcigpID0gU3lzdGVtLm91dC5wcmludGxuKCJ4PSIgKyB4KTsKfQpjbGFzcyBFbnRpdHkgeyB9CgpvYmplY3QgRm9vIHsKICAgIGRlZiB1cGRhdGVQaHlzaWNhbChib2R5OlZlbG9jaXR5Q29tcG9uZW50KSB7CiAgICAgICAgYm9keS54ICs9IGJvZHkudng7CiAgICB9Cn0KCm9iamVjdCBNYWluIGV4dGVuZHMgQXBwIHsKICB2YWwgcGxheWVyID0gbmV3IEVudGl0eSB3aXRoIFRyYW5zZm9ybUNvbXBvbmVudCB3aXRoIFJlbmRlckNvbXBvbmVudDsKICBwbGF5ZXIudnggPSAxMDsKICBGb28udXBkYXRlUGh5c2ljYWwocGxheWVyKTsKICBwbGF5ZXIucmVuZGVyKCk7Cn0=