composite

package
v0.0.0-...-765d1ad Latest Latest
Warning

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

Go to latest
Published: Dec 19, 2022 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PrepareAllQueries

func PrepareAllQueries(ctx context.Context, p preparer) error

PrepareAllQueries executes a PREPARE statement for all pggen generated SQL queries in querier files. Typical usage is as the AfterConnect callback for pgxpool.Config

pgx will use the prepared statement if available. Calling PrepareAllQueries is an optional optimization to avoid a network round-trip the first time pgx runs a query if pgx statement caching is enabled.

Types

type Arrays

type Arrays struct {
	Texts  []string   `json:"texts"`
	Int8s  []*int     `json:"int8s"`
	Bools  []bool     `json:"bools"`
	Floats []*float64 `json:"floats"`
}

Arrays represents the Postgres composite type "arrays".

type Blocks

type Blocks struct {
	ID           int    `json:"id"`
	ScreenshotID int    `json:"screenshot_id"`
	Body         string `json:"body"`
}

Blocks represents the Postgres composite type "blocks".

type DBQuerier

type DBQuerier struct {
	// contains filtered or unexported fields
}

func NewQuerier

func NewQuerier(conn genericConn) *DBQuerier

NewQuerier creates a DBQuerier that implements Querier. conn is typically *pgx.Conn, pgx.Tx, or *pgxpool.Pool.

func NewQuerierConfig

func NewQuerierConfig(conn genericConn, cfg QuerierConfig) *DBQuerier

NewQuerierConfig creates a DBQuerier that implements Querier with the given config. conn is typically *pgx.Conn, pgx.Tx, or *pgxpool.Pool.

func (*DBQuerier) ArraysInput

func (q *DBQuerier) ArraysInput(ctx context.Context, arrays Arrays) (Arrays, error)

ArraysInput implements Querier.ArraysInput.

func (*DBQuerier) ArraysInputBatch

func (q *DBQuerier) ArraysInputBatch(batch genericBatch, arrays Arrays)

ArraysInputBatch implements Querier.ArraysInputBatch.

func (*DBQuerier) ArraysInputScan

func (q *DBQuerier) ArraysInputScan(results pgx.BatchResults) (Arrays, error)

ArraysInputScan implements Querier.ArraysInputScan.

func (*DBQuerier) InsertScreenshotBlocks

func (q *DBQuerier) InsertScreenshotBlocks(ctx context.Context, screenshotID int, body string) (InsertScreenshotBlocksRow, error)

InsertScreenshotBlocks implements Querier.InsertScreenshotBlocks.

func (*DBQuerier) InsertScreenshotBlocksBatch

func (q *DBQuerier) InsertScreenshotBlocksBatch(batch genericBatch, screenshotID int, body string)

InsertScreenshotBlocksBatch implements Querier.InsertScreenshotBlocksBatch.

func (*DBQuerier) InsertScreenshotBlocksScan

func (q *DBQuerier) InsertScreenshotBlocksScan(results pgx.BatchResults) (InsertScreenshotBlocksRow, error)

InsertScreenshotBlocksScan implements Querier.InsertScreenshotBlocksScan.

func (*DBQuerier) SearchScreenshots

func (q *DBQuerier) SearchScreenshots(ctx context.Context, params SearchScreenshotsParams) ([]SearchScreenshotsRow, error)

SearchScreenshots implements Querier.SearchScreenshots.

func (*DBQuerier) SearchScreenshotsBatch

func (q *DBQuerier) SearchScreenshotsBatch(batch genericBatch, params SearchScreenshotsParams)

SearchScreenshotsBatch implements Querier.SearchScreenshotsBatch.

func (*DBQuerier) SearchScreenshotsOneCol

func (q *DBQuerier) SearchScreenshotsOneCol(ctx context.Context, params SearchScreenshotsOneColParams) ([][]Blocks, error)

SearchScreenshotsOneCol implements Querier.SearchScreenshotsOneCol.

func (*DBQuerier) SearchScreenshotsOneColBatch

func (q *DBQuerier) SearchScreenshotsOneColBatch(batch genericBatch, params SearchScreenshotsOneColParams)

SearchScreenshotsOneColBatch implements Querier.SearchScreenshotsOneColBatch.

func (*DBQuerier) SearchScreenshotsOneColScan

func (q *DBQuerier) SearchScreenshotsOneColScan(results pgx.BatchResults) ([][]Blocks, error)

SearchScreenshotsOneColScan implements Querier.SearchScreenshotsOneColScan.

func (*DBQuerier) SearchScreenshotsScan

func (q *DBQuerier) SearchScreenshotsScan(results pgx.BatchResults) ([]SearchScreenshotsRow, error)

SearchScreenshotsScan implements Querier.SearchScreenshotsScan.

