t_wide_set.mod 465 B

1234567891011121314151617181920212223
  1. MODULE TWideSet;
  2. (* Wide set implementation limits: a large explicit span and the
  3. implicit SET OF CARDINAL span. *)
  4. TYPE
  5. Wide = SET OF [0..100000];
  6. CardSet = SET OF CARDINAL;
  7. VAR
  8. w : Wide;
  9. c : CardSet;
  10. ExitCode : INTEGER;
  11. BEGIN
  12. w := Wide{};
  13. INCL(w, 100000);
  14. c := CardSet{};
  15. INCL(c, 2);
  16. INCL(c, 65535);
  17. IF (100000 IN w) AND (2 IN c) AND (65535 IN c)
  18. AND NOT (3 IN c) THEN
  19. ExitCode := 42
  20. ELSE
  21. ExitCode := 1
  22. END
  23. END TWideSet.