Merge pull request #915 from quantified-uncertainty/mitigate-void

Void bug fixes
This commit is contained in:
Ozzie Gooen 2022-07-29 12:45:07 -07:00 committed by GitHub
commit 2988b9bcb6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 22 additions and 4 deletions

View File

@ -59,6 +59,13 @@ export const ExpressionViewer: React.FC<Props> = ({
expression,
width,
}) => {
if (typeof expression !== "object") {
return (
<VariableList path={path} heading="Error">
{() => `Unknown expression: ${expression}`}
</VariableList>
);
}
switch (expression.tag) {
case "number":
return (
@ -281,10 +288,16 @@ export const ExpressionViewer: React.FC<Props> = ({
);
default: {
return (
<VariableList path={path} heading="Error">
{() => (
<div>
<span>No display for type: </span>{" "}
<span className="font-semibold text-slate-600">{expression.tag}</span>
<span className="font-semibold text-slate-600">
{expression.tag}
</span>
</div>
)}
</VariableList>
);
}
}

View File

@ -18,6 +18,7 @@ import { tagged, tag } from "./types";
// Raw rescript types.
export type rescriptExport =
| 0 // EvVoid
| {
TAG: 0; // EvArray
_0: rescriptExport[];
@ -140,6 +141,10 @@ export function convertRawToTypescript(
result: rescriptExport,
environment: environment
): squiggleExpression {
if (typeof result === "number") {
// EvVoid
return tag("void", "");
}
switch (result.TAG) {
case 0: // EvArray
return tag(