vocab

package
v0.2.0 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

Capabilities lists every capability in vocabulary order.

CapabilityLayer maps every capability to its layer.

View Source
var Enums = map[string][]string{
	"maturity":          {"stable", "speculative"},
	"resolution":        {"syntactic", "type_informed", "unresolved"},
	"dependency_scope":  {"runtime", "dev", "peer", "explicit"},
	"provenance":        {"declared", "derived", "declared_external"},
	"discipline":        {"nominal", "structural"},
	"mechanism":         {"inheritance", "implements", "embedding", "satisfaction", "register", "protocol"},
	"type_form":         {"class", "struct", "interface", "protocol", "enum", "alias", "trait"},
	"visibility":        {"public", "private_convention", "unexported"},
	"entry_point_form":  {"script", "export", "bin", "main_package", "gui_script"},
	"export_form":       {"declared_all", "relative_import", "reexport", "manifest"},
	"reference_context": {"parameter", "return", "annotation", "body"},
	"endpoint_protocol": {"http", "rpc", "cli", "other"},
	"db_entity_form":    {"table", "collection", "schema", "view"},
	"capability_status": {"supported", "planned", "not-applicable"},
}

Enums carries every vocabulary enum and its legal values.

View Source
var Langs = []Lang{LangPy, LangGo, LangTS}

Langs lists the language trio in matrix column order.

View Source
var NodeKindInfo = map[NodeKind]NodeKindDecl{
	NodeKindWorkspaceMember: {
		Maturity: MaturityStable,
		Attrs: []AttrDecl{
			{Name: "member_name", Type: AttrString},
			{Name: "registry_name", Type: AttrString},
			{Name: "is_library", Type: AttrBool},
			{Name: "is_dev_only", Type: AttrBool},
			{Name: "root_path", Type: AttrString},
		},
	},
	NodeKindModule: {
		Maturity: MaturityStable,
		Attrs: []AttrDecl{
			{Name: "logical_name", Type: AttrString},
			{Name: "path", Type: AttrString},
			{Name: "test_context", Type: AttrBool},
		},
	},
	NodeKindEntryPoint: {
		Maturity: MaturityStable,
		Attrs: []AttrDecl{
			{Name: "form", Type: AttrEnum, Enum: "entry_point_form"},
			{Name: "declared_name", Type: AttrString},
		},
	},
	NodeKindFunction: {
		Maturity: MaturityStable,
		Attrs: []AttrDecl{
			{Name: "visibility", Type: AttrEnum, Enum: "visibility"},
			{Name: "is_method", Type: AttrBool},
			{Name: "is_async", Type: AttrBool},
			{Name: "is_test", Type: AttrBool},
		},
	},
	NodeKindClosure: {
		Maturity: MaturityStable,
		Attrs: []AttrDecl{
			{Name: "name_hint", Type: AttrString},
			{Name: "ordinal", Type: AttrInt},
			{Name: "fingerprint", Type: AttrString},
		},
	},
	NodeKindType: {
		Maturity: MaturityStable,
		Attrs: []AttrDecl{
			{Name: "form", Type: AttrEnum, Enum: "type_form"},
			{Name: "visibility", Type: AttrEnum, Enum: "visibility"},
		},
	},
	NodeKindTypeParam: {
		Maturity: MaturitySpeculative,
		Attrs: []AttrDecl{
			{Name: "param_name", Type: AttrString},
		},
	},
	NodeKindVariable: {
		Maturity: MaturitySpeculative,
		Attrs: []AttrDecl{
			{Name: "is_constant", Type: AttrBool},
			{Name: "visibility", Type: AttrEnum, Enum: "visibility"},
		},
	},
	NodeKindEndpoint: {
		Maturity: MaturitySpeculative,
		Attrs: []AttrDecl{
			{Name: "route", Type: AttrString},
			{Name: "protocol", Type: AttrEnum, Enum: "endpoint_protocol"},
		},
	},
	NodeKindDbEntity: {
		Maturity: MaturitySpeculative,
		Attrs: []AttrDecl{
			{Name: "entity_name", Type: AttrString},
			{Name: "form", Type: AttrEnum, Enum: "db_entity_form"},
		},
	},
}

