ref: 1556cfb51d980ae8c5bf664ad69f3abd46f02386
dir: /commitgraph/read/open_single.go/
package read
import (
"os"
"codeberg.org/lindenii/furgit/internal/intconv"
"codeberg.org/lindenii/furgit/objectid"
)
func openSingle(root *os.Root, algo objectid.Algorithm) (*Reader, error) {
graph, err := openLayer(root, "info/commit-graph", algo)
if err != nil {
return nil, err
}
graph.baseCount = 0
graph.globalFrom = 0
hashVersion, err := intconv.Uint32ToUint8(algo.PackHashID())
if err != nil {
return nil, err
}
out := &Reader{
algo: algo,
hashVersion: hashVersion,
layers: []layer{*graph},
total: graph.numCommits,
}
return out, nil
}