diff options
| author | 2026-03-28 17:55:37 +0000 | |
|---|---|---|
| committer | 2026-03-28 17:55:37 +0000 | |
| commit | 94a3920bb31bb00d31c1e8e2a680729eec996b77 (patch) | |
| tree | 08673f24a74751288f6259e319bd2bdd3848d1d3 /repository | |
| parent | commitquery: TODO on global arena (diff) | |
| signature | No signature | |
repository: Expose CommitQueries
Diffstat (limited to 'repository')
| -rw-r--r-- | repository/commit_queries.go | 11 | ||||
| -rw-r--r-- | repository/open.go | 2 | ||||
| -rw-r--r-- | repository/repository.go | 6 |
3 files changed, 17 insertions, 2 deletions
diff --git a/repository/commit_queries.go b/repository/commit_queries.go new file mode 100644 index 00000000..e3d223ae --- /dev/null +++ b/repository/commit_queries.go @@ -0,0 +1,11 @@ +package repository + +import "codeberg.org/lindenii/furgit/commitquery" + +// CommitQueries returns commit queries backed by the repository's object store +// and optional commit-graph. +// +// Labels: Life-Parent, Close-No. +func (repo *Repository) CommitQueries() *commitquery.Queries { + return repo.commitQueries +} diff --git a/repository/open.go b/repository/open.go index f4dd78f8..3c400f60 100644 --- a/repository/open.go +++ b/repository/open.go @@ -4,6 +4,7 @@ import ( "fmt" "os" + "codeberg.org/lindenii/furgit/commitquery" reffiles "codeberg.org/lindenii/furgit/ref/store/files" ) @@ -50,6 +51,7 @@ func Open(root *os.Root) (repo *Repository, err error) { } repo.commitGraph = commitGraph + repo.commitQueries = commitquery.New(objects, commitGraph) refRoot, err := root.OpenRoot(".") if err != nil { diff --git a/repository/repository.go b/repository/repository.go index b60e0023..cad9ceed 100644 --- a/repository/repository.go +++ b/repository/repository.go @@ -4,6 +4,7 @@ package repository import ( "os" + "codeberg.org/lindenii/furgit/commitquery" "codeberg.org/lindenii/furgit/config" commitgraphread "codeberg.org/lindenii/furgit/format/commitgraph/read" objectid "codeberg.org/lindenii/furgit/object/id" @@ -20,8 +21,8 @@ import ( // a bare repository root or a non-bare ".git" directory. // // Accessors such as [Repository.Objects], [Repository.CommitGraph], -// [Repository.Refs], [Repository.Fetcher], and -// [Repository.LooseStoreForWriting] return repository-backed views. +// [Repository.CommitQueries], [Repository.Refs], [Repository.Fetcher], +// and [Repository.LooseStoreForWriting] return repository-backed views. // // Labels: MT-Safe, Close-Caller. type Repository struct { @@ -34,6 +35,7 @@ type Repository struct { objectsLoose *objectloose.Store objectsPacked *objectpacked.Store commitGraph *commitgraphread.Reader + commitQueries *commitquery.Queries refRoot *os.Root refs refstore.ReadWriteStore } |
