From 41f07c00cefc4561493a8e1ef91550adc4c544f5 Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Sun, 29 Mar 2026 13:31:46 +0000 Subject: commitquery: Context has been gone long ago --- commitquery/reset.go | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 commitquery/reset.go (limited to 'commitquery/reset.go') diff --git a/commitquery/reset.go b/commitquery/reset.go new file mode 100644 index 00000000..465f05c1 --- /dev/null +++ b/commitquery/reset.go @@ -0,0 +1,37 @@ +package commitquery + +import ( + commitgraphread "codeberg.org/lindenii/furgit/format/commitgraph/read" + objectid "codeberg.org/lindenii/furgit/object/id" + objectstore "codeberg.org/lindenii/furgit/object/store" +) + +type query struct { + store objectstore.ReadingStore + graph *commitgraphread.Reader + + nodes []node + + byOID map[objectid.ObjectID]nodeIndex + byGraphPos map[commitgraphread.Position]nodeIndex + + markPhase uint32 + touched []nodeIndex +} + +func newQuery(store objectstore.ReadingStore, graph *commitgraphread.Reader) *query { + return &query{ + store: store, + graph: graph, + byOID: make(map[objectid.ObjectID]nodeIndex), + byGraphPos: make(map[commitgraphread.Position]nodeIndex), + } +} + +func (query *query) resetForReuse() { + for _, idx := range query.touched { + query.nodes[idx].marks = 0 + } + + query.touched = query.touched[:0] +} -- cgit v1.3.1-10-gc9f91