complexdb

package
v0.12.0 Latest Latest
Warning

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

Go to latest
Published: Jun 11, 2026 License: MIT Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AddTagToPostParams added in v0.11.0

type AddTagToPostParams struct {
	PostId int64
	TagId  int64
}

type Authors

type Authors struct {
	Id        int64          `json:"id"`
	Name      string         `json:"name"`
	Email     string         `json:"email"`
	Bio       sql.NullString `json:"bio"`
	CreatedAt int64          `json:"created_at"`
}

type CreateAuthorParams added in v0.11.0

type CreateAuthorParams struct {
	Name  string
	Email string
	Bio   sql.NullString
}

type CreateAuthorRow

type CreateAuthorRow struct {
	Id        int64
	Name      string
	Email     string
	Bio       sql.NullString
	CreatedAt int64
}

type CreatePostParams added in v0.11.0

type CreatePostParams struct {
	AuthorId  int64
	Title     string
	Content   string
	Published int64
}

type CreatePostRow

type CreatePostRow struct {
	Id        int64
	AuthorId  int64
	Title     string
	Content   string
	Published int64
	ViewCount int64
	CreatedAt int64
	UpdatedAt sql.NullInt64
}

type CreateTagParams added in v0.11.0

type CreateTagParams struct {
	Name        string
	Description sql.NullString
}

type CreateTagRow

type CreateTagRow struct {
	Id          int64
	Name        string
	Description sql.NullString
}

type DBTX

type DBTX 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
}

type GetAuthorRow

type GetAuthorRow struct {
	Id        int64
	Name      string
	Email     string
	Bio       sql.NullString
	CreatedAt int64
}

type GetAuthorStatsRow

type GetAuthorStatsRow struct {
	Id         int64
	Name       string
	TotalPosts any
	TotalViews any
}

type GetAuthorWithPostCountRow

type GetAuthorWithPostCountRow struct {
	Id         int64
	Name       string
	Email      string
	Bio        sql.NullString
	TotalPosts any
}

type GetPopularTagsRow

type GetPopularTagsRow struct {
	Id          int64
	Name        string
	Description sql.NullString
	PostCount   any
}

type GetPostRow

type GetPostRow struct {
	Id        int64
	AuthorId  int64
	Title     string
	Content   string
	Published int64
	ViewCount int64
	CreatedAt int64
	UpdatedAt sql.NullInt64
}

type GetPostTagsRow

type GetPostTagsRow struct {
	Id          int64
	Name        string
	Description sql.NullString
}

type GetPostsByTagRow

type GetPostsByTagRow struct {
	Id        int64
	AuthorId  int64
	Title     string
	Content   string
	Published int64
	ViewCount int64
	CreatedAt int64
	UpdatedAt sql.NullInt64
}

type GetTagByNameRow

type GetTagByNameRow struct {
	Id          int64
	Name        string
	Description sql.NullString
}

type GetTagRow

type GetTagRow struct {
	Id          int64
	Name        string
	Description sql.NullString
}

type ListAuthorsRow

type ListAuthorsRow struct {
	Id        int64
	Name      string
	Email     string
	Bio       sql.NullString
	CreatedAt int64
}

type ListPostsRow

type ListPostsRow struct {
	Id        int64
	AuthorId  int64
	Title     string
	Content   string
	Published int64
	ViewCount int64
	CreatedAt int64
	UpdatedAt sql.NullInt64
}

type ListTagsRow

type ListTagsRow struct {
	Id          int64
	Name        string
	Description sql.NullString
}

type ListUnpublishedPostsRow

type ListUnpublishedPostsRow struct {
	Id        int64
	AuthorId  int64
	Title     string
	Content   string
	Published int64
	ViewCount int64
	CreatedAt int64
	UpdatedAt sql.NullInt64
}

type Posts

type Posts struct {
	Id        int64         `json:"id"`
	AuthorId  int64         `json:"author_id"`
	Title     string        `json:"title"`
	Content   string        `json:"content"`
	Published int64         `json:"published"`
	ViewCount int64         `json:"view_count"`
	CreatedAt int64         `json:"created_at"`
	UpdatedAt sql.NullInt64 `json:"updated_at"`
}

type Querier

type Querier interface {
	AddTagToPost(ctx context.Context, arg AddTagToPostParams) error
	CreateAuthor(ctx context.Context, arg CreateAuthorParams) (CreateAuthorRow, error)
	CreatePost(ctx context.Context, arg CreatePostParams) (CreatePostRow, error)
	CreateTag(ctx context.Context, arg CreateTagParams) (CreateTagRow, error)
	DeleteAuthor(ctx context.Context, id int64) error
	DeleteTag(ctx context.Context, id int64) error
	GetAuthor(ctx context.Context, id int64) (GetAuthorRow, error)
	GetAuthorStats(ctx context.Context, id int64) (GetAuthorStatsRow, error)
	GetAuthorWithPostCount(ctx context.Context, id int64) (GetAuthorWithPostCountRow, error)
	GetPopularTags(ctx context.Context, limit any) ([]GetPopularTagsRow, error)
	GetPost(ctx context.Context, id int64) (GetPostRow, error)
	GetPostTags(ctx context.Context, postId int64) ([]GetPostTagsRow, error)
	GetPostsByTag(ctx context.Context, name string) ([]GetPostsByTagRow, error)
	GetTag(ctx context.Context, id int64) (GetTagRow, error)
	GetTagByName(ctx context.Context, name string) (GetTagByNameRow, error)
	IncrementViewCount(ctx context.Context, id int64) error
	ListAuthors(ctx context.Context) ([]ListAuthorsRow, error)
	ListPosts(ctx context.Context) ([]ListPostsRow, error)
	ListTags(ctx context.Context) ([]ListTagsRow, error)
	ListUnpublishedPosts(ctx context.Context) ([]ListUnpublishedPostsRow, error)
	SearchPosts(ctx context.Context, arg SearchPostsParams) ([]SearchPostsRow, error)
	UpdateAuthor(ctx context.Context, arg UpdateAuthorParams) (UpdateAuthorRow, error)
	WithTx(tx DBTX) *Queries
}

