codegen

package
v0.1.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 22, 2026 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ExplainJSONHasSeqScan

func ExplainJSONHasSeqScan(plan []byte) bool

ExplainJSONHasSeqScan checks EXPLAIN (FORMAT JSON) output for Seq Scan nodes.

func Generate

func Generate(
	tables []schema.Table,
	operations []decl.Operation,
	rawOperations []decl.RawOperation,
	txScripts []decl.TxScript,
	policies []decl.QueryPolicy,
) (map[string][]byte, error)

Generate generates target artifacts.

func GenerateCatalog

func GenerateCatalog(tables []schema.Table, packageName string) ([]byte, error)

GenerateCatalog generates target artifacts.

func GenerateFKCatalog

func GenerateFKCatalog(tables []schema.Table, packageName string) ([]byte, error)

GenerateFKCatalog generates target artifacts.

func GenerateMethodRefs

func GenerateMethodRefs(
	packageName string,
	operations []decl.Operation,
	rawOperations []decl.RawOperation,
	txScripts []decl.TxScript,
) ([]byte, error)

GenerateMethodRefs renders typed method reference constants for declaration package usage.

func GenerateOpsBootstrap

func GenerateOpsBootstrap(tables []schema.Table, packageName string) ([]byte, error)

GenerateOpsBootstrap generates target artifacts.

func GenerateOpsScaffold

func GenerateOpsScaffold(tables []schema.Table, config OpsScaffoldConfig) (map[string][]byte, error)

GenerateOpsScaffold prepares scaffold files for operation declarations.

func GenerateWithConfig

func GenerateWithConfig(
	tables []schema.Table,
	operations []decl.Operation,
	rawOperations []decl.RawOperation,
	txScripts []decl.TxScript,
	policies []decl.QueryPolicy,
	config TemplateConfig,
) (map[string][]byte, error)

GenerateWithConfig generates target artifacts.

func SortedFileNames

func SortedFileNames(files map[string][]byte) []string

SortedFileNames handles sorted file names.

Types

type OpsScaffoldConfig

type OpsScaffoldConfig struct {
	Dir               string
	PackageName       string
	CatalogImportPath string
	PresetsCSV        string
	Mode              OpsScaffoldMode
}

type OpsScaffoldMode

type OpsScaffoldMode string
const (
	OpsScaffoldModeInit  OpsScaffoldMode = "init"
	OpsScaffoldModeSync  OpsScaffoldMode = "sync"
	OpsScaffoldModeForce OpsScaffoldMode = "force"
)

func ParseOpsScaffoldMode

func ParseOpsScaffoldMode(raw string) (OpsScaffoldMode, error)

ParseOpsScaffoldMode validates scaffold mode input.

type TemplateConfig

type TemplateConfig struct {
	PackageName             string
	InputSuffix             string
	RowSuffix               string
	ReturningSuffix         string
	BulkItemSuffix          string
	UsePreparedStatements   bool
	LogRedactedFields       []string
	LogRedactionReplacement string
}

func DefaultTemplateConfig

func DefaultTemplateConfig() TemplateConfig

DefaultTemplateConfig returns default configuration values.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL