Documentation
¶
Overview ¶
Package nexssflow adapts github.com/nexssp/lang to Nexss Flow's compiler, AST, bundle registry, subprocess action, and @require mechanism.
Package nexssflow — Flow parser integration.
Index ¶
Constants ¶
const ID = "lang"
ID is the stable @require bundle name.
Variables ¶
var DefineDirective = compiler.Directive{
Name: "lang.define",
Example: `@lang.define "gleam" {
ext: ".gleam"
aliases: ["gleam"]
find: ["gleam run"]
}`,
Handler: handleDefineDirective,
}
DefineDirective registers an interpreter available to the current process.
var RunnerDirective = compiler.Directive{
Name: "lang.runner",
Example: `@lang.runner "python" {
ext: ".py"
aliases: ["py", "python"]
find: ["python3", "python"]
}`,
Handler: handleRunnerDirective,
}
RunnerDirective registers a data-driven runner declared in a Flow source.
Functions ¶
func Bundle ¶
Bundle wires language directives, keyword primaries, preflight validation, runner source modules, and existing conformance fixtures into Flow.
func WithAutoInstallDisabled ¶
WithAutoInstallDisabled is the adapter-level convenience wrapper used by compile/test hosts that must never invoke a package manager.
Types ¶
type LangBlock ¶
type LangBlock struct {
ID string
Version string
Source string
Tag string
SourceFile string
Pos compiler.Position
}
func ParseFileTag ¶
ParseFileTag creates a block backed by a source file. The caller resolves the path relative to the containing .nflow source and provides file contents.