Type Alias Effect<atom>

Effect<atom>:
    | {
        discard: Expression<atom>;
        tag: atom["Tag"];
        type: "ExpressionEffect";
    }
    | {
        negative: Effect<atom>[];
        positive: Effect<atom>[];
        tag: atom["Tag"];
        test: Expression<atom>;
        type: "ConditionalEffect";
    }
    | {
        tag: atom["Tag"];
        type: "WriteEffect";
        value: Expression<atom>;
        variable: Parameter | atom["Variable"];
    }
    | {
        export: atom["Specifier"];
        tag: atom["Tag"];
        type: "ExportEffect";
        value: Expression<atom>;
    }

Type Parameters