| 123456789101112131415161718192021222324 |
- MODULE TRetMeth;
- (* A method returning a composite (record) result, with a method-local
- variable. Exit 42. *)
- VAR ExitCode : INTEGER;
- TYPE
- Rec = RECORD a, b : INTEGER END;
- CLASS C;
- x : INTEGER;
- PROCEDURE Get () : Rec;
- END C;
- CLASS IMPLEMENTATION C;
- PROCEDURE Get () : Rec;
- VAR q : Rec;
- BEGIN q.a := x; q.b := x + 1; RETURN q END Get;
- END C;
- VAR c : C; r : Rec;
- BEGIN
- c.x := 10;
- r := c.Get();
- IF (r.a = 10) AND (r.b = 11) THEN ExitCode := 42 ELSE ExitCode := 1 END
- END TRetMeth.
|