 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- func MustApplyMigrations(cfg *MigrationsConfig)
- func MustRollBackMigrations(cfg *MigrationsConfig, targetVersion int32)
- func MustShowMigrations(cfg *MigrationsConfig)
- type MigrationsConfig
- type SQLCConfig
- type SQLCConfigPlugin
- type SQLCConfigPluginWASM
- type SQLCConfigSQL
- type SQLCConfigSQLCodegen
- type SQLCConfigSQLCodegenOptions
- type SQLCConfigSQLCodegenOptionsOverride
- type SQLCConfigSQLCodegenOptionsOverrideGoType
- type SQLCConfigSQLDatabase
- type SQLCGenerator
- func (c *SQLCGenerator) AddOverride(overrides ...*SQLCConfigSQLCodegenOptionsOverride) *SQLCGenerator
- func (c *SQLCGenerator) MergeRenames(m map[string]string) *SQLCGenerator
- func (c *SQLCGenerator) MustGenerate()
- func (c *SQLCGenerator) MustOutput()
- func (c *SQLCGenerator) SetRename(k, v string) *SQLCGenerator
 
- type SQLCGeneratorParams
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func MustApplyMigrations ¶
func MustApplyMigrations(cfg *MigrationsConfig)
MustApplyMigrations applies all migrations.
func MustRollBackMigrations ¶
func MustRollBackMigrations(cfg *MigrationsConfig, targetVersion int32)
MustRollBackMigrations rolls migrations back.
func MustShowMigrations ¶
func MustShowMigrations(cfg *MigrationsConfig)
MustShowMigrations shows migrations.
Types ¶
type MigrationsConfig ¶
MigrationsConfig describes the configuration for migrations.
type SQLCConfig ¶ added in v0.7.0
type SQLCConfig struct {
	Version string              `json:"version,omitempty"`
	Plugins []*SQLCConfigPlugin `json:"plugins,omitempty"`
	SQL     []*SQLCConfigSQL    `json:"sql,omitempty"`
}
    SQLCConfig describes the SQLC configuration.
type SQLCConfigPlugin ¶ added in v0.7.0
type SQLCConfigPlugin struct {
	Name string                `json:"name,omitempty"`
	WASM *SQLCConfigPluginWASM `json:"wasm,omitempty"`
}
    SQLCConfigPlugin describes part of the SQLC configuration.
type SQLCConfigPluginWASM ¶ added in v0.7.0
type SQLCConfigPluginWASM struct {
	URL    string `json:"url,omitempty"`
	SHA256 string `json:"sha256,omitempty"`
}
    SQLCConfigPluginWASM describes part of the SQLC configuration.
type SQLCConfigSQL ¶ added in v0.7.0
type SQLCConfigSQL struct {
	Engine   string                  `json:"engine,omitempty"`
	Schema   string                  `json:"schema,omitempty"`
	Queries  string                  `json:"queries,omitempty"`
	Database *SQLCConfigSQLDatabase  `json:"database,omitempty"`
	Codegen  []*SQLCConfigSQLCodegen `json:"codegen,omitempty"`
	Rules    []string                `json:"rules"`
}
    SQLCConfigSQL describes part of the SQLC configuration.
type SQLCConfigSQLCodegen ¶ added in v0.7.0
type SQLCConfigSQLCodegen struct {
	Plugin  string                       `json:"plugin,omitempty"`
	Out     string                       `json:"out,omitempty"`
	Options *SQLCConfigSQLCodegenOptions `json:"options,omitempty"`
}
    SQLCConfigSQLCodegen describes part of the SQLC configuration.
type SQLCConfigSQLCodegenOptions ¶ added in v0.7.0
type SQLCConfigSQLCodegenOptions struct {
	BuildTags                   string                                 `json:"build_tags,omitempty"`
	EmitAllEnumValues           bool                                   `json:"emit_all_enum_values"`
	EmitDbTags                  bool                                   `json:"emit_db_tags"`
	EmitEmptySlices             bool                                   `json:"emit_empty_slices"`
	EmitEnumValidMethod         bool                                   `json:"emit_enum_valid_method"`
	EmitExactTableNames         bool                                   `json:"emit_exact_table_names"`
	EmitExportedQueries         bool                                   `json:"emit_exported_queries"`
	EmitInterface               bool                                   `json:"emit_interface"`
	EmitJSONTags                bool                                   `json:"emit_json_tags"`
	EmitMethodsWithDBArgument   bool                                   `json:"emit_methods_with_db_argument"`
	EmitParamsStructPointers    bool                                   `json:"emit_params_struct_pointers"`
	EmitPointersForNullTypes    bool                                   `json:"emit_pointers_for_null_types"`
	EmitPreparedQueries         bool                                   `json:"emit_prepared_queries"`
	EmitResultStructPointers    bool                                   `json:"emit_result_struct_pointers"`
	EmitSQLAsComment            bool                                   `json:"emit_sql_as_comment"`
	InflectionExcludeTableNames []string                               `json:"inflection_exclude_table_names,omitempty"`
	JSONTagsCaseStyle           string                                 `json:"json_tags_case_style,omitempty"`
	JSONTagsIDUppercase         bool                                   `json:"json_tags_id_uppercase"`
	OmitSQLCVersion             bool                                   `json:"omit_sqlc_version"`
	OmitUnusedStructs           bool                                   `json:"omit_unused_structs"`
	OutputBatchFileName         string                                 `json:"output_batch_file_name,omitempty"`
	OutputCopyFromFileName      string                                 `json:"output_copyfrom_file_name,omitempty"`
	OutputDBFileName            string                                 `json:"output_db_file_name,omitempty"`
	OutputFilesSuffix           string                                 `json:"output_files_suffix,omitempty"`
	OutputModelsFileName        string                                 `json:"output_models_file_name,omitempty"`
	OutputQuerierFileName       string                                 `json:"output_querier_file_name,omitempty"`
	Overrides                   []*SQLCConfigSQLCodegenOptionsOverride `json:"overrides,omitempty"`
	Package                     string                                 `json:"package,omitempty"`
	QueryParameterLimit         int32                                  `json:"query_parameter_limit"`
	Rename                      map[string]string                      `json:"rename,omitempty"`
	SQLDriver                   string                                 `json:"sql_driver,omitempty"`
	SQLPackage                  string                                 `json:"sql_package,omitempty"`
}
    SQLCConfigSQLCodegenOptions describes part of the SQLC configuration.
