Interface IndexedTypeConflict

Common interface of all problems/errors/messages which should be shown to users of DSLs which are type-checked with Typir. This approach makes it easier to introduce additional errors by users of Typir, compared to a union type, e.g. export type TypirProblem = ValueConflict | IndexedTypeConflict | ...

interface IndexedTypeConflict {
    $problem: "IndexedTypeConflict";
    actual: undefined | Type;
    expected: undefined | Type;
    propertyIndex?: number;
    propertyName?: string;
    subProblems: TypirProblem[];
}

Hierarchy (View Summary)

Properties

$problem: "IndexedTypeConflict"
actual: undefined | Type
expected: undefined | Type
propertyIndex?: number
propertyName?: string
subProblems: TypirProblem[]