Help us shape the future of Go! Take the 2026 Go Developer Survey

order

package
v0.57.13 Latest Latest
Warning

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

Go to latest
Published: Sep 27, 2026 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

Package order groups related blocks for physical packfile locality.

Index

Constants

This section is empty.

Variables

View Source
var (
	AccessOrderFilesystem_name = map[int32]string{
		0: "ACCESS_ORDER_FILESYSTEM_UNKNOWN",
		1: "ACCESS_ORDER_FILESYSTEM_DIST",
		2: "ACCESS_ORDER_FILESYSTEM_ASSETS",
	}
	AccessOrderFilesystem_value = map[string]int32{
		"ACCESS_ORDER_FILESYSTEM_UNKNOWN": 0,
		"ACCESS_ORDER_FILESYSTEM_DIST":    1,
		"ACCESS_ORDER_FILESYSTEM_ASSETS":  2,
	}
)

Enum value maps for AccessOrderFilesystem.

View Source
var (
	AccessOrderReason_name = map[int32]string{
		0: "ACCESS_ORDER_REASON_UNKNOWN",
		1: "ACCESS_ORDER_REASON_ENTRYPOINT",
		2: "ACCESS_ORDER_REASON_DYNAMIC_IMPORT",
		3: "ACCESS_ORDER_REASON_ASSET",
	}
	AccessOrderReason_value = map[string]int32{
		"ACCESS_ORDER_REASON_UNKNOWN":        0,
		"ACCESS_ORDER_REASON_ENTRYPOINT":     1,
		"ACCESS_ORDER_REASON_DYNAMIC_IMPORT": 2,
		"ACCESS_ORDER_REASON_ASSET":          3,
	}
)

Enum value maps for AccessOrderReason.

Functions

func BlockRefs

func BlockRefs(ctx context.Context, graph RefGraph, refs []*block.BlockRef) ([]*block.BlockRef, error)

BlockRefs groups refs by available subtrees, preferring named GC object roots. GC edges have no intrinsic order, so siblings use stable hash order. With no graph, all refs use stable hash order. Only candidate blocks are queried.

func EncodeAccessOrderRecord

func EncodeAccessOrderRecord(w io.Writer, record *AccessOrderRecord) error

EncodeAccessOrderRecord writes record as protobuf binary data.

func WriteAccessOrderRecordFile

func WriteAccessOrderRecordFile(path string, record *AccessOrderRecord) error

WriteAccessOrderRecordFile writes record to path as protobuf binary data.

Types

type AccessOrderEntry

type AccessOrderEntry struct {

	// Ordinal is the first observed access index for this entry.
	Ordinal uint64 `protobuf:"varint,1,opt,name=ordinal,proto3" json:"ordinal,omitempty"`
	// Filesystem is the manifest filesystem containing path.
	Filesystem AccessOrderFilesystem `protobuf:"varint,2,opt,name=filesystem,proto3" json:"filesystem,omitempty"`
	// Path is the slash-separated path inside the manifest filesystem.
	Path string `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"`
	// Reason identifies why the access was recorded.
	Reason AccessOrderReason `protobuf:"varint,4,opt,name=reason,proto3" json:"reason,omitempty"`
	// ReasonDetail stores an entrypoint path, import specifier, or other label.
	ReasonDetail string `protobuf:"bytes,5,opt,name=reason_detail,json=reasonDetail,proto3" json:"reasonDetail,omitempty"`
	// AccessCount is the number of times this path was observed.
	AccessCount uint64 `protobuf:"varint,6,opt,name=access_count,json=accessCount,proto3" json:"accessCount,omitempty"`
	// ResolvedRefs are optional block refs resolved when the record was written.
	ResolvedRefs []*block.BlockRef `protobuf:"bytes,7,rep,name=resolved_refs,json=resolvedRefs,proto3" json:"resolvedRefs,omitempty"`
	// contains filtered or unexported fields
}

AccessOrderEntry stores one observed file access.

func (*AccessOrderEntry) CloneMessageVT

func (m *AccessOrderEntry) CloneMessageVT() protobuf_go_lite.CloneMessage

func (*AccessOrderEntry) CloneVT

func (m *AccessOrderEntry) CloneVT() *AccessOrderEntry

func (*AccessOrderEntry) EqualMessageVT

