Convert CreateDescriptionFromTriangulationHelper into a function. #16374
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In tria_description.cc, there is a class called CreateDescriptionFromTriangulationHelper that in essence consists of a constructor that sets a bunch of member variables, and a single public member function that takes some more arguments and then does something. This all can be handled in a more traditional way by just having a single free function that does the same thing -- it is easier to reason about where which data lives and who changes it.
This patch does this kind of conversion. The only marginal difficulty (other than the fact that the patch is likely hard to read because everything moves around) is that the constructor of the class calls a
GridTools
function to initialize two expensive members that can then be re-used over multiple calls to the one function in a loop. I handled that by moving this call toGridTools
out to the calling sites, and letting them pass the result as an additional argument to the now free function.The patch might be easiest to read without showing whitespace changes.