@jahed/sparql-engine
Version:
SPARQL query engine for servers and web browsers.
19 lines (18 loc) • 702 B
TypeScript
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>>;
}