func (this *AccessOrderEntry) EqualMessageVT(thatMsg any) bool

func (*AccessOrderEntry) EqualVT

func (this *AccessOrderEntry) EqualVT(that *AccessOrderEntry) bool

func (*AccessOrderEntry) GetAccessCount

func (x *AccessOrderEntry) GetAccessCount() uint64

func (*AccessOrderEntry) GetFilesystem

func (x *AccessOrderEntry) GetFilesystem() AccessOrderFilesystem

func (*AccessOrderEntry) GetOrdinal

func (x *AccessOrderEntry) GetOrdinal() uint64

func (*AccessOrderEntry) GetPath

func (x *AccessOrderEntry) GetPath() string

func (*AccessOrderEntry) GetReason

func (x *AccessOrderEntry) GetReason() AccessOrderReason

func (*AccessOrderEntry) GetReasonDetail

func (x *AccessOrderEntry) GetReasonDetail() string

func (*AccessOrderEntry) GetResolvedRefs

func (x *AccessOrderEntry) GetResolvedRefs() []*block.BlockRef

func (*AccessOrderEntry) MarshalJSON

func (x *AccessOrderEntry) MarshalJSON() ([]byte, error)

MarshalJSON marshals the AccessOrderEntry to JSON.

func (*AccessOrderEntry) MarshalProtoJSON

func (x *AccessOrderEntry) MarshalProtoJSON(s *json.MarshalState)

MarshalProtoJSON marshals the AccessOrderEntry message to JSON.

func (*AccessOrderEntry) MarshalProtoText

func (x *AccessOrderEntry) MarshalProtoText() string

func (*AccessOrderEntry) MarshalToSizedBufferVT

func (m *AccessOrderEntry) MarshalToSizedBufferVT(dAtA []byte) (int, error)

func (*AccessOrderEntry) MarshalToVT

func (m *AccessOrderEntry) MarshalToVT(dAtA []byte) (int, error)

func (*AccessOrderEntry) MarshalVT

func (m *AccessOrderEntry) MarshalVT() (dAtA []byte, err error)

func (*AccessOrderEntry) ProtoMessage

func (*AccessOrderEntry) ProtoMessage()

func (*AccessOrderEntry) Reset

func (x *AccessOrderEntry) Reset()

func (*AccessOrderEntry) SizeVT

func (m *AccessOrderEntry) SizeVT() (n int)

func (*AccessOrderEntry) String

func (x *AccessOrderEntry) String() string

func (*AccessOrderEntry) UnmarshalJSON

func (x *AccessOrderEntry) UnmarshalJSON(b []byte) error

UnmarshalJSON unmarshals the AccessOrderEntry from JSON.

func (*AccessOrderEntry) UnmarshalProtoJSON

func (x *AccessOrderEntry) UnmarshalProtoJSON(s *json.UnmarshalState)

UnmarshalProtoJSON unmarshals the AccessOrderEntry message from JSON.

func (*AccessOrderEntry) UnmarshalVT

func (m *AccessOrderEntry) UnmarshalVT(dAtA []byte) error

type AccessOrderFilesystem

type AccessOrderFilesystem int32

AccessOrderFilesystem identifies which manifest filesystem a path came from.

const (
	// ACCESS_ORDER_FILESYSTEM_UNKNOWN indicates the filesystem was not recorded.
	AccessOrderFilesystem_ACCESS_ORDER_FILESYSTEM_UNKNOWN AccessOrderFilesystem = 0
	// ACCESS_ORDER_FILESYSTEM_DIST identifies the manifest distribution filesystem.
	AccessOrderFilesystem_ACCESS_ORDER_FILESYSTEM_DIST AccessOrderFilesystem = 1
	// ACCESS_ORDER_FILESYSTEM_ASSETS identifies the manifest assets filesystem.
	AccessOrderFilesystem_ACCESS_ORDER_FILESYSTEM_ASSETS AccessOrderFilesystem = 2
)

func (AccessOrderFilesystem) Enum

func (AccessOrderFilesystem) MarshalJSON

func (x AccessOrderFilesystem) MarshalJSON() ([]byte, error)

MarshalJSON marshals the AccessOrderFilesystem to JSON.

func (AccessOrderFilesystem) MarshalProtoJSON

