Matrix4 is a struct. This method is part of my Shader class, in which I'm trying to abstract the native types.(Matrix4)value doesn't work though. I wrote it like this so that I can write a single method to set any type of uniform value, here the only implemented one is Matrix4.Uniform class so I'm not directly working with the native types in my shader abstraction, but that would also require adding an abstraction for the uniform use cases.)