import { Context } from "./ctx"; import { CSArgs, GniomhExpr, ID, ListLit, ObjLookups, PosInfo, Postfix, Prefix } from "./gen_parser"; import { Value } from "./values"; export type EvalFn = (ctx: Context) => Value; export type MaybeEv = EvalFn | null; interface MaybeQuick { qeval: MaybeEv; } export interface IsQuick { qeval: EvalFn; } export declare function isQuick(a: MaybeQuick): a is IsQuick; export declare function qGníomhEval(gn: GniomhExpr): EvalFn; export declare function qTéacsEval(lit: string, start: PosInfo, end: PosInfo): EvalFn; export declare function qIntEval(lit: string): EvalFn; export declare function qBoolEval(lit: string): EvalFn; export declare function qIdEval(id: ID): EvalFn; export declare function qCSArgsEval(args: CSArgs): ((ctx: Context) => Value[]) | null; export declare function qListLitEval(lit: ListLit): MaybeEv; export declare function qObjLookupsEval(ol: ObjLookups): MaybeEv; export declare function qPostfixArgsEval(pf: Postfix): MaybeEv; export declare function qPrefEval(p: Prefix): MaybeEv; export {};