type Queries

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

func New

func New(db DBTX) *Queries

func (*Queries) AddTagToPost

func (q *Queries) AddTagToPost(ctx context.Context, arg AddTagToPostParams) error

func (*Queries) CreateAuthor

func (q *Queries) CreateAuthor(ctx context.Context, arg CreateAuthorParams) (CreateAuthorRow, error)

func (*Queries) CreatePost

func (q *Queries) CreatePost(ctx context.Context, arg CreatePostParams) (CreatePostRow, error)

func (*Queries) CreateTag

func (q *Queries) CreateTag(ctx context.Context, arg CreateTagParams) (CreateTagRow, error)

func (*Queries) DeleteAuthor

func (q *Queries) DeleteAuthor(ctx context.Context, id int64) error

func (*Queries) DeleteTag

func (q *Queries) DeleteTag(ctx context.Context, id int64) error

func (*Queries) GetAuthor

func (q *Queries) GetAuthor(ctx context.Context, id int64) (GetAuthorRow, error)

func (*Queries) GetAuthorStats

func (q *Queries) GetAuthorStats(ctx context.Context, id int64) (GetAuthorStatsRow, error)

func (*Queries) GetAuthorWithPostCount

func (q *Queries) GetAuthorWithPostCount(ctx context.Context, id int64) (GetAuthorWithPostCountRow, error)

func (*Queries) GetPopularTags

func (q *Queries) GetPopularTags(ctx context.Context, limit any) ([]GetPopularTagsRow, error)

func (*Queries) GetPost

func (q *Queries) GetPost(ctx context.Context, id int64) (GetPostRow, error)

func (*Queries) GetPostTags

func (q *Queries) GetPostTags(ctx context.Context, postId int64) ([]GetPostTagsRow, error)

func (*Queries) GetPostsByTag

func (q *Queries) GetPostsByTag(ctx context.Context, name string) ([]GetPostsByTagRow, error)

func (*Queries) GetTag

func (q *Queries) GetTag(ctx context.Context, id int64) (GetTagRow, error)

func (*Queries) GetTagByName

func (q *Queries) GetTagByName(ctx context.Context, name string) (GetTagByNameRow, error)

func (*Queries) IncrementViewCount

func (q *Queries) IncrementViewCount(ctx context.Context, id int64) error

func (*Queries) ListAuthors

func (q *Queries) ListAuthors(ctx context.Context) ([]ListAuthorsRow, error)

func (*Queries) ListPosts

func (q *Queries) ListPosts(ctx context.Context) ([]ListPostsRow, error)

func (*Queries) ListTags

func (q *Queries) ListTags(ctx context.Context) ([]ListTagsRow, error)

func (*Queries) ListUnpublishedPosts

func (q *Queries) ListUnpublishedPosts(ctx context.Context) ([]ListUnpublishedPostsRow, error)

func (*Queries) SearchPosts

func (q *Queries) SearchPosts(ctx context.Context, arg SearchPostsParams) ([]SearchPostsRow, error)

func (*Queries) UpdateAuthor

func (q *Queries) UpdateAuthor(ctx context.Context, arg UpdateAuthorParams) (UpdateAuthorRow, error)

func (*Queries) WithTx added in v0.11.0

func (q *Queries) WithTx(tx DBTX) *Queries

type QueryResult

type QueryResult struct {
	LastInsertID int64
	RowsAffected int64
}

type SearchPostsParams added in v0.11.0

type SearchPostsParams struct {
	Title   any
	Content any
	Limit   any
	Offset  any
}

type SearchPostsRow

type SearchPostsRow struct {
	Id        int64
	AuthorId  int64
	Title     string
	Content   string
	Published int64
	ViewCount int64
	CreatedAt int64
	UpdatedAt sql.NullInt64
}

type Tags

type Tags struct {
	Id          int64          `json:"id"`
	Name        string         `json:"name"`
	Description sql.NullString `json:"description"`
}

type UpdateAuthorParams added in v0.11.0

type UpdateAuthorParams struct {
	Name  string
	Email string
	Bio   sql.NullString
	Id    int64
}

type UpdateAuthorRow

type UpdateAuthorRow struct {
	Id        int64
	Name      string
	Email     string
	Bio       sql.NullString
	CreatedAt int64
}

Jump to

Keyboard shortcuts

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