Documentation ¶
Overview ¶
Package xrefs provides a high-performance table-based implementation of the xrefs.Service.
Table format:
decor:<ticket> -> srvpb.FileDecorations docs:<ticket> -> srvpb.Document xrefs:<ticket> -> srvpb.PagedCrossReferences xrefPages:<page_key> -> srvpb.PagedCrossReferences_Page
Index ¶
- func CrossReferencesKey(ticket string) []byte
- func CrossReferencesPageKey(key string) []byte
- func DecorationsKey(ticket string) []byte
- func DocumentationKey(ticket string) []byte
- type SplitTable
- type Table
- func (t *Table) CrossReferences(ctx context.Context, req *xpb.CrossReferencesRequest) (*xpb.CrossReferencesReply, error)
- func (t *Table) Decorations(ctx context.Context, req *xpb.DecorationsRequest) (*xpb.DecorationsReply, error)
- func (t *Table) Documentation(ctx context.Context, req *xpb.DocumentationRequest) (*xpb.DocumentationReply, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CrossReferencesKey ¶ added in v0.0.17
CrossReferencesKey returns the cross-references CombinedTable key for the given node ticket.
func CrossReferencesPageKey ¶ added in v0.0.17
CrossReferencesPageKey returns the cross-references page CombinedTable key for the given key.
func DecorationsKey ¶
DecorationsKey returns the decorations CombinedTable key for the given source location ticket.
func DocumentationKey ¶ added in v0.0.27
DocumentationKey returns the documentation CombinedTable key for the given ticket.
Types ¶
type SplitTable ¶ added in v0.0.9
type SplitTable struct { // Decorations is a table of srvpb.FileDecorations keyed by their source // location tickets. Decorations table.Proto // CrossReferences is a table of srvpb.PagedCrossReferences keyed by their // source node tickets. CrossReferences table.Proto // CrossReferencePages is a table of srvpb.PagedCrossReferences_Pages keyed by // their page keys. CrossReferencePages table.Proto // Documentation is a table of srvpb.Documents keyed by their node ticket. Documentation table.Proto }
SplitTable implements the xrefs Service interface using separate static lookup tables for each API component.
type Table ¶
type Table struct {
// contains filtered or unexported fields
}
Table implements the xrefs Service interface using static lookup tables.
func NewCombinedTable ¶ added in v0.0.9
NewCombinedTable returns a table for the given combined xrefs lookup table. The table's keys are expected to be constructed using only the *Key functions.
func NewSplitTable ¶ added in v0.0.9
func NewSplitTable(c *SplitTable) *Table
NewSplitTable returns a table based on the given serving tables for each API component.
func (*Table) CrossReferences ¶ added in v0.0.25
func (t *Table) CrossReferences(ctx context.Context, req *xpb.CrossReferencesRequest) (*xpb.CrossReferencesReply, error)
CrossReferences implements part of the xrefs.Service interface.
func (*Table) Decorations ¶
func (t *Table) Decorations(ctx context.Context, req *xpb.DecorationsRequest) (*xpb.DecorationsReply, error)
Decorations implements part of the xrefs Service interface.
func (*Table) Documentation ¶ added in v0.0.25
func (t *Table) Documentation(ctx context.Context, req *xpb.DocumentationRequest) (*xpb.DocumentationReply, error)
Documentation implements part of the xrefs Service interface.