1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
;; -*-theme-d-*-
;; Copyright (C) 2017-2018 Tommi Höynälänmaa
;; Distributed under GNU General Public License version 3,
;; see file doc/GPL-3.
;; Expected results: translation and running OK
;; Expected output: #t #t #t #t #f #f #f #f #t #t #t #t #f #f #f #f
;; #t #t #t #t #f #f #f #f #t
(define-proper-program (tests test567)
(import (standard-library core)
(standard-library list-utilities)
(standard-library console-io))
(define-class <my-class1>
(fields
(i <integer> public module)))
(define-class <my-class2>
(inheritance-access hidden)
(fields
(i <integer> public module)))
(define main
(lambda (() <none> nonpure)
(let* ((l1 '(abc def ghi))
(l2 '(1 3 4 6 5))
(x1 (create <my-class1> 10))
(x2 (create <my-class1> 10))
(x3 (create <my-class2> 100))
(x4 (create <my-class2> 100))
(x5 (create <my-class2> 200))
(x6 (create <my-class2> 100))
(l3 (list x1 x2))
(l4 (list x3 x4)))
(console-display-line (member? 'def l1))
(console-display-line (member-values? 'def l1))
(console-display-line (member-objects? 'def l1))
(console-display-line (member-contents? 'def l1))
(console-display-line (member? 'jkl l1))
(console-display-line (member-values? 'jkl l1))
(console-display-line (member-objects? 'jkl l1))
(console-display-line (member-contents? 'jkl l1))
(console-display-line (member? 4 l2))
(console-display-line (member-values? 4 l2))
(console-display-line (member-objects? 4 l2))
(console-display-line (member-contents? 4 l2))
(console-display-line (member? 10 l2))
(console-display-line (member-values? 10 l2))
(console-display-line (member-objects? 10 l2))
(console-display-line (member-contents? 10 l2))
(console-display-line (member? x2 l3))
(console-display-line (member-values? x2 l3))
(console-display-line (member-objects? x2 l3))
(console-display-line (member-contents? x2 l3))
(console-display-line (member? x5 l4))
(console-display-line (member-values? x5 l4))
(console-display-line (member-objects? x5 l4))
(console-display-line (member-contents? x5 l4))
(console-display-line (member-contents? x6 l4))))))
|