Uh oh!
There was an error while loading. Please reload this page.
Document MatrixCursor RowBuilder APIs - #569
Conversation
Refs #87 Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
This PR updates the XML documentation for Android.Database.MatrixCursor.RowBuilder to replace placeholder text with concrete parameter/return descriptions aligned with the Android reference docs.
Changes:
- Documented the
Add(Object columnValue)overload’s parameter meaning and chaining return value. - Documented the
Add(string columnName, Object value)overload’s parameters, chaining return value, and “offer-if-column-exists” behavior in the summary.
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
jonathanpeppers
commented
Aug 16, 2026
@dalexsoto review |
dalexsoto
left a comment
There was a problem hiding this comment.
RowBuilder.Add(string? columnName, object? value) accepts a nullable managed name, but Android dereferences it and throws NullPointerException for null; the new wording instead implies unmatched names are merely ignored. Please document the non-null requirement and exception contract, and consider correcting the binding nullability: MatrixCursor+RowBuilder.xml.
Refs #87 Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
jonathanpeppers
commented
Aug 17, 2026
@dalexsoto Addressed in 0d09543: Add(string columnName, ...) now has a non-null managed signature, its parameter documentation requires a non-null name, and its NullPointerException contract is documented. The unmatched-column behavior remains documented separately. |
dalexsoto
left a comment
There was a problem hiding this comment.
The nullability fix is incomplete:
- The displayed
string columnNamesignature no longer matches the shipping managed API, which remainsstring?across current monikers. Either restorestring?or fix binding metadata upstream and regenerate. - A null name does not always throw: a valid zero-column cursor skips the dereference and returns normally. Keep the non-null precondition, but remove or qualify the unconditional
NullPointerExceptionclaim.
…-xml-docs' into jonathanpeppers-complete-pr-569
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: bb29695e-6035-4ec4-9b39-419468fe8a78
jonathanpeppers
commented
Aug 18, 2026
Addressed the latest review on the refreshed branch: restored the shipping \string? columnName\ signature, retained the non-null precondition in the parameter documentation, and removed the unconditional \NullPointerException\ claim because zero-column cursors do not dereference the name. |
dalexsoto
left a comment
There was a problem hiding this comment.
The RowBuilder contract now preserves the shipping nullable signature while accurately documenting name matching and zero-column behavior.
Uh oh!
There was an error while loading. Please reload this page.
Summary
MatrixCursor.RowBuilder.Addoverload parameter, return, and behavior descriptions.Sources
MatrixCursor.RowBuilderreferenceMatrixCursor.javaValidation
docs/xml/Android.Database/MatrixCursor+RowBuilder.xmlwith PowerShell's XML parser.git diff --check.Refs #87