fork of hey-api/openapi-ts because I need some additional things
1import type { PyNodeBase } from '../base';
2import { PyNodeKind } from '../kinds';
3import type { PyStatement } from '../statement';
4import { createBlock, type PyBlock } from './block';
5import type { PyExceptClause } from './except';
6
7export interface PyTryStatement extends PyNodeBase {
8 elseBlock?: PyBlock;
9 exceptClauses?: ReadonlyArray<PyExceptClause>;
10 finallyBlock?: PyBlock;
11 kind: PyNodeKind.TryStatement;
12 tryBlock: PyBlock;
13}
14
15export function createTryStatement(
16 tryBlock: ReadonlyArray<PyStatement>,
17 exceptClauses?: ReadonlyArray<PyExceptClause>,
18 elseBlock?: ReadonlyArray<PyStatement>,
19 finallyBlock?: ReadonlyArray<PyStatement>,
20): PyTryStatement {
21 return {
22 elseBlock: elseBlock ? createBlock(elseBlock) : undefined,
23 exceptClauses,
24 finallyBlock: finallyBlock ? createBlock(finallyBlock) : undefined,
25 kind: PyNodeKind.TryStatement,
26 tryBlock: createBlock(tryBlock),
27 };
28}