@jahed/sparql-engine
Version:
SPARQL query engine for servers and web browsers.
22 lines (21 loc) • 1.02 kB
TypeScript
import { Bindings } from "../../rdf/bindings.ts";
import type { EngineTriple } from "../../types.ts";
import type { PipelineStage } from "../pipeline/pipeline-engine.ts";
import type { BasicGraphPattern, BGPCache } from "./types.ts";
/**
* An implementation of a {@link BGPCache} using an {@link AsyncLRUCache}
*/
export declare class LRUBGPCache implements BGPCache {
private readonly _allKeys;
private readonly _patternsPerBGP;
private readonly _cache;
constructor(maxSize: number, ttl: number);
has(bgp: BasicGraphPattern): boolean;
update(bgp: BasicGraphPattern, item: Bindings, writerID: string): void;
get(bgp: BasicGraphPattern): Promise<Bindings[]> | null;
getAsPipeline(bgp: BasicGraphPattern, onCancel?: () => PipelineStage<Bindings>): PipelineStage<Bindings>;
commit(bgp: BasicGraphPattern, writerID: string): void;
delete(bgp: BasicGraphPattern, writerID: string): void;
count(): number;
findSubset(bgp: BasicGraphPattern): [EngineTriple[], EngineTriple[]];
}