func (x AccessOrderFilesystem) MarshalProtoJSON(s *json.MarshalState)

MarshalProtoJSON marshals the AccessOrderFilesystem to JSON.

func (AccessOrderFilesystem) MarshalProtoText

func (x AccessOrderFilesystem) MarshalProtoText() string

func (AccessOrderFilesystem) MarshalText

func (x AccessOrderFilesystem) MarshalText() ([]byte, error)

MarshalText marshals the AccessOrderFilesystem to text.

func (AccessOrderFilesystem) String

func (x AccessOrderFilesystem) String() string

func (*AccessOrderFilesystem) UnmarshalJSON

func (x *AccessOrderFilesystem) UnmarshalJSON(b []byte) error

UnmarshalJSON unmarshals the AccessOrderFilesystem from JSON.

func (*AccessOrderFilesystem) UnmarshalProtoJSON

func (x *AccessOrderFilesystem) UnmarshalProtoJSON(s *json.UnmarshalState)

UnmarshalProtoJSON unmarshals the AccessOrderFilesystem from JSON.

func (*AccessOrderFilesystem) UnmarshalText

func (x *AccessOrderFilesystem) UnmarshalText(b []byte) error

UnmarshalText unmarshals the AccessOrderFilesystem from text.

type AccessOrderManifestIdentity

type AccessOrderManifestIdentity struct {
	ManifestID      string
	PlatformID      string
	BuildType       string
	ManifestRootRef *block.BlockRef
	ManifestRev     uint64
}

AccessOrderManifestIdentity identifies the manifest a profile was recorded against.

func AccessOrderManifestIdentityFromRecord

func AccessOrderManifestIdentityFromRecord(record *AccessOrderRecord) AccessOrderManifestIdentity

AccessOrderManifestIdentityFromRecord returns the manifest identity stored in record.

func (AccessOrderManifestIdentity) MatchesRecord

func (i AccessOrderManifestIdentity) MatchesRecord(record *AccessOrderRecord) bool

MatchesRecord returns true when record was captured for the same manifest.

type AccessOrderMetadata

type AccessOrderMetadata struct {

	// Key is the metadata key.
	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	// Value is the metadata value.
	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	// contains filtered or unexported fields
}

AccessOrderMetadata stores one build metadata key/value pair.

func (*AccessOrderMetadata) CloneMessageVT

func (*AccessOrderMetadata) CloneVT

func (*AccessOrderMetadata) EqualMessageVT

func (this *AccessOrderMetadata) EqualMessageVT(thatMsg any) bool

func (*AccessOrderMetadata) EqualVT

func (this *AccessOrderMetadata) EqualVT(that *AccessOrderMetadata) bool

func (*AccessOrderMetadata) GetKey

func (x *AccessOrderMetadata) GetKey() string

func (*AccessOrderMetadata) GetValue

func (x *AccessOrderMetadata) GetValue() string

func (*AccessOrderMetadata) MarshalJSON

func (x *AccessOrderMetadata) MarshalJSON() ([]byte, error)

MarshalJSON marshals the AccessOrderMetadata to JSON.

func (*AccessOrderMetadata) MarshalProtoJSON

func (x *AccessOrderMetadata) MarshalProtoJSON(s *json.MarshalState)

MarshalProtoJSON marshals the AccessOrderMetadata message to JSON.

func (*AccessOrderMetadata) MarshalProtoText

func (x *AccessOrderMetadata) MarshalProtoText() string

func (*AccessOrderMetadata) MarshalToSizedBufferVT

func (m *AccessOrderMetadata) MarshalToSizedBufferVT(dAtA []byte) (int, error)

func (*AccessOrderMetadata) MarshalToVT

func (m *AccessOrderMetadata) MarshalToVT(dAtA []byte) (int, error)

func (*AccessOrderMetadata) MarshalVT

func (m *AccessOrderMetadata) MarshalVT() (dAtA []byte, err error)

func (*AccessOrderMetadata) ProtoMessage

func (*AccessOrderMetadata) ProtoMessage()

func (*AccessOrderMetadata) Reset

func (x *AccessOrderMetadata) Reset()

func (*AccessOrderMetadata) SizeVT

func (m *AccessOrderMetadata) SizeVT() (n int)

func (*AccessOrderMetadata) String

func (x *AccessOrderMetadata) String() string

