-
Couldn't load subscription status.
- Fork 300
refactor: Add nullable annotations to struct members. #2914
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
b654efa to
c023b7b
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #2914 +/- ##
==========================================
+ Coverage 72.07% 72.13% +0.05%
==========================================
Files 154 154
Lines 31272 31396 +124
==========================================
+ Hits 22540 22646 +106
- Misses 8732 8750 +18 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
ddd160d to
4265c7c
Compare
5c420c0 to
499f9ae
Compare
Also add a bunch of casts where needed. I've tried to model everything in such a way that it minimises casts. The casts *should* be safe, but it's not always obvious. In the obvious cases, we should have a linter that validates it. In the non-obvious cases, that linter should warn and require that we add a null check. I've added some null checks in some cases but not all. Also, refactored some of the constructor functions to never assign a maybe-null value to a non-null struct member, instead using a temporary local variable to check if construction/allocation succeeded.
Also add a bunch of casts where needed. I've tried to model everything in such a way that it minimises casts. The casts should be safe, but it's not always obvious. In the obvious cases, we should have a linter that validates it. In the non-obvious cases, that linter should warn and require that we add a null check. I've added some null checks in some cases but not all.
Also, refactored some of the constructor functions to never assign a maybe-null value to a non-null struct member, instead using a temporary local variable to check if construction/allocation succeeded.
This change is