UNPKG

@jahed/sparql-engine

Version:

SPARQL query engine for servers and web browsers.

19 lines (18 loc) 702 B
import type { Bindings } from "../../rdf/bindings.ts"; import Dataset from "../../rdf/dataset.ts"; import type { PipelineStage } from "../pipeline/pipeline-engine.ts"; import { PlanBuilder } from "../plan-builder.ts"; /** * A StageBuilder encapsulate a strategy for executing a class of SPARQL operations * @abstract */ export default abstract class StageBuilder { protected _builder: PlanBuilder | null; protected _dataset: Dataset; constructor(dataset: Dataset); get builder(): PlanBuilder | null; set builder(builder: PlanBuilder | null); get dataset(): Dataset; set dataset(dataset: Dataset); abstract execute(...args: any[]): Promise<PipelineStage<Bindings>>; }