func (*AccessOrderMetadata) UnmarshalJSON

func (x *AccessOrderMetadata) UnmarshalJSON(b []byte) error

UnmarshalJSON unmarshals the AccessOrderMetadata from JSON.

func (*AccessOrderMetadata) UnmarshalProtoJSON

func (x *AccessOrderMetadata) UnmarshalProtoJSON(s *json.UnmarshalState)

UnmarshalProtoJSON unmarshals the AccessOrderMetadata message from JSON.

func (*AccessOrderMetadata) UnmarshalVT

func (m *AccessOrderMetadata) UnmarshalVT(dAtA []byte) error

type AccessOrderPathResolver

type AccessOrderPathResolver interface {
	ResolveAccessOrderPath(ctx context.Context, filesystem AccessOrderFilesystem, path string) ([]*block.BlockRef, bool, error)
}

AccessOrderPathResolver resolves a manifest file path to current block refs.

type AccessOrderPathResolverFunc

type AccessOrderPathResolverFunc func(ctx context.Context, filesystem AccessOrderFilesystem, path string) ([]*block.BlockRef, bool, error)

AccessOrderPathResolverFunc adapts a function into an AccessOrderPathResolver.

func (AccessOrderPathResolverFunc) ResolveAccessOrderPath

func (f AccessOrderPathResolverFunc) ResolveAccessOrderPath(ctx context.Context, filesystem AccessOrderFilesystem, path string) ([]*block.BlockRef, bool, error)

ResolveAccessOrderPath resolves a manifest file path to current block refs.

type AccessOrderReason

type AccessOrderReason int32

AccessOrderReason identifies why a path was recorded.

const (
	// ACCESS_ORDER_REASON_UNKNOWN indicates no reason was recorded.
	AccessOrderReason_ACCESS_ORDER_REASON_UNKNOWN AccessOrderReason = 0
	// ACCESS_ORDER_REASON_ENTRYPOINT identifies the startup entrypoint file.
	AccessOrderReason_ACCESS_ORDER_REASON_ENTRYPOINT AccessOrderReason = 1
	// ACCESS_ORDER_REASON_DYNAMIC_IMPORT identifies a dynamic import edge.
	AccessOrderReason_ACCESS_ORDER_REASON_DYNAMIC_IMPORT AccessOrderReason = 2
	// ACCESS_ORDER_REASON_ASSET identifies an asset file access.
	AccessOrderReason_ACCESS_ORDER_REASON_ASSET AccessOrderReason = 3
)

func (AccessOrderReason) Enum

func (AccessOrderReason) MarshalJSON

func (x AccessOrderReason) MarshalJSON() ([]byte, error)

MarshalJSON marshals the AccessOrderReason to JSON.

func (AccessOrderReason) MarshalProtoJSON

func (x AccessOrderReason) MarshalProtoJSON(s *json.MarshalState)

MarshalProtoJSON marshals the AccessOrderReason to JSON.

func (AccessOrderReason) MarshalProtoText

func (x AccessOrderReason) MarshalProtoText() string

func (AccessOrderReason) MarshalText

func (x AccessOrderReason) MarshalText() ([]byte, error)

MarshalText marshals the AccessOrderReason to text.

func (AccessOrderReason) String

func (x AccessOrderReason) String() string

func (*AccessOrderReason) UnmarshalJSON

func (x *AccessOrderReason) UnmarshalJSON(b []byte) error

UnmarshalJSON unmarshals the AccessOrderReason from JSON.

func (*AccessOrderReason) UnmarshalProtoJSON

func (x *AccessOrderReason) UnmarshalProtoJSON(s *json.UnmarshalState)

UnmarshalProtoJSON unmarshals the AccessOrderReason from JSON.

func (*AccessOrderReason) UnmarshalText

func (x *AccessOrderReason) UnmarshalText(b []byte) error

UnmarshalText unmarshals the AccessOrderReason from text.

type AccessOrderRecord