type SQLCConfigSQLCodegenOptionsOverride ¶ added in v0.7.0
type SQLCConfigSQLCodegenOptionsOverride struct {
	Column      string                                     `json:"column,omitempty"`
	DBType      string                                     `json:"db_type,omitempty"`
	Nullable    bool                                       `json:"nullable"`
	Unsigned    bool                                       `json:"unsigned"`
	GoType      *SQLCConfigSQLCodegenOptionsOverrideGoType `json:"go_type,omitempty"`
	GoStructTag string                                     `json:"go_struct_tag,omitempty"`
}
    SQLCConfigSQLCodegenOptionsOverride describes part of the SQLC configuration.
type SQLCConfigSQLCodegenOptionsOverrideGoType ¶ added in v0.7.0
type SQLCConfigSQLCodegenOptionsOverrideGoType struct {
	Import  string `json:"import,omitempty"`
	Package string `json:"package,omitempty"`
	Type    string `json:"type,omitempty"`
	Pointer bool   `json:"pointer"`
	Slice   bool   `json:"slice"`
}
    SQLCConfigSQLCodegenOptionsOverrideGoType describes part of the SQLC configuration.
type SQLCConfigSQLDatabase ¶ added in v0.7.0
type SQLCConfigSQLDatabase struct {
	Managed bool   `json:"managed"`
	URI     string `json:"uri,omitempty"`
}
    SQLCConfigSQLDatabase describes part of the SQLC configuration.
type SQLCGenerator ¶ added in v0.7.0
type SQLCGenerator struct {
	// contains filtered or unexported fields
}
    SQLCGenerator generates database bindings with SQLC.
func MustNewSQLCGenerator ¶ added in v0.7.0
func MustNewSQLCGenerator(params *SQLCGeneratorParams) *SQLCGenerator
MustNewSQLCGenerator initializes a new SQLCGenerator.
func (*SQLCGenerator) AddOverride ¶ added in v0.7.0
func (c *SQLCGenerator) AddOverride(overrides ...*SQLCConfigSQLCodegenOptionsOverride) *SQLCGenerator
AddOverride adds an override to the config.
func (*SQLCGenerator) MergeRenames ¶ added in v0.7.0
func (c *SQLCGenerator) MergeRenames(m map[string]string) *SQLCGenerator
MergeRenames merges the given rename rules.
func (*SQLCGenerator) MustGenerate ¶ added in v0.7.0
func (c *SQLCGenerator) MustGenerate()
MustGenerate generates the SQLC bindings.
func (*SQLCGenerator) MustOutput ¶ added in v0.7.0
func (c *SQLCGenerator) MustOutput()
MustOutput the config to disk.
func (*SQLCGenerator) SetRename ¶ added in v0.7.0
func (c *SQLCGenerator) SetRename(k, v string) *SQLCGenerator
SetRename sets a rename rule.
type SQLCGeneratorParams ¶ added in v0.7.0
type SQLCGeneratorParams struct {
	BuildDirPath   string `validate:"required"`
	SchemaDirPath  string `validate:"required"`
	QueriesDirPath string `validate:"required"`
	PostgresURL    string `validate:"required"`
	OutDirPath     string `validate:"required"`
	OutPackageName string `validate:"required"`
}
    SQLCGeneratorParams describes parameters.
func (*SQLCGeneratorParams) GetConfigFilePath ¶ added in v0.7.0
func (p *SQLCGeneratorParams) GetConfigFilePath() string
GetConfigFilePath returns the config file path.
func (*SQLCGeneratorParams) GetPluginFilePath ¶ added in v0.7.0
func (p *SQLCGeneratorParams) GetPluginFilePath() string
GetPluginFilePath returns the plugin file path.