js-slang
Version:
Javascript-based implementations of Source, written in Typescript
17 lines (16 loc) • 789 B
TypeScript
import type { AssignmentExpression, BinaryExpression, UnaryExpression } from 'estree';
import type { Rule } from '../../types';
import { RuleError } from '../../errors';
type ExpressionNodeType = AssignmentExpression | BinaryExpression | UnaryExpression;
export declare class NoUnspecifiedOperatorError<T extends ExpressionNodeType> extends RuleError<T> {
readonly unspecifiedOperator: T['operator'];
constructor(node: T);
explain(): string;
elaborate(): string;
}
export declare class StrictEqualityError extends NoUnspecifiedOperatorError<BinaryExpression> {
explain(): "Use === instead of ==." | "Use !== instead of !=.";
elaborate(): string;
}
declare const noUnspecifiedOperator: Rule<BinaryExpression | UnaryExpression>;
export default noUnspecifiedOperator;