Documentation
¶
Overview ¶
Package queries runs the app's SQL queries, typed from its schema (see docs/sql.md).
Index ¶
- Variables
- type AddLinkParams
- type DB
- type Link
- type Queries
- func (q *Queries) AddLink(ctx context.Context, in AddLinkParams) (Link, error)
- func (q *Queries) AddUser(ctx context.Context, id int64, email string, name *string) (int64, error)
- func (q *Queries) CountLinks(ctx context.Context, userID int64) (int64, error)
- func (q *Queries) DeleteLinks(ctx context.Context, userID int64) error
- func (q *Queries) LinksOf(ctx context.Context, userID int64, show string, limit int64) ([]Link, error)
- func (q *Queries) MarkRead(ctx context.Context, read bool, id int64, userID int64) (int64, error)
- func (q *Queries) Titles(ctx context.Context, userID int64, pattern string) ([]string, error)
- func (q *Queries) UserByEmail(ctx context.Context, email string) (UserByEmailRow, error)
- func (q *Queries) WithTx(tx *sql.Tx) *Queries
- type UserByEmailRow
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrNotFound = errors.New("queries: not found")
ErrNotFound is returned by a :one query that finds no row.
Functions ¶
This section is empty.
Types ¶
type AddLinkParams ¶
AddLinkParams are the parameters of AddLink.
type DB ¶
type DB interface {
ExecContext(ctx context.Context, query string, args ...any) (sql.Result, error)
QueryContext(ctx context.Context, query string, args ...any) (*sql.Rows, error)
QueryRowContext(ctx context.Context, query string, args ...any) *sql.Row
}
DB is what queries run on: a *sql.DB, a *sql.Tx or a *sql.Conn.
type Link ¶
type Link struct {
ID int64 `json:"id"`
URL string `json:"url"`
Title string `json:"title"`
Note *string `json:"note"`
Read bool `json:"read"`
AddedAt time.Time `json:"addedAt"`
}
Link is a row of AddLink.
type Queries ¶
type Queries struct {
// contains filtered or unexported fields
}
Queries runs the queries on a database.
func (*Queries) CountLinks ¶
CountLinks runs queries/links.sql:14.
func (*Queries) DeleteLinks ¶
DeleteLinks runs queries/links.sql:23.
func (*Queries) LinksOf ¶
func (q *Queries) LinksOf(ctx context.Context, userID int64, show string, limit int64) ([]Link, error)
LinksOf runs queries/links.sql:7.
A user's links, newest first; show is "read", "unread" or "all".
type UserByEmailRow ¶
type UserByEmailRow struct {
ID int64 `json:"id"`
Email string `json:"email"`
Name *string `json:"name"`
}
UserByEmailRow is a row of UserByEmail.
Click to show internal directories.
Click to hide internal directories.