writer

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Aug 27, 2020 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Emitter

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

Emitter creates vertex and edge values and passes them to the underlying JSONWriter instance. Use of this struct guarantees that unique identifiers are generated for each constructed element.

func NewEmitter

func NewEmitter(writer JSONWriter) *Emitter

func (*Emitter) EmitContains

func (e *Emitter) EmitContains(outV uint64, inVs []uint64) uint64

func (*Emitter) EmitDefinitionResult

func (e *Emitter) EmitDefinitionResult() uint64

func (*Emitter) EmitDocument

func (e *Emitter) EmitDocument(languageID, path string) uint64

func (*Emitter) EmitHoverResult

func (e *Emitter) EmitHoverResult(contents []protocol.MarkedString) uint64

func (*Emitter) EmitItem

func (e *Emitter) EmitItem(outV uint64, inVs []uint64, docID uint64) uint64

func (*Emitter) EmitItemOfDefinitions

func (e *Emitter) EmitItemOfDefinitions(outV uint64, inVs []uint64, docID uint64) uint64

func (*Emitter) EmitItemOfReferences

func (e *Emitter) EmitItemOfReferences(outV uint64, inVs []uint64, docID uint64) uint64

func (*Emitter) EmitMetaData

func (e *Emitter) EmitMetaData(root string, info protocol.ToolInfo) uint64

func (*Emitter) EmitMoniker

func (e *Emitter) EmitMoniker(kind, scheme, identifier string) uint64

func (*Emitter) EmitMonikerEdge

func (e *Emitter) EmitMonikerEdge(outV, inV uint64) uint64

func (*Emitter) EmitNext

func (e *Emitter) EmitNext(outV, inV uint64) uint64

func (*Emitter) EmitPackageInformation

func (e *Emitter) EmitPackageInformation(packageName, scheme, version string) uint64

func (*Emitter) EmitPackageInformationEdge

func (e *Emitter) EmitPackageInformationEdge(outV, inV uint64) uint64

func (*Emitter) EmitProject

func (e *Emitter) EmitProject(languageID string) uint64

func (*Emitter) EmitRange

func (e *Emitter) EmitRange(start, end protocol.Pos) uint64

func (*Emitter) EmitReferenceResult

func (e *Emitter) EmitReferenceResult() uint64

func (*Emitter) EmitResultSet

func (e *Emitter) EmitResultSet() uint64

func (*Emitter) EmitTextDocumentDefinition

func (e *Emitter) EmitTextDocumentDefinition(outV, inV uint64) uint64

func (*Emitter) EmitTextDocumentHover

func (e *Emitter) EmitTextDocumentHover(outV, inV uint64) uint64

func (*Emitter) EmitTextDocumentReferences

func (e *Emitter) EmitTextDocumentReferences(outV, inV uint64) uint64

func (*Emitter) Flush

func (e *Emitter) Flush() error

func (*Emitter) NumElements

func (e *Emitter) NumElements() uint64

type JSONWriter

type JSONWriter interface {
	// Write emits a single vertex or edge value.
	Write(v interface{})

	// Flush ensures that all elements have been written to the underlying writer.
	Flush() error
}

JSONWriter serializes vertexes and edges into JSON and writes them to an underlying writer as newline-delimited JSON.

func NewJSONWriter

func NewJSONWriter(w io.Writer) JSONWriter

NewJSONWriter creates a new JSONWriter wrapping the given writer.

Jump to

Keyboard shortcuts

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