NodeKindInfo carries the vocabulary declaration for every node kind.

NodeKinds lists every node kind in vocabulary order.

View Source
var Profiles = map[Lang]Profile{
	LangPy: {
		DisplayName: "Python",
		Grammar:     "tree-sitter-python",
		Capabilities: map[Capability]ProfileCapability{
			CapModuleEnumeration:            {Status: StatusSupported},
			CapImportExtraction:             {Status: StatusSupported},
			CapResolveImportsInternal:       {Status: StatusSupported},
			CapResolveImportsModules:        {Status: StatusSupported},
			CapImportAttrGuarded:            {Status: StatusSupported},
			CapImportAttrTypeChecking:       {Status: StatusSupported},
			CapTestContextClassification:    {Status: StatusSupported},
			CapEntryPointDiscovery:          {Status: StatusSupported},
			CapDeclaredDependencyExtraction: {Status: StatusSupported},
			CapExportExtraction:             {Status: StatusSupported},
			CapCallableExtraction:           {Status: StatusSupported},
			CapTypeExtraction:               {Status: StatusSupported},
			CapCallResolutionSyntactic:      {Status: StatusSupported},
			CapCallResolutionTypeInformed:   {Status: StatusPlanned},
			CapConformanceDeclared:          {Status: StatusSupported},
			CapConformanceDerived:           {Status: StatusPlanned},
			CapInstantiationExtraction:      {Status: StatusSupported},
			CapReferenceExtraction:          {Status: StatusPlanned},
			CapDecorationExtraction:         {Status: StatusSupported},
			CapUnreachableStatementAnalysis: {Status: StatusSupported},
			CapEndpointDiscovery:            {Status: StatusPlanned},
			CapDbEntityDiscovery:            {Status: StatusPlanned},
		},
	},
	LangGo: {
		DisplayName: "Go",
		Grammar:     "tree-sitter-go",
		Capabilities: map[Capability]ProfileCapability{
			CapModuleEnumeration:            {Status: StatusSupported},
			CapImportExtraction:             {Status: StatusSupported},
			CapResolveImportsInternal:       {Status: StatusSupported},
			CapResolveImportsModules:        {Status: StatusSupported},
			CapImportAttrGuarded:            {Status: StatusNotApplicable, Reason: "Go has no optional-import construct; every import is unconditional and required at compile time."},
			CapImportAttrTypeChecking:       {Status: StatusNotApplicable, Reason: "Go has no type-only import form; all imports are ordinary compile-time dependencies."},
			CapTestContextClassification:    {Status: StatusSupported},
			CapEntryPointDiscovery:          {Status: StatusSupported},
			CapDeclaredDependencyExtraction: {Status: StatusSupported},
			CapExportExtraction:             {Status: StatusPlanned},
			CapCallableExtraction:           {Status: StatusPlanned},
			CapTypeExtraction:               {Status: StatusPlanned},
			CapCallResolutionSyntactic:      {Status: StatusPlanned},
			CapCallResolutionTypeInformed:   {Status: StatusNotApplicable, Reason: "Go is statically typed; syntactic resolution over the package symbol table already has type information — there is no external-type-checker mode to opt into."},
			CapConformanceDeclared:          {Status: StatusPlanned},
			CapConformanceDerived:           {Status: StatusPlanned},
			CapInstantiationExtraction:      {Status: StatusPlanned},
			CapReferenceExtraction:          {Status: StatusPlanned},
			CapDecorationExtraction:         {Status: StatusNotApplicable, Reason: "Go has no decorator or annotation construct."},
			CapUnreachableStatementAnalysis: {Status: StatusNotApplicable, Reason: "go vet reports unreachable code natively; strictcode does not reimplement it."},
			CapEndpointDiscovery:            {Status: StatusPlanned},
			CapDbEntityDiscovery:            {Status: StatusPlanned},
		},
	},
	LangTS: {
		DisplayName: "TypeScript/JavaScript",
		Grammar:     "tree-sitter-typescript",
		Capabilities: map[Capability]ProfileCapability{
			CapModuleEnumeration:            {Status: StatusSupported},
			CapImportExtraction:             {Status: StatusSupported},
			CapResolveImportsInternal:       {Status: StatusSupported},
			CapResolveImportsModules:        {Status: StatusSupported},
			CapImportAttrGuarded:            {Status: StatusNotApplicable, Reason: "No declared optional-dependency import construct; a try/catch around dynamic import() is control flow, not an optionality declaration."},
			CapImportAttrTypeChecking:       {Status: StatusSupported},
			CapTestContextClassification:    {Status: StatusSupported},
			CapEntryPointDiscovery:          {Status: StatusSupported},
			CapDeclaredDependencyExtraction: {Status: StatusSupported},
			CapExportExtraction:             {Status: StatusSupported},
			CapCallableExtraction:           {Status: StatusPlanned},
			CapTypeExtraction:               {Status: StatusPlanned},
			CapCallResolutionSyntactic:      {Status: StatusPlanned},
			CapCallResolutionTypeInformed:   {Status: StatusPlanned},
			CapConformanceDeclared:          {Status: StatusPlanned},
			CapConformanceDerived:           {Status: StatusPlanned},
			CapInstantiationExtraction:      {Status: StatusPlanned},
			CapReferenceExtraction:          {Status: StatusPlanned},
			CapDecorationExtraction:         {Status: StatusPlanned},
			CapUnreachableStatementAnalysis: {Status: StatusPlanned},
			CapEndpointDiscovery:            {Status: StatusPlanned},
			CapDbEntityDiscovery:            {Status: StatusPlanned},
		},
	},
}

