Interface: CanonicalProgram¶
Defined in: core/src/types/ast.ts:700
Immutable canonical program. Legacy collection fields are derived projections.
Extends¶
Properties¶
blocks¶
readonlyblocks: readonlyCanonicalBlock[]
Defined in: core/src/types/ast.ts:705
extends¶
readonlyextends: readonlyCanonicalExtendBlock[]
Defined in: core/src/types/ast.ts:706
inherit?¶
readonlyoptionalinherit?:object
Defined in: core/src/types/ast.ts:703
loc¶
readonlyloc:object
Source location
loc.column¶
readonlycolumn:number
Column number (1-indexed)
loc.file¶
readonlyfile:string
File path
loc.line¶
readonlyline:number
Line number (1-indexed)
loc.offset?¶
readonlyoptionaloffset?:number
Byte offset from start of file
params?¶
readonlyoptionalparams?: readonlyobject[]
Template parameters (for parameterized inheritance)
path¶
readonlypath:object
Path to parent file
path.isRelative¶
readonlyisRelative:boolean
Whether this is a relative path
path.loc¶
readonlyloc:object
Source location
path.loc.column¶
readonlycolumn:number
Column number (1-indexed)
path.loc.file¶
readonlyfile:string
File path
path.loc.line¶
readonlyline:number
Line number (1-indexed)
path.loc.offset?¶
readonlyoptionaloffset?:number
Byte offset from start of file
path.namespace?¶
readonlyoptionalnamespace?:string
Namespace (e.g., "core" from "@core/...")
path.raw¶
readonlyraw:string
Original string representation
path.segments¶
readonlysegments: readonlystring[]
Path segments
path.type¶
readonlytype:"PathReference"
Node type discriminator
path.version?¶
readonlyoptionalversion?:string
Version constraint
type¶
readonlytype:"InheritDeclaration"
Node type discriminator
loc¶
readonlyloc:object
Defined in: core/src/types/ast.ts:467
column¶
readonlycolumn:number
Column number (1-indexed)
file¶
readonlyfile:string
File path
line¶
readonlyline:number
Line number (1-indexed)
offset?¶
readonlyoptionaloffset?:number
Byte offset from start of file
Inherited from¶
meta?¶
readonlyoptionalmeta?:object
Defined in: core/src/types/ast.ts:702
fields¶
readonlyfields:object
Key-value pairs
Index Signature¶
[key: string]: PrimitiveValue | { constraints?: { max?: number; min?: number; options?: readonly PrimitiveValue | { readonly type: "TypeExpression"; readonly kind: "string" | "number" | "boolean" | "enum" | "range" | "list"; readonly params?: readonly (PrimitiveValue | ... 4 more ... | { ...; })[] | undefined; readonly constraints?: { ...; } | undefined; readonly loc: { ...; }; } | { ...; } | readonly (Primitiv...[]; }; kind: "string" | "number" | "boolean" | "enum" | "range" | "list"; loc: { column: number; file: string; line: number; offset?: number; }; params?: readonly PrimitiveValue | { readonly type: "TypeExpression"; readonly kind: "string" | "number" | "boolean" | "enum" | "range" | "list"; readonly params?: readonly (PrimitiveValue | ... 4 more ... | { ...; })[] | undefined; readonly constraints?: { ...; } | undefined; readonly loc: { ...; }; } | { ...; } | readonly (Primitiv...[]; type: "TypeExpression"; } | { loc: { column: number; file: string; line: number; offset?: number; }; type: "TextContent"; value: string; } | readonly PrimitiveValue | { readonly type: "TypeExpression"; readonly kind: "string" | "number" | "boolean" | "enum" | "range" | "list"; readonly params?: readonly (PrimitiveValue | ... 4 more ... | { ...; })[] | undefined; readonly constraints?: { ...; } | undefined; readonly loc: { ...; }; } | { ...; } | readonly (Primitiv...[] | {[key: string]: PrimitiveValue | { readonly type: "TypeExpression"; readonly kind: "string" | "number" | "boolean" | "enum" | "range" | "list"; readonly params?: readonly (PrimitiveValue | ... 4 more ... | { ...; })[] | undefined; readonly constraints?: { ...; } | undefined; readonly loc: { ...; }; } | { ...; } | readonly (Primitiv...; } | { loc: { column: number; file: string; line: number; offset?: number; }; name: string; type: "TemplateExpression"; }
loc¶
readonlyloc:object
Source location
loc.column¶
readonlycolumn:number
Column number (1-indexed)
loc.file¶
readonlyfile:string
File path
loc.line¶
readonlyline:number
Line number (1-indexed)
loc.offset?¶
readonlyoptionaloffset?:number
Byte offset from start of file
params?¶
readonlyoptionalparams?: readonlyobject[]
Template parameter definitions (for parameterized inheritance)
type¶
readonlytype:"MetaBlock"
Node type discriminator
operations¶
readonlyoperations: readonlyProgramOperation[]
Defined in: core/src/types/ast.ts:709
overrides?¶
readonlyoptionaloverrides?: readonlyCanonicalOverrideBlock[]
Defined in: core/src/types/ast.ts:707
syntaxFeatures?¶
readonlyoptionalsyntaxFeatures?: readonlyobject[]
Defined in: core/src/types/ast.ts:708
type¶
readonlytype:"CanonicalProgram"
Defined in: core/src/types/ast.ts:701
Overrides¶
uses¶
readonlyuses: readonlyobject[]
Defined in: core/src/types/ast.ts:704