Software Engineering for Smart Data Analytics & Smart Data Analytics for Software Engineering
Represents the union type in a multi-catch.
#id: id
the unique ID assigned to this fact.
#rawType: Types
the id of the implicit type of the union. This type is not visible in the source-code (it's the common supertype of all the types in the union).
[#type_1,…]: Types
the ids of all the types in the union.
try { ... } catch (ClassCastException | NullPointerException e) { ... }
tryT(Try, _, _, [], _, [Catch], null), catchT(Catch, Try, _, Param, _), paramT(Param, Catch, UnionType, e), unionTypeT(UnionType, RefToRuntimeException, [RefToClassCastException, RefToNullPointerException]).
ast_node_type_spec(unionTypeT,[ ast_arg(id, mult(1,1,no ), id, [unionTypeT]), ast_arg(rawType, mult(1,1,no ), id, [type_inst]), ast_arg(types, mult(0,*,no ), id, [type_inst]) ]).