Skip to content

Post-processor for kyleconroy/sqlc

License

Notifications You must be signed in to change notification settings

mpyw/sqlc-restruct

Repository files navigation

sqlc-restruct

EXPERIMENTAL!

Post-processor for kyleconroy/sqlc

overview
user@host:~$ sqlc-restruct --help
NAME:
   sqlc-restruct - Post-processor for kyleconroy/sqlc

USAGE:
   sqlc-restruct [global options] command [command options] [arguments...]

COMMANDS:
   separate-interface  Separates models and the `Querier` interface from the `Queries` struct. This is typically done to adhere to the Dependency Inversion Principle (DIP), allowing for more flexible and testable code.
   help, h             Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --help, -h  show help

Installation

go install github.com/mpyw/sqlc-restruct/cmd/sqlc-restruct@latest

SubCommands

user@host:~$ sqlc-restruct separate-interface --help
NAME:
   sqlc-restruct separate-interface - Separates models and the `Querier` interface from the `Queries` struct. This is typically done to adhere to the Dependency Inversion Principle (DIP), allowing for more flexible and testable code.

USAGE:
   sqlc-restruct separate-interface [command options] [arguments...]

OPTIONS:
   --iface-pkg-name value     The package name where the separated Querier will be located.
   --iface-pkg-url value      The package URL where the separated Querier will be located. (e.g. "github.com/<user>/<repo>/path/to/pkg")
   --iface-dir value          The directory path where the separated Querier will be located.
   --models-pkg-name value    The package name where the separated models will be located. (default: --models-pkg-name value)
   --models-pkg-url value     The package URL where the separated models will be located. (default: --models-pkg-url value)
   --models-dir value         The directory path where the separated models will be located. (default: --iface-dir value)
   --impl-dir value           The original directory where the sqlc-generated code is located. (default: ".")
   --impl-sql-suffix value    The suffix for sqlc-generated files from SQL files. (default: ".sql.go")
   --models-file-name value   The file name for the sqlc-generated models file. (default: "models.go")
   --querier-file-name value  The file name for the sqlc-generated Querier file. (default: "querier.go")
   --help, -h                 show help

We recommend chaining the //go:generate directive for sqlc-restruct right after the one for sqlc in your code.

//go:generate sqlc generate
//go:generate sqlc-restruct separate-interface --iface-dir=domain/repos --iface-pkg-name=repos --iface-pkg-url=github.com/example/domain/repos
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy