gapic: Change to Set vs FrozenSet and thread the same set through
This improves the performance dramatically for large type hierarchies.
Addresses #950
Thanks so much for making these changes! Performance on big, complex APIs has been a pain point for a while.
What APIs have you tested on? Do you have any before and after benchmark data? I'm a little bit concerned about changing frozenset to set because of the risk of mutating the caller's parameters. If you can show that the performance gained from that is substantial it would put my mind at ease.
@tmc PTAL
@vam-google any example that references the protobuf types from https://github.com/google/fhir will not effectively finish without a change such as this one.
@tmc Please could you address the review comment and feedback from software-dov?
@atulep @parthea PTAL.
Converting to draft as presubmits are failing
@parthea PTAL