rdf-stores
Version:
A TypeScript/JavaScript implementation of the RDF/JS store interface with support for quoted triples.
31 lines (30 loc) • 1.85 kB
TypeScript
import type { ITermDictionary } from '../dictionary/ITermDictionary';
import type { IRdfStoreOptions } from '../IRdfStoreOptions';
import type { EncodedQuadTerms, PatternTerm, QuadPatternTerms, QuadTerms } from '../PatternTerm';
import type { IRdfStoreIndex } from './IRdfStoreIndex';
import type { NestedMapActual } from './RdfStoreIndexNestedMap';
/**
* An RDF store index that is implemented using nested Maps,
* and finds quads components via recursive methods calls.
*/
export declare class RdfStoreIndexNestedMapRecursive<E, V> implements IRdfStoreIndex<E, V> {
protected readonly dictionary: ITermDictionary<E>;
protected readonly nestedMap: NestedMapActual<E, V>;
readonly features: {
quotedTripleFiltering: boolean;
};
constructor(options: IRdfStoreOptions<E>);
set(terms: EncodedQuadTerms<E>, value: V): boolean;
remove(terms: EncodedQuadTerms<E>): boolean;
get(key: QuadTerms): V | undefined;
getEncoded(ids: EncodedQuadTerms<E>): V | undefined;
find(terms: QuadPatternTerms): IterableIterator<QuadTerms>;
findEncoded(ids: EncodedQuadTerms<E | undefined>, terms: QuadPatternTerms): IterableIterator<EncodedQuadTerms<E>>;
protected findEncodedInner(index: number, ids: (E | undefined)[], terms: QuadPatternTerms, map: NestedMapActual<E, V>, partialQuad: E[]): IterableIterator<E[]>;
protected findTermsInner(depth: number, map: NestedMapActual<E, V>, matchTerms: boolean[], partialResult: E[]): IterableIterator<E[]>;
findTerms(matchTerms: boolean[]): IterableIterator<E[]>;
count(terms: QuadPatternTerms): number;
protected countInner(index: number, terms: PatternTerm[], map: NestedMapActual<E, V>): number;
protected countTermsInner(depth: number, map: NestedMapActual<E, V>, matchTerms: boolean[]): number;
countTerms(matchTerms: boolean[]): number;
}