UNPKG

pddl-workspace

Version:
82 lines (81 loc) 3 kB
import { PddlRange, DocumentPositionResolver } from "./DocumentPositionResolver"; import { PddlBracketNode, PddlSyntaxNode } from "./parser/PddlSyntaxNode"; import { PddlSyntaxTree } from "./parser/PddlSyntaxTree"; import { FileStatus, PddlLanguage, Variable } from "./language"; import { URI } from "vscode-uri"; import { Compilations } from "./Compilations"; export declare function stripComments(pddlText: string): string; /** * An abstract PDDL file. */ export declare abstract class FileInfo { readonly fileUri: URI; private version; readonly name: string; readonly syntaxTree: PddlSyntaxTree; private readonly positionResolver; private text?; private status; private parsingProblems; private requirements?; private requirementsNode; private readonly compilations; constructor(fileUri: URI, version: number, name: string, syntaxTree: PddlSyntaxTree, positionResolver: DocumentPositionResolver); abstract getLanguage(): PddlLanguage; getVersion(): number; getText(): string; setText(text: string): void; getCompiledText(): string; isDomain(): boolean; isProblem(): boolean; isUnknownPddl(): boolean; isPlan(): boolean; isHappenings(): boolean; update(version: number, text: string, force?: boolean): boolean; setStatus(status: FileStatus): void; getStatus(): FileStatus; /** * Adds a parsing problem. * @param parsingProblem parsing problems */ addProblem(parsingProblem: ParsingProblem): void; /** * Adds list of parsing problems. * @param parsingProblems parsing problems */ addProblems(parsingProblems: ParsingProblem[]): void; getParsingProblems(): ParsingProblem[]; getVariableReferences(variable: Variable): PddlRange[]; private isVariableReference; getTypeReferences(typeName: string): PddlRange[]; protected getRange(node: PddlSyntaxNode): PddlRange; setRequirements(requirements: string[], node?: PddlBracketNode): void; getRequirements(): string[]; getRequirementsNode(): PddlBracketNode | undefined; getDocumentPositionResolver(): DocumentPositionResolver; /** * @returns code injections, code replacements */ getCompilations(): Compilations; } export type ParsingProblemSeverity = "error" | "warning" | "info" | "hint"; /** * Parsing problem. */ export declare class ParsingProblem { readonly problem: string; readonly severity: ParsingProblemSeverity; readonly range: PddlRange; /** * Constructs parsing problem. * @param problem problem description to display * @param severity problem severity * @param range range where the problem is */ constructor(problem: string, severity: ParsingProblemSeverity, range: PddlRange); } export declare class UnknownFileInfo extends FileInfo { constructor(fileUri: URI, version: number, positionResolver: DocumentPositionResolver); getLanguage(): PddlLanguage; isUnknownPddl(): boolean; }