UNPKG

js-slang

Version:

Javascript-based implementations of Source, written in Typescript

14 lines (13 loc) 487 B
import type { Node } from '../types'; import type { StepperExpression, StepperPattern } from './nodes'; export interface StepperBaseNode { type: Node['type']; isContractible(): boolean; isOneStepPossible(): boolean; contract(): StepperBaseNode; oneStep(): StepperBaseNode; substitute(id: StepperPattern, value: StepperExpression): StepperBaseNode; freeNames(): string[]; allNames(): string[]; rename(before: string, after: string): StepperBaseNode; }