type AccessOrderRecord struct {

	// ManifestId is the manifest id the profile was recorded for.
	ManifestId string `protobuf:"bytes,1,opt,name=manifest_id,json=manifestId,proto3" json:"manifestId,omitempty"`
	// PlatformId is the manifest platform id the profile was recorded for.
	PlatformId string `protobuf:"bytes,2,opt,name=platform_id,json=platformId,proto3" json:"platformId,omitempty"`
	// BuildType is the manifest build type the profile was recorded for.
	BuildType string `protobuf:"bytes,3,opt,name=build_type,json=buildType,proto3" json:"buildType,omitempty"`
	// ManifestRootRef is the manifest root ref the profile was recorded against.
	ManifestRootRef *block.BlockRef `protobuf:"bytes,4,opt,name=manifest_root_ref,json=manifestRootRef,proto3" json:"manifestRootRef,omitempty"`
	// ManifestRev is the manifest revision the profile was recorded against.
	ManifestRev uint64 `protobuf:"varint,5,opt,name=manifest_rev,json=manifestRev,proto3" json:"manifestRev,omitempty"`
	// GenerationId identifies the profiling run or build input that wrote this record.
	GenerationId string `protobuf:"bytes,6,opt,name=generation_id,json=generationId,proto3" json:"generationId,omitempty"`
	// GeneratedAt is when this record was written.
	GeneratedAt *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=generated_at,json=generatedAt,proto3" json:"generatedAt,omitempty"`
	// Entries are ordered file accesses observed during startup profiling.
	Entries []*AccessOrderEntry `protobuf:"bytes,8,rep,name=entries,proto3" json:"entries,omitempty"`
	// BuildMetadata stores optional build metadata attached by the profiling run.
	BuildMetadata []*AccessOrderMetadata `protobuf:"bytes,9,rep,name=build_metadata,json=buildMetadata,proto3" json:"buildMetadata,omitempty"`
	// contains filtered or unexported fields
}

AccessOrderRecord stores profile-guided manifest startup file access order.

func DecodeAccessOrderRecord

func DecodeAccessOrderRecord(r io.Reader) (*AccessOrderRecord, error)

DecodeAccessOrderRecord reads protobuf binary data into a record.

func ReadAccessOrderRecordFile

func ReadAccessOrderRecordFile(path string) (*AccessOrderRecord, error)

ReadAccessOrderRecordFile reads path as protobuf binary data.

func (*AccessOrderRecord) CloneMessageVT

func (m *AccessOrderRecord) CloneMessageVT() protobuf_go_lite.CloneMessage

func (*AccessOrderRecord) CloneVT

func (m *AccessOrderRecord) CloneVT() *AccessOrderRecord

func (*AccessOrderRecord) EqualMessageVT

func (this *AccessOrderRecord) EqualMessageVT(thatMsg any) bool

func (*AccessOrderRecord) EqualVT

func (this *AccessOrderRecord) EqualVT(that *AccessOrderRecord) bool

func (*AccessOrderRecord) GetBuildMetadata

func (x *AccessOrderRecord) GetBuildMetadata() []*AccessOrderMetadata

func (*AccessOrderRecord) GetBuildType

func (x *AccessOrderRecord) GetBuildType() string

func (*AccessOrderRecord) GetEntries

func (x *AccessOrderRecord) GetEntries() []*AccessOrderEntry

func (*AccessOrderRecord) GetGeneratedAt

func (x *AccessOrderRecord) GetGeneratedAt() *timestamppb.Timestamp

func (*AccessOrderRecord) GetGenerationId

func (x *AccessOrderRecord) GetGenerationId() string

func (*AccessOrderRecord) GetManifestId

func (x *AccessOrderRecord) GetManifestId() string

func (*AccessOrderRecord) GetManifestRev

func (x *AccessOrderRecord) GetManifestRev() uint64

func (*AccessOrderRecord) GetManifestRootRef

func (x *AccessOrderRecord) GetManifestRootRef() *block.BlockRef

func (*AccessOrderRecord) GetPlatformId

func (x *AccessOrderRecord) GetPlatformId() string

func (*AccessOrderRecord) MarshalJSON

func (x *AccessOrderRecord) MarshalJSON() ([]byte, error)

MarshalJSON marshals the AccessOrderRecord to JSON.

func (*AccessOrderRecord) MarshalProtoJSON

func (x *AccessOrderRecord) MarshalProtoJSON(s *json.MarshalState)

MarshalProtoJSON marshals the AccessOrderRecord message to JSON.

func (*AccessOrderRecord) MarshalProtoText

func (x *AccessOrderRecord) MarshalProtoText() string

