Libraryless. Click here for Pure Java version (20825L/140K).
1 | !7 |
2 | |
3 | set flag ConceptRef_markInToString. |
4 | //set flag MetaTransformer_debug. |
5 | |
6 | concept Bla {
|
7 | S name; |
8 | new Ref myRef; |
9 | new RefL<Bla> references; |
10 | } |
11 | |
12 | module > DynPrintLog {
|
13 | start-thread {
|
14 | new Concepts cc; |
15 | Bla a = cnew(cc, Bla, name := "a"); |
16 | Bla b = cnew(cc, Bla, name := "hello", whatever := 123, ref := a, myRef := a, |
17 | references := ll(a, a)); |
18 | pnl(conceptShadow_rawMap(a)); |
19 | ConceptShadow shadow = ConceptShadow(a); |
20 | print(shadow); |
21 | pnl(conceptShadow_rawMap(b)); |
22 | shadow = ConceptShadow(b); |
23 | print(shadow); |
24 | assertEqualsVerbose(getClassName(Bla), shadow.get(":class"));
|
25 | assertEqualsVerbose(ConceptID(a.id), shadow.get("ref"));
|
26 | assertEqualsVerbose(ConceptID(a.id), shadow.get("myRef"));
|
27 | assertEqualsVerbose(ll(ConceptID(a.id), ConceptID(a.id)), shadow.get("references"));
|
28 | assertEqualsVerbose(b.id, shadow.get("id"));
|
29 | assertEqualsVerbose("hello", shadow.get("name"));
|
30 | |
31 | // check that 2 shadows of same unchanged object are equal |
32 | assertEqualsVerbose(shadow, ConceptShadow(b)); |
33 | |
34 | // change object |
35 | cset(b, name := "newName"); |
36 | ConceptShadow shadow2 = new(b); |
37 | assertNotEqualsVerbose(shadow, shadow2); |
38 | } |
39 | } |
download show line numbers debug dex old transpilations
Travelled to 4 computer(s): bhatertpkbcr, mqqgnosmbjvj, pyentgdyhuwx, vouqrxazstgt
No comments. add comment
| Snippet ID: | #1031046 |
| Snippet name: | Test conceptShadow_rawMap & ConceptShadow (OK) |
| Eternal ID of this version: | #1031046/24 |
| Text MD5: | c191827d7f94d8b411b6a9b62e1c3d64 |
| Transpilation MD5: | b43e46c4a6d761c0363fce5aab24ffda |
| Author: | stefan |
| Category: | javax |
| Type: | JavaX source code (Dynamic Module) |
| Public (visible to everyone): | Yes |
| Archived (hidden from active list): | No |
| Created/modified: | 2021-05-01 15:45:53 |
| Source code size: | 1226 bytes / 39 lines |
| Pitched / IR pitched: | No / No |
| Views / Downloads: | 555 / 913 |
| Version history: | 23 change(s) |
| Referenced in: | [show references] |