Profiles carries the language profiles from schema/profiles/.

View Source
var RowKindInfo = map[RowKind]RowKindDecl{
	RowKindImports: {
		Maturity: MaturityStable,
		SrcKinds: []NodeKind{NodeKindModule},
		DstKinds: []NodeKind{NodeKindModule, NodeKindWorkspaceMember},
		Attrs: []AttrDecl{
			{Name: "test_context", Type: AttrBool},
			{Name: "guarded", Type: AttrBool},
			{Name: "type_checking", Type: AttrBool},
		},
	},
	RowKindDeclaresDependency: {
		Maturity: MaturityStable,
		SrcKinds: []NodeKind{NodeKindWorkspaceMember},
		DstKinds: []NodeKind{NodeKindWorkspaceMember},
		Attrs: []AttrDecl{
			{Name: "scope", Type: AttrEnum, Enum: "dependency_scope"},
		},
	},
	RowKindExports: {
		Maturity: MaturityStable,
		SrcKinds: []NodeKind{NodeKindModule},
		DstKinds: []NodeKind{NodeKindModule, NodeKindFunction, NodeKindType, NodeKindVariable},
		Attrs: []AttrDecl{
			{Name: "form", Type: AttrEnum, Enum: "export_form"},
		},
	},
	RowKindResolvesTo: {
		Maturity: MaturityStable,
		SrcKinds: []NodeKind{NodeKindEntryPoint},
		DstKinds: []NodeKind{NodeKindModule, NodeKindFunction},
	},
	RowKindContains: {
		Maturity: MaturityStable,
		SrcKinds: []NodeKind{NodeKindModule, NodeKindType, NodeKindFunction},
		DstKinds: []NodeKind{NodeKindFunction, NodeKindClosure, NodeKindType, NodeKindVariable, NodeKindTypeParam},
	},
	RowKindCalls: {
		Maturity: MaturityStable,
		SrcKinds: []NodeKind{NodeKindFunction, NodeKindClosure},
		DstKinds: []NodeKind{NodeKindFunction, NodeKindClosure},
		Attrs: []AttrDecl{
			{Name: "resolution", Type: AttrEnum, Enum: "resolution"},
		},
	},
	RowKindInstantiates: {
		Maturity: MaturityStable,
		SrcKinds: []NodeKind{NodeKindFunction, NodeKindClosure},
		DstKinds: []NodeKind{NodeKindType},
	},
	RowKindReferences: {
		Maturity: MaturityStable,
		SrcKinds: []NodeKind{NodeKindFunction, NodeKindClosure, NodeKindType, NodeKindVariable},
		DstKinds: []NodeKind{NodeKindType},
		Attrs: []AttrDecl{
			{Name: "context", Type: AttrEnum, Enum: "reference_context"},
		},
	},
	RowKindConformsTo: {
		Maturity: MaturityStable,
		SrcKinds: []NodeKind{NodeKindType},
		DstKinds: []NodeKind{NodeKindType},
		Attrs: []AttrDecl{
			{Name: "provenance", Type: AttrEnum, Enum: "provenance"},
			{Name: "discipline", Type: AttrEnum, Enum: "discipline"},
			{Name: "mechanism", Type: AttrEnum, Enum: "mechanism"},
		},
	},
	RowKindDecorates: {
		Maturity: MaturitySpeculative,
		SrcKinds: []NodeKind{NodeKindFunction},
		DstKinds: []NodeKind{NodeKindFunction, NodeKindType},
	},
	RowKindValidates: {
		Maturity: MaturitySpeculative,
		SrcKinds: []NodeKind{NodeKindFunction},
		DstKinds: []NodeKind{NodeKindFunction, NodeKindType, NodeKindModule},
	},
	RowKindAccesses: {
		Maturity: MaturitySpeculative,
		SrcKinds: []NodeKind{NodeKindFunction, NodeKindClosure},
		DstKinds: []NodeKind{NodeKindVariable},
		Attrs: []AttrDecl{
			{Name: "writes", Type: AttrBool},
		},
	},
	RowKindHandledBy: {
		Maturity: MaturitySpeculative,
		SrcKinds: []NodeKind{NodeKindEndpoint},
		DstKinds: []NodeKind{NodeKindFunction},
	},
	RowKindPersistsTo: {
		Maturity: MaturitySpeculative,
		SrcKinds: []NodeKind{NodeKindFunction, NodeKindType},
		DstKinds: []NodeKind{NodeKindDbEntity},
	},
}

