File size: 1,498 Bytes
b9499ab
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// Type-checks the contract examples (backend/contract/*.json) against
// AutodiffApi when tsc runs. Never imported by the app.
// The Python side is checked by backend/tests/test_contract.py.
import type { ContractExample } from "@elvis/pyodide";

import type { AutodiffApi } from "./python.ts";
import constants from "../../../backend/contract/constants.json";
import courseExample from "../../../backend/contract/course_example.json";
import forwardMode from "../../../backend/contract/forward_mode.json";
import invalidFunction from "../../../backend/contract/invalid_function.json";
import pastTheEnd from "../../../backend/contract/past_the_end.json";
import reverseMode from "../../../backend/contract/reverse_mode.json";
import sharedSubexpression from "../../../backend/contract/shared_subexpression.json";
import undefinedValue from "../../../backend/contract/undefined_value.json";

constants satisfies ContractExample<AutodiffApi, typeof constants>;
courseExample satisfies ContractExample<AutodiffApi, typeof courseExample>;
forwardMode satisfies ContractExample<AutodiffApi, typeof forwardMode>;
invalidFunction satisfies ContractExample<AutodiffApi, typeof invalidFunction>;
pastTheEnd satisfies ContractExample<AutodiffApi, typeof pastTheEnd>;
reverseMode satisfies ContractExample<AutodiffApi, typeof reverseMode>;
sharedSubexpression satisfies ContractExample<AutodiffApi, typeof sharedSubexpression>;
undefinedValue satisfies ContractExample<AutodiffApi, typeof undefinedValue>;