/** * The Record operations: what one call of a compiler-owned Record member * answers. * * D115 §三: this was one private method of `CollectionInference`. Its cases run * in the order the one method evaluated them in, and it answers `null` for a * property Record does not publish. A Record is keyed by strings and holds one * value type, so nothing here judges a key domain and the host is one name. */ import { type ValueType } from "../../types.ts"; import { type CollectionCall, type CollectionLoweringFacts } from "./call.ts"; /** What the Record family asks of the analyzer that hosts it, and nothing more. */ export interface RecordCallsHost { /** What the emitter will lower each collection call to. */ readonly lowering: CollectionLoweringFacts; } export declare class RecordCalls { private readonly host; constructor(host: RecordCallsHost); /** The Record operations. */ inferRecordCall(call: CollectionCall, object: Extract): ValueType | null; } //# sourceMappingURL=record.d.ts.map