Repository navigation
feat(generator): generate one top-level row record per table - #49
Merged
Merged
Conversation
feat(generator): generate one top-level row record per table Every repository of the package that returns the complete row of a table now returns one top-level <TableName>Row record generated into its own file, instead of nesting its own copy. Each repository keeps its row mapper. Two entries that define a shared row from different columns, or whose row types are equal ignoring case, fail before any output is written. Row files are listed in the manifest and deleted once no entry returns them.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
Repositories that return the complete row of the same table now share one generated record. Each
<TableName>Rowis generated once per package as a top-levelpublic recordin its own file. Before this change, every repository nested its own copy, so two repositories over the same schema returned unrelatedAuthorsRowtypes.Changes
<TableName>Row.javaper table whose complete row any configured entry returns. It sits injava.package, imports only the JDK types of its components, and has the same name, components, component order, and Java types as the former nested record.<QueryName>Resultrecords stay nested.Invalid query groupprefix.sqlcj-manifest.txtand delete a row file on regeneration once no entry returns that row.AuthorsRowclass, stale row deletion, and both cross-entry diagnostics.Scope and non-goals