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

gdscript

package
v0.2.3 Latest Latest
Warning

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

Go to latest
Published: Oct 3, 2026 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Parser

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

Parser extracts semantic graph nodes and relationships from Godot 4 GDScript source files.

func New

func New() *Parser

func NewWithBindingLoader

func NewWithBindingLoader(loader *protobufbinding.Loader) *Parser

func (*Parser) Language

func (*Parser) Language() string

func (*Parser) Parse

func (p *Parser) Parse(ctx context.Context, input parserapi.Input) (graph.ParseResult, error)

func (*Parser) SemanticAffectedPaths

func (*Parser) SemanticAffectedPaths(_ string, allPaths, changedPaths []string) []string

SemanticAffectedPaths reparses every script under a Godot project whose project.godot changed. SemanticDependencies matches only repository-root paths, and a Godot project can sit in any subdirectory of a monorepo.

func (*Parser) SemanticDependencies

func (*Parser) SemanticDependencies() []string

func (*Parser) SemanticKey

func (p *Parser) SemanticKey(ctx context.Context, input parserapi.Input) (string, error)

SemanticKey makes the owning Godot project, configured HTTP adapters, and generated binding vocabulary part of the incremental cache key. Everything in it but the owning project is repository wide, so it is refined here from the workspace key the caller passes as Input.SemanticKey rather than rebuilt per file: the binding registry is a scan of every schema in the repository, and recomputing it per script made every script wait for one.

func (*Parser) Supports

func (*Parser) Supports(path string) bool

func (*Parser) WorkspaceSemanticEvidenceKey added in v0.2.2

func (*Parser) WorkspaceSemanticEvidenceKey(context.Context, parserapi.Input) (string, error)

WorkspaceSemanticEvidenceKey is a constant because every input to the workspace key above lives in the repository, and the caller only reuses a workspace key while Git proves the repository unchanged.

func (*Parser) WorkspaceSemanticKey added in v0.2.2

func (p *Parser) WorkspaceSemanticKey(ctx context.Context, input parserapi.Input) (string, error)

WorkspaceSemanticKey fingerprints the GDScript facts that belong to the whole repository rather than to one script: the configured HTTP adapters and test bases, and the generated Protobuf binding vocabulary. It is computed once per indexing run, and the scan it performs is the same one the extractors then read from cache.

Jump to

Keyboard shortcuts

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