func (*AccessOrderRecord) MarshalToSizedBufferVT

func (m *AccessOrderRecord) MarshalToSizedBufferVT(dAtA []byte) (int, error)

func (*AccessOrderRecord) MarshalToVT

func (m *AccessOrderRecord) MarshalToVT(dAtA []byte) (int, error)

func (*AccessOrderRecord) MarshalVT

func (m *AccessOrderRecord) MarshalVT() (dAtA []byte, err error)

func (*AccessOrderRecord) ProtoMessage

func (*AccessOrderRecord) ProtoMessage()

func (*AccessOrderRecord) Reset

func (x *AccessOrderRecord) Reset()

func (*AccessOrderRecord) SizeVT

func (m *AccessOrderRecord) SizeVT() (n int)

func (*AccessOrderRecord) String

func (x *AccessOrderRecord) String() string

func (*AccessOrderRecord) UnmarshalJSON

func (x *AccessOrderRecord) UnmarshalJSON(b []byte) error

UnmarshalJSON unmarshals the AccessOrderRecord from JSON.

func (*AccessOrderRecord) UnmarshalProtoJSON

func (x *AccessOrderRecord) UnmarshalProtoJSON(s *json.UnmarshalState)

UnmarshalProtoJSON unmarshals the AccessOrderRecord message from JSON.

func (*AccessOrderRecord) UnmarshalVT

func (m *AccessOrderRecord) UnmarshalVT(dAtA []byte) error

type AccessOrderReplayResult

type AccessOrderReplayResult struct {
	// Refs is the final ordered ref list.
	Refs []*block.BlockRef
	// StaleRecord indicates manifest metadata or profiled paths did not match.
	StaleRecord bool
	// UsedEntries is the number of record entries that contributed at least one ref.
	UsedEntries int
	// MissingPaths are record paths that could not be resolved in the current manifest.
	MissingPaths []string
	// MissingRefs are resolved refs that were not present in the candidate set.
	MissingRefs []*block.BlockRef
}

AccessOrderReplayResult describes profile-guided replay output.

func ReplayAccessOrderRecord

func ReplayAccessOrderRecord(
	ctx context.Context,
	graph RefGraph,
	identity AccessOrderManifestIdentity,
	record *AccessOrderRecord,
	refs []*block.BlockRef,
	resolver AccessOrderPathResolver,
) (*AccessOrderReplayResult, error)

ReplayAccessOrderRecord orders refs by record file access, then graph fallback.

func ReplayAccessOrderRecordWithFallback

func ReplayAccessOrderRecordWithFallback(
	ctx context.Context,
	identity AccessOrderManifestIdentity,
	record *AccessOrderRecord,
	refs []*block.BlockRef,
	resolver AccessOrderPathResolver,
) (*AccessOrderReplayResult, error)

ReplayAccessOrderRecordWithFallback puts recorded reads first and retains the caller's structural order for all other blocks. Each nonempty identity is emitted once; the input order is also used when the record is stale.

type Graph

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

Graph orders a pack's available blocks by their structural relationships. Child order is supplied by the producer; unavailable children are ignored. It holds references, not block data, and is not concurrency safe.

func NewGraph

func NewGraph() *Graph

NewGraph constructs an empty pack ordering graph.

func (*Graph) Add

func (g *Graph) Add(ref *block.BlockRef, children []*block.BlockRef)

Add records a block and replaces its outgoing edges with the supplied order. Empty references are ignored. The graph owns copies of retained references.

func (*Graph) Order

func (g *Graph) Order(ctx context.Context, roots []*block.BlockRef) ([]*block.BlockRef, error)

Order emits each available block once in depth-first child order. Explicit roots take precedence, followed by roots in the available graph. Unconnected roots and remaining cycles use stable hash order. Missing external parents do not prevent their available subtrees from being grouped.

type RefGraph

type RefGraph interface {
	// GetOutgoingRefs returns all gc/ref targets from a node.
	GetOutgoingRefs(ctx context.Context, node string) ([]string, error)
	// GetIncomingRefs returns all gc/ref sources for a node.
	GetIncomingRefs(ctx context.Context, node string) ([]string, error)
}

RefGraph is the GC graph surface required for pack locality ordering.

Jump to

Keyboard shortcuts

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