func (*DBQuerier) UserEmails

func (q *DBQuerier) UserEmails(ctx context.Context) (UserEmail, error)

UserEmails implements Querier.UserEmails.

func (*DBQuerier) UserEmailsBatch

func (q *DBQuerier) UserEmailsBatch(batch genericBatch)

UserEmailsBatch implements Querier.UserEmailsBatch.

func (*DBQuerier) UserEmailsScan

func (q *DBQuerier) UserEmailsScan(results pgx.BatchResults) (UserEmail, error)

UserEmailsScan implements Querier.UserEmailsScan.

func (*DBQuerier) WithTx

func (q *DBQuerier) WithTx(tx pgx.Tx) (*DBQuerier, error)

WithTx creates a new DBQuerier that uses the transaction to run all queries.

type InsertScreenshotBlocksRow

type InsertScreenshotBlocksRow struct {
	ID           int    `json:"id"`
	ScreenshotID int    `json:"screenshot_id"`
	Body         string `json:"body"`
}

type Querier

type Querier interface {
	SearchScreenshots(ctx context.Context, params SearchScreenshotsParams) ([]SearchScreenshotsRow, error)
	// SearchScreenshotsBatch enqueues a SearchScreenshots query into batch to be executed
	// later by the batch.
	SearchScreenshotsBatch(batch genericBatch, params SearchScreenshotsParams)
	// SearchScreenshotsScan scans the result of an executed SearchScreenshotsBatch query.
	SearchScreenshotsScan(results pgx.BatchResults) ([]SearchScreenshotsRow, error)

	SearchScreenshotsOneCol(ctx context.Context, params SearchScreenshotsOneColParams) ([][]Blocks, error)
	// SearchScreenshotsOneColBatch enqueues a SearchScreenshotsOneCol query into batch to be executed
	// later by the batch.
	SearchScreenshotsOneColBatch(batch genericBatch, params SearchScreenshotsOneColParams)
	// SearchScreenshotsOneColScan scans the result of an executed SearchScreenshotsOneColBatch query.
	SearchScreenshotsOneColScan(results pgx.BatchResults) ([][]Blocks, error)

	InsertScreenshotBlocks(ctx context.Context, screenshotID int, body string) (InsertScreenshotBlocksRow, error)
	// InsertScreenshotBlocksBatch enqueues a InsertScreenshotBlocks query into batch to be executed
	// later by the batch.
	InsertScreenshotBlocksBatch(batch genericBatch, screenshotID int, body string)
	// InsertScreenshotBlocksScan scans the result of an executed InsertScreenshotBlocksBatch query.
	InsertScreenshotBlocksScan(results pgx.BatchResults) (InsertScreenshotBlocksRow, error)

	ArraysInput(ctx context.Context, arrays Arrays) (Arrays, error)
	// ArraysInputBatch enqueues a ArraysInput query into batch to be executed
	// later by the batch.
	ArraysInputBatch(batch genericBatch, arrays Arrays)
	// ArraysInputScan scans the result of an executed ArraysInputBatch query.
	ArraysInputScan(results pgx.BatchResults) (Arrays, error)

	UserEmails(ctx context.Context) (UserEmail, error)
	// UserEmailsBatch enqueues a UserEmails query into batch to be executed
	// later by the batch.
	UserEmailsBatch(batch genericBatch)
	// UserEmailsScan scans the result of an executed UserEmailsBatch query.
	UserEmailsScan(results pgx.BatchResults) (UserEmail, error)
}

Querier is a typesafe Go interface backed by SQL queries.

Methods ending with Batch enqueue a query to run later in a pgx.Batch. After calling SendBatch on pgx.Conn, pgxpool.Pool, or pgx.Tx, use the Scan methods to parse the results.

type QuerierConfig

type QuerierConfig struct {
	// DataTypes contains pgtype.Value to use for encoding and decoding instead
	// of pggen-generated pgtype.ValueTranscoder.
	//
	// If OIDs are available for an input parameter type and all of its
	// transitive dependencies, pggen will use the binary encoding format for
	// the input parameter.
	DataTypes []pgtype.DataType
}

type SearchScreenshotsOneColParams

type SearchScreenshotsOneColParams struct {
	Body   string
	Limit  int
	Offset int
}

type SearchScreenshotsParams

type SearchScreenshotsParams struct {
	Body   string
	Limit  int
	Offset int
}

type SearchScreenshotsRow

type SearchScreenshotsRow struct {
	ID     int      `json:"id"`
	Blocks []Blocks `json:"blocks"`
}

type UserEmail

type UserEmail struct {
	ID    string      `json:"id"`
	Email pgtype.Text `json:"email"`
}

UserEmail represents the Postgres composite type "user_email".

Jump to

Keyboard shortcuts

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