RowKindInfo carries the vocabulary declaration for every row kind.

RowKinds lists every row kind in vocabulary order.

Functions

This section is empty.

Types

type AttrDecl

type AttrDecl struct {
	Name string
	Type AttrType
	Enum string
}

AttrDecl declares one typed attribute of a node kind or row kind. For AttrEnum, Enum names the vocabulary enum carrying the legal values.

type AttrType

type AttrType int

AttrType is the type of a declared attribute.

const (
	AttrString AttrType = iota
	AttrBool
	AttrInt
	AttrEnum
)

type Capability

type Capability string

Capability is a fine-grained extraction capability identifier.

const (
	CapModuleEnumeration            Capability = "module-enumeration"
	CapImportExtraction             Capability = "import-extraction"
	CapResolveImportsInternal       Capability = "resolve-imports-internal"
	CapResolveImportsModules        Capability = "resolve-imports-modules"
	CapImportAttrGuarded            Capability = "import-attr-guarded"
	CapImportAttrTypeChecking       Capability = "import-attr-type-checking"
	CapTestContextClassification    Capability = "test-context-classification"
	CapEntryPointDiscovery          Capability = "entry-point-discovery"
	CapDeclaredDependencyExtraction Capability = "declared-dependency-extraction"
	CapExportExtraction             Capability = "export-extraction"
	CapCallableExtraction           Capability = "callable-extraction"
	CapTypeExtraction               Capability = "type-extraction"
	CapCallResolutionSyntactic      Capability = "call-resolution-syntactic"
	CapCallResolutionTypeInformed   Capability = "call-resolution-type-informed"
	CapConformanceDeclared          Capability = "conformance-declared"
	CapConformanceDerived           Capability = "conformance-derived"
	CapInstantiationExtraction      Capability = "instantiation-extraction"
	CapReferenceExtraction          Capability = "reference-extraction"
	CapDecorationExtraction         Capability = "decoration-extraction"
	CapUnreachableStatementAnalysis Capability = "unreachable-statement-analysis"
	CapEndpointDiscovery            Capability = "endpoint-discovery"
	CapDbEntityDiscovery            Capability = "db-entity-discovery"
)

