Skip to content

Commit bb9e867

Browse files
committed
other: Updated CHANGELOG.md
1 parent 4787f16 commit bb9e867

1 file changed

Lines changed: 16 additions & 0 deletions

File tree

CHANGELOG.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,19 +18,33 @@ To use development versions of Kipper download the
1818

1919
### Added
2020

21+
- Error handling support using `try {} catch (e) {} finally {}` statements to catch and handle runtime errors.
22+
([#654](https://github.com/Kipper-Lang/Kipper/issues/654))
2123
- New cast keywords `cast as`, `force as` and `try as`, which allow for various type-safe cast operations.
2224
([#685](https://github.com/Kipper-Lang/Kipper/issues/685))
2325
- Implemented new `T?` and `T??` nullable type operator which marks the given type as `T | null` and `T | undefined`
2426
respectively.
2527
- New classes:
2628
- `NullableTypeSpecifierExpression`, which represents an AST nullable type specifier expression that marks a given
2729
type as nullable with either `null` or `undefined`.
30+
- `TryCatchStatement`, which represents an AST try-catch statement that handles exceptions thrown in the try block.
31+
- `CatchClause`, which represents an AST catch clause that is part of a try-catch statement.
32+
- `ErrorBindingDeclaration`, which represents an AST error binding declaration that is part of a catch clause. This
33+
declaration binds the error object to a variable in the catch clause scope.
2834
- New interfaces:
2935
- `NullableTypeSpecifierExpressionSemantics`, which represents the semantics of a nullable type specifier expression.
3036
- `NullableTypeSpecifierExpressionTypeSemantics`, which represents the type semantics of a nullable type specifier
3137
expression.
38+
- `TryCatchStatementSemantics`, which represents the semantics of a try-catch statement.
39+
- `TryCatchStatementTypeSemantics`, which represents the type semantics of a try-catch statement.
40+
- `CatchClauseSemantics`, which represents the semantics of a catch clause.
41+
- `CatchClauseTypeSemantics`, which represents the type semantics of a catch clause.
42+
- `ErrorBindingDeclarationSemantics`, which represents the semantics of an error binding declaration.
43+
- `ErrorBindingDeclarationTypeSemantics`, which represents the type semantics of an error binding declaration.
3244
- New functions:
3345
- `KipperTypeScriptTarget.getRuntimeType`, which gets the corresponding runtime representation of a type.
46+
- `KipperTypeChecker.isValidErrorBindingArgument`, which checks if a type is a valid type for an error binding
47+
argument.
3448
- New properties:
3549
- `CompilableASTNode.closestHigherLevelParent`, which returns the closest parent of the node that is of a higher level
3650
than the node itself. (Higher level as in statement or declaration level, undefined means the item itself is already
@@ -42,6 +56,8 @@ To use development versions of Kipper download the
4256
- `CustomType.sourceNode`, which returns the source node of the custom type.
4357
- `CustomType.clsConstructor`, which returns the constructor of the class if the type is a class and the class has a
4458
constructor.
59+
- `ProcessedType.isInterface`, which returns true if the type is an interface.
60+
- `ProcessedType.isClass`, which returns true if the type is a class.
4561
- New types:
4662
- `KipperNullableNullOperator`, which is the `null` nullable operator that can be used in Kipper.
4763
- `KipperNullableUndefinedOperator`, which is the `undefined` nullable operator that can be used in Kipper.

0 commit comments

Comments
 (0)