Package-level declarations
Types
One variable's value in a successful solution, already formatted as display-ready text.
One toolkit-neutral diagnostic (syntax error, solver warning, ...) shown against a document/page.
How serious a Diagnostic is.
Identifies what produced a Diagnostic (see DiagnosticSources for the well-known ones), so DiagnosticState.replaceSource can replace one source's diagnostics without touching another's.
Well-known DiagnosticSources used to keep independently-produced diagnostics from clobbering each other.
Shared font-size bounds for a Prolog source editor's zoom controls (Ctrl/Cmd +/-/0, Ctrl/Cmd + wheel), so every toolkit (ide-swing's RSyntaxTextArea, ide-web's Ace) agrees on how far zooming is allowed to go, instead of each reimplementing its own (previously drifted: 8-48 vs. 8-40) clamp.
Describes one extension-contributed feature tab/panel: where it goes, what it's called, and what solver capabilities a page needs before it's shown.
Where a FeatureDescriptor should appear (region) and its relative priority among others placed there.
One solver flag's current value, already formatted as display-ready text.
One loaded library's contents, already formatted as display-ready text/signatures, for the libraries inspector panel.
One known operator (name, priority, and fixity specifier like "xfx"/"fy"), toolkit-neutral and ready to display or feed into syntax highlighting.
Parser/lexer-backed classification shared by every Prolog-editing frontend (Swing, Compose, Web, ...).
The syntactic role of one token, as classified by a PrologSyntaxAnalyzer for semantic-highlighting.
A general area of the UI a FeaturePlacement can target.
One classified span of source text, ready for a toolkit to render with syntax-highlighting colors.
One outcome of resolving a query, already formatted as display-ready text so a frontend never needs to know about the underlying Term/Solution types.
Everything the inspector panels (operators, flags, libraries, knowledge bases) show about a solver at one point in time, already formatted as display-ready text.
A candidate identifier to offer for auto-completion, derived from already-classified SemanticTokens.
Result of analysing source: its classified tokens and any syntax diagnostics found along the way.
Toolkit-neutral entry point for turning source text into semantic tokens, so a frontend doesn't need to depend on PrologSyntaxAnalyzer directly.
A span of source text from start up to (but not including) endExclusive.
One solver warning, already formatted as a display-ready message and stack trace.
Functions
Human-readable label such as "Timeout: 1 hour 30 minutes", for status displays.
Formats duration back into the compact input format accepted by parseDurationInput.
Renders markdown (CommonMark) as an HTML <body> fragment.
Parses a human-readable duration such as "1h 30m" or "500ms", or "none"/"0" for no limit. Returns null for malformed input, repeated units, or a total exceeding one week.
Ranks identifiers already present in analysis as completion candidates, most recent first.