type CapabilityStatus

type CapabilityStatus string

CapabilityStatus is a profile's declared status for one capability.

const (
	StatusSupported     CapabilityStatus = "supported"
	StatusPlanned       CapabilityStatus = "planned"
	StatusNotApplicable CapabilityStatus = "not-applicable"
)

type Lang

type Lang string

Lang is a profile language code (one column of the matrix).

const (
	LangPy Lang = "py"
	LangGo Lang = "go"
	LangTS Lang = "ts"
)

type Layer

type Layer string

Layer is a named capability bundle.

const (
	LayerImportGraph       Layer = "import-graph"
	LayerFullSemanticGraph Layer = "full-semantic-graph"
	LayerBoundaryGraph     Layer = "boundary-graph"
)

type Maturity

type Maturity string

Maturity is the vocabulary maturity marker.

const (
	MaturityStable      Maturity = "stable"
	MaturitySpeculative Maturity = "speculative"
)

type NodeKind

type NodeKind string

NodeKind is a vocabulary node kind identifier.

const (
	NodeKindWorkspaceMember NodeKind = "workspace_member"
	NodeKindModule          NodeKind = "module"
	NodeKindEntryPoint      NodeKind = "entry_point"
	NodeKindFunction        NodeKind = "function"
	NodeKindClosure         NodeKind = "closure"
	NodeKindType            NodeKind = "type"
	NodeKindTypeParam       NodeKind = "type_param"
	NodeKindVariable        NodeKind = "variable"
	NodeKindEndpoint        NodeKind = "endpoint"
	NodeKindDbEntity        NodeKind = "db_entity"
)

type NodeKindDecl

type NodeKindDecl struct {
	Maturity Maturity
	Attrs    []AttrDecl
}

NodeKindDecl is the vocabulary declaration of a node kind.

type Profile

type Profile struct {
	DisplayName  string
	Grammar      string
	Capabilities map[Capability]ProfileCapability
}

Profile is a language profile: display identity plus per-capability status.

type ProfileCapability

type ProfileCapability struct {
	Status CapabilityStatus
	Reason string
}

ProfileCapability is a capability status plus the mandatory reason when the status is not-applicable.

type RowKind

type RowKind string

RowKind is a vocabulary interaction-row kind identifier.

const (
	RowKindImports            RowKind = "imports"
	RowKindDeclaresDependency RowKind = "declares_dependency"
	RowKindExports            RowKind = "exports"
	RowKindResolvesTo         RowKind = "resolves_to"
	RowKindContains           RowKind = "contains"
	RowKindCalls              RowKind = "calls"
	RowKindInstantiates       RowKind = "instantiates"
	RowKindReferences         RowKind = "references"
	RowKindConformsTo         RowKind = "conforms_to"
	RowKindDecorates          RowKind = "decorates"
	RowKindValidates          RowKind = "validates"
	RowKindAccesses           RowKind = "accesses"
	RowKindHandledBy          RowKind = "handled_by"
	RowKindPersistsTo         RowKind = "persists_to"
)

type RowKindDecl

type RowKindDecl struct {
	Maturity Maturity
	SrcKinds []NodeKind
	DstKinds []NodeKind
	Attrs    []AttrDecl
}

RowKindDecl is the vocabulary declaration of a row kind.

Directories

Path Synopsis
Package gen generates the Go vocabulary constants (internal/vocab) from schema/vocabulary.toml and schema/profiles/*.toml.
Package gen generates the Go vocabulary constants (internal/vocab) from schema/vocabulary.toml and schema/profiles/*.toml.

Jump to

Keyboard shortcuts

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