| 1234567891011121314151617181920 |
- MODULE TEnum;
- (* Enumeration literals in expressions, CASE labels, CONST and as a
- parameter type. Exit 15. *)
- VAR ExitCode : INTEGER;
- TYPE Color = (red, green, blue);
- CONST Favourite = blue;
- PROCEDURE Name(c : Color) : INTEGER;
- BEGIN
- CASE c OF
- red: RETURN 0
- | green: RETURN 1
- | blue: RETURN 2
- END
- END Name;
- BEGIN
- IF Name(blue) = 2 THEN ExitCode := ExitCode + 1 ELSE ExitCode := 100 END;
- IF Name(Favourite) = 2 THEN ExitCode := ExitCode + 2 ELSE ExitCode := 100 END;
- IF Favourite = blue THEN ExitCode := ExitCode + 4 ELSE ExitCode := 100 END;
- IF red < green THEN ExitCode := ExitCode + 8 ELSE ExitCode := 100 END
- END TEnum.
|