import { HopExpression } from '../Expression.js'; import { HopQuery, Query } from '../Query.js'; import { EdgeSpec } from '@aphro/schema-api'; import { Context, IModel } from '@aphro/context-runtime-ts'; import MemoryHopExpression from './MemoryHopExpression.js'; export default class MemoryHopQuery extends HopQuery { static create(ctx: Context, sourceQuery: Query, edge: EdgeSpec) { // source could be anything. // dest is memory. // standalone edge could be memory or sql... return new MemoryHopQuery( ctx, sourceQuery, new MemoryHopExpression(ctx, edge, { what: 'model' }), ); } } function createChainedHopExpression(edge: EdgeSpec): HopExpression { throw new Error('In memory hop not yet supported'); }