The MTLRenderPipelineReflection contains vertexArguments and fragmentArguments. It seems that these are entirely defined by the fragment and vertex function (MTLFunction).
Why can the reflection not be obtained directly from the MTLFunction objects?
Is there anything in the pipeline state object that affects the reflection data - except the MTLFunction objects?