This PR is inspired by a recent code review comment on a PR that introduced new functions to the net_processing module. The point of the discussion was basically that whenever we pass something not by value (in the concrete example it was about CNode*
and CConnman*
) we should either use
- a pointer (
CType*
) with null pointer check or - a reference (
CType&
)
To keep things simple, this PR for a first approach
- only tackles
CNode*
pointers - only within the net_processing module, i.e. no changes that would need adaption in other modules
- keeps the names of the variables as they are
I’m aware that PRs like this are kind of a PITA to review, but I think the code quality would increase if we get rid of pointers without nullptr check – bloating up the code by adding all the missing checks would be the worse alternative, in my opinion.
Possible follow-up PRs, in case this is received well:
- replace CNode pointers by references for net module
- replace CConnman pointers by references for net_processing module
- …