home *** CD-ROM | disk | FTP | other *** search
MacBinary | 1999-02-20 | 78.1 KB | [ TEXT/MSET]
open in: MacOS 8.1
extracted
|
Win98
extracted
|
DOS
extracted
view JSON data
|
view as text
This file was processed as: MacBinary
(archive/macBinary ).
You can browse this item here: Class
id metadata key value macFileType [ TEXT] macFileCreator [ MSET]
hex view +--------+-------------------------+-------------------------+--------+--------+ |00000000| 00 05 43 6c 61 73 73 00 | 00 00 00 00 00 00 00 00 |..Class.|........| |00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000040| 00 54 45 58 54 4d 53 45 | 54 01 00 00 00 00 00 00 |.TEXTMSE|T.......| |00000050| 00 00 00 00 01 36 6d 00 | 00 01 7d b2 f4 81 b5 b2 |.....6m.|..}.....| |00000060| f4 81 b5 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 0e e6 00 00 |........|........| |00000080| 5c 20 48 69 67 68 2d 6c | 65 76 65 6c 20 63 6c 61 |\ High-l|evel cla| |00000090| 73 73 2f 6f 62 6a 65 63 | 74 20 69 6d 70 6c 65 6d |ss/objec|t implem| |000000a0| 65 6e 74 61 74 69 6f 6e | 2e 0d 0d 63 72 20 2e 28 |entation|...cr .(| |000000b0| 20 6c 6f 61 64 69 6e 67 | 20 43 6c 61 73 73 2e 2e | loading| Class..| |000000c0| 2e 29 0d 0d 0d 5c 20 3a | 20 3e 63 6c 61 73 73 78 |.)...\ :| >classx| |000000d0| 74 09 09 09 3e 63 6c 61 | 73 73 43 66 61 20 20 3b |t...>cla|ssCfa ;| |000000e0| 0d 5c 20 3a 20 61 6c 69 | 67 6e 65 64 5f 61 64 64 |.\ : ali|gned_add| |000000f0| 72 3f 09 09 63 66 61 3f | 20 20 3b 0d 0d 0d 28 2a |r?..cfa?| ;...(*| |00000100| 0d 4e 6f 74 65 20 74 68 | 61 74 20 74 68 65 20 6f |.Note th|at the o| |00000110| 62 6a 65 63 74 20 68 65 | 61 64 65 72 20 66 6f 72 |bject he|ader for| |00000120| 6d 61 74 20 69 73 20 64 | 6f 63 75 6d 65 6e 74 65 |mat is d|ocumente| |00000130| 64 20 61 74 20 22 6f 62 | 6a 65 63 74 20 62 75 69 |d at "ob|ject bui| |00000140| 6c 64 69 6e 67 22 0d 20 | 62 65 6c 6f 77 2e 0d 0d |lding". |below...| |00000150| 4a 61 6e 20 39 36 09 6d | 72 68 2f 69 6d 6b 09 41 |Jan 96.m|rh/imk.A| |00000160| 64 64 65 64 20 76 61 72 | 69 6f 75 73 20 6d 6f 64 |dded var|ious mod| |00000170| 73 20 74 6f 20 6f 62 6a | 65 63 74 20 69 6e 69 74 |s to obj|ect init| |00000180| 69 61 6c 69 7a 61 74 69 | 6f 6e 20 63 6f 6e 74 72 |ializati|on contr| |00000190| 69 62 75 74 65 64 0d 09 | 09 09 09 62 79 20 49 76 |ibuted..|...by Iv| |000001a0| 6f 20 4b 72 61 62 2e 0d | 09 09 09 09 0d 4a 75 6c |o Krab..|.....Jul| |000001b0| 20 39 36 09 6d 72 68 09 | 09 4d 6f 64 73 20 6d 61 | 96.mrh.|.Mods ma| |000001c0| 64 65 20 74 6f 20 73 75 | 70 70 6f 72 74 20 6c 61 |de to su|pport la| |000001d0| 72 67 65 5f 6f 62 6a 5f | 61 72 72 61 79 0d 09 09 |rge_obj_|array...| |000001e0| 6d 72 68 2f 72 68 09 49 | 6e 63 6f 72 70 6f 72 61 |mrh/rh.I|ncorpora| |000001f0| 74 65 64 20 62 75 67 20 | 66 69 78 20 66 72 6f 6d |ted bug |fix from| |00000200| 20 52 65 69 6e 6f 75 74 | 20 48 65 65 63 6b 2c 20 | Reinout| Heeck, | |00000210| 73 6f 20 6d 75 6c 74 69 | 70 6c 65 0d 09 09 09 09 |so multi|ple.....| |00000220| 20 72 65 63 6f 72 64 73 | 20 69 6e 20 75 6e 69 6f | records| in unio| |00000230| 6e 73 20 77 6f 72 6b 2e | 0d 53 65 70 20 39 36 09 |ns work.|.Sep 96.| |00000240| 6d 72 68 09 09 42 65 74 | 74 65 72 20 69 6e 6c 69 |mrh..Bet|ter inli| |00000250| 6e 65 7b 20 2d 20 65 6c | 69 6d 69 6e 61 74 69 6e |ne{ - el|iminatin| |00000260| 67 20 65 78 70 6c 69 63 | 69 74 20 6f 75 74 2d 6f |g explic|it out-o| |00000270| 66 2d 6c 69 6e 65 20 63 | 6f 64 65 0d 09 09 09 09 |f-line c|ode.....| |00000280| 38 2d 77 61 79 20 68 61 | 73 68 69 6e 67 20 6f 66 |8-way ha|shing of| |00000290| 20 6d 65 74 68 6f 64 73 | 0d 0d 3d 3d 3d 3d 3d 3d | methods|..======| |000002a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000002b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000002c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000002d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000002e0| 3d 3d 3d 3d 3d 3d 3d 3d | 0d 0d 48 65 72 65 20 61 |========|..Here a| |000002f0| 72 65 20 61 6c 6c 20 6f | 75 72 20 76 61 72 69 6f |re all o|ur vario| |00000300| 75 73 20 63 6c 61 73 73 | 2f 6f 62 6a 65 63 74 20 |us class|/object | |00000310| 66 6f 72 6d 61 74 73 3a | 0d 0d 0d 0d 09 09 09 3d |formats:|.......=| |00000320| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000330| 20 4f 62 6a 65 63 74 20 | 68 65 61 64 65 72 20 3d | Object |header =| |00000340| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000350| 3d 3d 3d 3d 3d 0d 0d 4e | 6f 74 65 20 69 66 20 74 |=====..N|ote if t| |00000360| 68 65 20 6f 62 6a 20 69 | 73 20 61 6e 20 69 76 61 |he obj i|s an iva| |00000370| 72 2c 20 69 74 20 64 6f | 65 73 6e 27 74 20 68 61 |r, it do|esn't ha| |00000380| 76 65 20 61 20 68 65 61 | 64 65 72 20 69 66 20 69 |ve a hea|der if i| |00000390| 74 27 73 20 69 6e 20 61 | 20 72 65 63 6f 72 64 2c |t's in a| record,| |000003a0| 0d 75 6e 6c 65 73 73 20 | 74 68 65 20 69 76 61 72 |.unless |the ivar| |000003b0| 20 69 73 20 69 6e 64 65 | 78 65 64 2e 20 20 49 6e | is inde|xed. In| |000003c0| 64 65 78 65 64 20 69 76 | 61 72 73 20 61 6c 77 61 |dexed iv|ars alwa| |000003d0| 79 73 20 68 61 76 65 20 | 68 65 61 64 65 72 73 2c |ys have |headers,| |000003e0| 20 6e 6f 20 6d 61 74 74 | 65 72 0d 77 68 61 74 2c | no matt|er.what,| |000003f0| 20 73 69 6e 63 65 20 74 | 68 65 20 69 6e 64 65 78 | since t|he index| |00000400| 69 6e 67 20 63 6f 64 65 | 20 72 65 6c 69 65 73 20 |ing code| relies | |00000410| 6f 6e 20 69 74 2e 0d 0d | 0d 32 20 62 79 74 65 73 |on it...|.2 bytes| |00000420| 09 09 4f 66 66 73 65 74 | 20 74 6f 20 74 68 65 20 |..Offset| to the | |00000430| 69 6e 64 65 78 65 64 20 | 61 72 65 61 2c 20 72 65 |indexed |area, re| |00000440| 6c 20 74 6f 20 74 68 65 | 20 63 6c 61 73 73 20 70 |l to the| class p| |00000450| 6f 69 6e 74 65 72 0d 09 | 09 09 28 77 68 69 63 68 |ointer..|..(which| |00000460| 20 66 6f 6c 6c 6f 77 73 | 29 2e 20 20 49 66 20 6e | follows|). If n| |00000470| 6f 74 20 69 6e 64 65 78 | 65 64 2c 20 74 68 69 73 |ot index|ed, this| |00000480| 20 77 69 6c 6c 20 62 65 | 20 36 2e 0d 0d 34 20 62 | will be| 6...4 b| |00000490| 79 74 65 73 09 09 43 6c | 61 73 73 20 70 6f 69 6e |ytes..Cl|ass poin| |000004a0| 74 65 72 20 28 72 65 6c | 6f 63 61 74 61 62 6c 65 |ter (rel|ocatable| |000004b0| 29 2e 0d 0d 32 20 62 79 | 74 65 73 09 09 4f 66 66 |)...2 by|tes..Off| |000004c0| 73 65 74 20 66 72 6f 6d | 20 74 68 65 20 64 61 74 |set from| the dat| |000004d0| 61 20 73 74 61 72 74 20 | 74 6f 20 74 68 65 20 63 |a start |to the c| |000004e0| 6c 61 73 73 20 70 6f 69 | 6e 74 65 72 2e 0d 09 09 |lass poi|nter....| |000004f0| 09 46 6f 72 20 73 69 6d | 70 6c 65 20 6f 62 6a 65 |.For sim|ple obje| |00000500| 63 74 73 20 28 69 2e 65 | 2e 20 6e 6f 74 20 65 6d |cts (i.e|. not em| |00000510| 62 65 64 64 65 64 29 2c | 20 74 68 69 73 20 69 73 |bedded),| this is| |00000520| 20 2d 36 2e 0d 09 09 09 | 46 6f 72 20 65 6d 62 65 | -6.....|For embe| |00000530| 64 64 65 64 20 6f 62 6a | 65 63 74 73 2c 20 69 74 |dded obj|ects, it| |00000540| 20 77 69 6c 6c 20 62 65 | 20 6d 6f 72 65 20 6e 65 | will be| more ne| |00000550| 67 61 74 69 76 65 2e 20 | 20 4e 6f 74 65 20 69 74 |gative. | Note it| |00000560| 0d 09 09 09 77 69 6c 6c | 20 61 6c 77 61 79 73 20 |....will| always | |00000570| 62 65 20 6e 65 67 61 74 | 69 76 65 2e 0d 0d 28 6f |be negat|ive...(o| |00000580| 62 6a 65 63 74 27 73 20 | 64 61 74 61 20 73 74 61 |bject's |data sta| |00000590| 72 74 73 20 68 65 72 65 | 29 0d 0d 46 6f 72 20 69 |rts here|)..For i| |000005a0| 6e 64 65 78 65 64 20 6f | 62 6a 65 63 74 73 2c 20 |ndexed o|bjects, | |000005b0| 74 68 65 20 69 6e 64 65 | 78 65 64 20 61 72 65 61 |the inde|xed area| |000005c0| 20 28 61 66 74 65 72 20 | 74 68 65 20 69 76 61 72 | (after |the ivar| |000005d0| 73 29 20 69 73 20 70 72 | 65 63 65 64 65 64 20 62 |s) is pr|eceded b| |000005e0| 79 0d 74 68 65 20 69 6e | 64 65 78 65 64 20 64 65 |y.the in|dexed de| |000005f0| 73 63 72 69 70 74 6f 72 | 20 28 78 64 65 73 63 29 |scriptor| (xdesc)| |00000600| 20 77 69 74 68 20 74 68 | 69 73 20 66 6f 72 6d 61 | with th|is forma| |00000610| 74 3a 0d 0d 32 20 62 79 | 74 65 73 09 09 57 69 64 |t:..2 by|tes..Wid| |00000620| 74 68 20 6f 66 20 69 6e | 64 65 78 65 64 20 65 6c |th of in|dexed el| |00000630| 65 6d 65 6e 74 73 20 28 | 69 6e 20 62 79 74 65 73 |ements (|in bytes| |00000640| 29 0d 34 20 62 79 74 65 | 73 09 09 4e 75 6d 62 65 |).4 byte|s..Numbe| |00000650| 72 20 6f 66 20 65 6c 65 | 6d 65 6e 74 73 20 6d 69 |r of ele|ments mi| |00000660| 6e 75 73 20 31 20 28 69 | 2e 65 2e 20 4c 49 4d 49 |nus 1 (i|.e. LIMI| |00000670| 54 2d 31 29 2e 0d 09 09 | 09 54 68 65 20 6c 6f 77 |T-1)....|.The low| |00000680| 20 77 6f 72 64 20 6f 66 | 20 74 68 69 73 20 69 73 | word of| this is| |00000690| 20 75 73 65 64 20 62 79 | 20 61 20 43 48 4b 20 69 | used by| a CHK i| |000006a0| 6e 73 74 72 75 63 74 69 | 6f 6e 0d 09 09 09 69 66 |nstructi|on....if| |000006b0| 20 23 65 6c 65 6d 65 6e | 74 73 20 69 73 20 3c 20 | #elemen|ts is < | |000006c0| 33 32 4b 2e 0d 0d 49 66 | 20 69 6e 64 65 78 69 6e |32K...If| indexin| |000006d0| 67 20 69 73 20 61 74 74 | 65 6d 70 74 65 64 20 6f |g is att|empted o| |000006e0| 6e 20 61 20 6e 6f 6e 2d | 69 6e 64 65 78 65 64 20 |n a non-|indexed | |000006f0| 6f 62 6a 65 63 74 2c 20 | 74 68 65 20 22 6f 66 66 |object, |the "off| |00000700| 73 65 74 20 74 6f 20 74 | 68 65 0d 69 6e 64 65 78 |set to t|he.index| |00000710| 65 64 20 61 72 65 61 22 | 20 77 69 6c 6c 20 62 65 |ed area"| will be| |00000720| 20 36 2c 20 74 61 6b 69 | 6e 67 20 75 73 20 74 6f | 6, taki|ng us to| |00000730| 20 74 68 65 20 62 65 67 | 69 6e 6e 69 6e 67 20 6f | the beg|inning o| |00000740| 66 20 74 68 65 20 6f 62 | 6a 65 63 74 27 73 0d 64 |f the ob|ject's.d| |00000750| 61 74 61 2e 20 20 54 68 | 65 20 43 48 4b 20 69 6e |ata. Th|e CHK in| |00000760| 73 74 72 75 63 74 69 6f | 6e 20 77 69 6c 6c 20 62 |structio|n will b| |00000770| 65 20 64 6f 6e 65 20 61 | 74 20 6f 66 66 73 65 74 |e done a|t offset| |00000780| 20 2d 32 20 66 72 6f 6d | 20 74 68 65 72 65 2c 20 | -2 from| there, | |00000790| 77 68 69 63 68 0d 77 6f | 6e 27 74 20 62 65 20 74 |which.wo|n't be t| |000007a0| 68 65 20 23 65 6c 65 6d | 65 6e 74 73 2c 20 6f 66 |he #elem|ents, of| |000007b0| 20 63 6f 75 72 73 65 2c | 20 62 75 74 20 77 69 6c | course,| but wil| |000007c0| 6c 20 62 65 20 74 68 65 | 20 6f 66 66 73 65 74 20 |l be the| offset | |000007d0| 74 6f 20 74 68 65 0d 63 | 6c 61 73 73 20 70 6f 69 |to the.c|lass poi| |000007e0| 6e 74 65 72 20 57 48 49 | 43 48 20 49 53 20 41 4c |nter WHI|CH IS AL| |000007f0| 57 41 59 53 20 4e 45 47 | 41 54 49 56 45 21 21 20 |WAYS NEG|ATIVE!! | |00000800| 20 54 68 75 73 20 74 68 | 65 20 43 48 4b 20 77 69 | Thus th|e CHK wi| |00000810| 6c 6c 20 61 6c 77 61 79 | 73 20 66 61 69 6c 21 0d |ll alway|s fail!.| |00000820| 54 68 69 73 20 77 61 73 | 20 61 20 64 65 6c 69 62 |This was| a delib| |00000830| 65 72 61 74 65 20 74 72 | 69 63 6b 20 2d 20 61 62 |erate tr|ick - ab| |00000840| 6f 75 74 20 74 68 65 20 | 6f 6e 6c 79 20 70 6c 61 |out the |only pla| |00000850| 63 65 20 69 6e 20 4d 6f | 70 73 20 49 27 76 65 0d |ce in Mo|ps I've.| |00000860| 72 65 73 6f 72 74 65 64 | 20 74 6f 20 61 6e 79 74 |resorted| to anyt| |00000870| 68 69 6e 67 20 6c 69 6b | 65 20 74 68 69 73 2c 20 |hing lik|e this, | |00000880| 79 6f 75 27 6c 6c 20 62 | 65 20 67 6c 61 64 20 74 |you'll b|e glad t| |00000890| 6f 20 6b 6e 6f 77 2e 20 | 20 28 41 74 20 6c 65 61 |o know. | (At lea| |000008a0| 73 74 20 49 27 76 65 0d | 64 65 73 63 72 69 62 65 |st I've.|describe| |000008b0| 64 20 69 74 20 66 6f 72 | 20 79 6f 75 21 29 0d 0d |d it for| you!)..| |000008c0| 54 68 69 73 20 74 72 69 | 63 6b 20 68 61 73 20 76 |This tri|ck has v| |000008d0| 65 72 79 20 6c 69 6d 69 | 74 65 64 20 75 73 65 66 |ery limi|ted usef| |000008e0| 75 6c 6e 65 73 73 20 6e | 6f 77 2c 20 73 69 6e 63 |ulness n|ow, sinc| |000008f0| 65 20 61 6c 6c 20 74 68 | 65 20 69 6e 64 65 78 65 |e all th|e indexe| |00000900| 64 0d 6d 65 74 68 6f 64 | 73 20 61 72 65 20 6e 6f |d.method|s are no| |00000910| 77 20 64 65 66 69 6e 65 | 64 20 69 6e 20 49 4e 44 |w define|d in IND| |00000920| 45 58 45 44 2d 4f 42 4a | 20 72 61 74 68 65 72 20 |EXED-OBJ| rather | |00000930| 74 68 61 6e 20 4f 42 4a | 45 43 54 2c 20 73 6f 20 |than OBJ|ECT, so | |00000940| 6e 6f 72 6d 61 6c 6c 79 | 0d 61 6e 20 69 6e 64 65 |normally|.an inde| |00000950| 78 65 64 20 6d 65 74 68 | 6f 64 20 6f 6e 20 61 20 |xed meth|od on a | |00000960| 6e 6f 6e 2d 69 6e 64 65 | 78 65 64 20 63 6c 61 73 |non-inde|xed clas| |00000970| 73 20 77 6f 75 6c 64 6e | 27 74 20 62 65 20 66 6f |s wouldn|'t be fo| |00000980| 75 6e 64 2e 20 20 48 6f | 77 65 76 65 72 0d 74 68 |und. Ho|wever.th| |00000990| 65 20 63 68 65 63 6b 20 | 63 6f 6d 65 73 20 66 6f |e check |comes fo| |000009a0| 72 20 66 72 65 65 2c 20 | 73 6f 20 49 27 76 65 20 |r free, |so I've | |000009b0| 72 65 74 61 69 6e 65 64 | 20 69 74 2e 0d 0d 0d 09 |retained| it.....| |000009c0| 09 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 20 |.=======|======= | |000009d0| 20 43 6c 61 73 73 20 64 | 69 63 74 69 6f 6e 61 72 | Class d|ictionar| |000009e0| 79 20 65 6e 74 72 79 20 | 20 3d 3d 3d 3d 3d 3d 3d |y entry | =======| |000009f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 0d 0d 6c 69 6e 6b 2f |========|=..link/| |00000a00| 6e 61 6d 65 2f 68 6e 64 | 6c 72 09 61 73 20 66 6f |name/hnd|lr.as fo| |00000a10| 72 20 6e 6f 72 6d 61 6c | 20 63 6f 6c 6f 6e 20 64 |r normal| colon d| |00000a20| 65 66 69 6e 69 74 69 6f | 6e 73 0d 34 20 62 79 74 |efinitio|ns.4 byt| |00000a30| 65 73 09 09 09 63 61 6c | 6c 20 74 6f 20 42 4c 44 |es...cal|l to BLD| |00000a40| 20 2d 20 74 68 65 20 77 | 6f 72 64 20 77 68 69 63 | - the w|ord whic| |00000a50| 68 20 62 75 69 6c 64 73 | 20 61 6e 20 6f 62 6a 65 |h builds| an obje| |00000a60| 63 74 0d 33 32 20 62 79 | 74 65 73 09 09 6c 69 6e |ct.32 by|tes..lin| |00000a70| 6b 73 20 74 6f 20 38 2d | 77 61 79 20 68 61 73 68 |ks to 8-|way hash| |00000a80| 65 64 20 6d 65 74 68 6f | 64 20 63 68 61 69 6e 73 |ed metho|d chains| |00000a90| 20 28 72 65 6c 61 74 69 | 76 65 29 0d 34 20 62 79 | (relati|ve).4 by| |00000aa0| 74 65 73 09 09 09 6c 69 | 6e 6b 20 74 6f 20 69 76 |tes...li|nk to iv| |00000ab0| 61 72 20 63 68 61 69 6e | 20 28 72 65 6c 61 74 69 |ar chain| (relati| |00000ac0| 76 65 29 0d 32 20 62 79 | 74 65 73 09 09 09 6e 6f |ve).2 by|tes...no| |00000ad0| 6e 2d 69 6e 64 65 78 65 | 64 20 64 61 74 61 20 6c |n-indexe|d data l| |00000ae0| 65 6e 67 74 68 0d 32 20 | 62 79 74 65 73 09 09 09 |ength.2 |bytes...| |00000af0| 77 69 64 74 68 20 6f 66 | 20 69 6e 64 65 78 65 64 |width of| indexed| |00000b00| 20 65 6c 65 6d 65 6e 74 | 73 2c 20 6f 72 20 7a 65 | element|s, or ze| |00000b10| 72 6f 20 69 66 20 6e 6f | 74 20 69 6e 64 65 78 65 |ro if no|t indexe| |00000b20| 64 0d 32 20 62 79 74 65 | 73 09 09 09 66 6c 61 67 |d.2 byte|s...flag| |00000b30| 73 0d 32 20 62 79 74 65 | 73 09 09 09 22 78 64 69 |s.2 byte|s..."xdi| |00000b40| 73 70 6c 20 6f 66 66 73 | 22 20 2d 20 74 68 65 20 |spl offs|" - the | |00000b50| 69 76 61 72 20 6f 66 66 | 73 65 74 20 77 68 65 72 |ivar off|set wher| |00000b60| 65 20 69 6e 64 65 78 69 | 6e 67 20 73 74 61 72 74 |e indexi|ng start| |00000b70| 73 0d 09 09 09 09 20 28 | 75 73 65 64 20 62 79 20 |s..... (|used by | |00000b80| 6c 61 72 67 65 5f 6f 62 | 6a 5f 61 72 72 61 79 73 |large_ob|j_arrays| |00000b90| 29 2c 20 6f 72 20 7a 65 | 72 6f 20 69 66 20 6e 6f |), or ze|ro if no| |00000ba0| 6e 65 2e 0d 34 28 6e 2b | 31 29 20 62 79 74 65 73 |ne..4(n+|1) bytes| |00000bb0| 09 6e 2d 77 61 79 20 74 | 6f 20 73 75 70 65 72 63 |.n-way t|o superc| |00000bc0| 6c 61 73 73 65 73 20 28 | 6e 20 72 65 6c 6f 63 61 |lasses (|n reloca| |00000bd0| 74 61 62 6c 65 20 61 64 | 64 72 73 20 74 65 72 6d |table ad|drs term| |00000be0| 69 6e 61 74 65 64 20 62 | 79 20 7a 65 72 6f 29 0d |inated b|y zero).| |00000bf0| 0d 46 6c 61 67 20 62 69 | 74 73 3a 0d 09 24 30 30 |.Flag bi|ts:..$00| |00000c00| 30 31 09 09 22 6c 61 72 | 67 65 22 20 2d 20 69 6e |01.."lar|ge" - in| |00000c10| 64 65 78 65 64 20 77 69 | 74 68 20 3e 20 36 34 4b |dexed wi|th > 64K| |00000c20| 20 65 6c 65 6d 65 6e 74 | 73 2e 0d 09 24 30 30 30 | element|s...$000| |00000c30| 32 09 09 63 6c 61 73 73 | 20 69 73 20 65 78 70 6f |2..class| is expo| |00000c40| 72 74 65 64 20 66 72 6f | 6d 20 61 20 6d 6f 64 75 |rted fro|m a modu| |00000c50| 6c 65 0d 0d 0d 09 09 3d | 3d 3d 3d 3d 3d 3d 3d 3d |le.....=|========| |00000c60| 3d 3d 3d 3d 3d 20 20 69 | 76 61 72 20 64 69 63 74 |===== i|var dict| |00000c70| 69 6f 6e 61 72 79 20 65 | 6e 74 72 79 20 20 3d 3d |ionary e|ntry ==| |00000c80| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 0d 0d |========|======..| |00000c90| 34 20 62 79 74 65 73 09 | 09 68 61 73 68 65 64 20 |4 bytes.|.hashed | |00000ca0| 6e 61 6d 65 0d 34 20 62 | 79 74 65 73 09 09 6c 69 |name.4 b|ytes..li| |00000cb0| 6e 6b 20 74 6f 20 70 72 | 65 76 20 69 76 61 72 20 |nk to pr|ev ivar | |00000cc0| 64 69 63 20 65 6e 74 72 | 79 20 28 72 65 6c 61 74 |dic entr|y (relat| |00000cd0| 69 76 65 20 61 64 64 72 | 29 0d 34 20 62 79 74 65 |ive addr|).4 byte| |00000ce0| 73 09 09 63 6c 61 73 73 | 20 70 6f 69 6e 74 65 72 |s..class| pointer| |00000cf0| 20 28 72 65 6c 6f 63 61 | 74 61 62 6c 65 29 0d 32 | (reloca|table).2| |00000d00| 20 62 79 74 65 73 09 09 | 6f 66 66 73 65 74 20 6f | bytes..|offset o| |00000d10| 66 20 74 68 69 73 20 69 | 76 61 72 27 73 20 64 61 |f this i|var's da| |00000d20| 74 61 20 66 72 6f 6d 20 | 74 68 65 20 62 61 73 65 |ta from |the base| |00000d30| 20 61 64 64 72 20 6f 66 | 20 74 68 65 20 63 6c 61 | addr of| the cla| |00000d40| 73 73 0d 32 20 62 79 74 | 65 73 09 09 6e 75 6d 62 |ss.2 byt|es..numb| |00000d50| 65 72 20 6f 66 20 65 6c | 65 6d 65 6e 74 73 20 69 |er of el|ements i| |00000d60| 66 20 69 6e 64 65 78 65 | 64 2c 20 6f 72 20 7a 65 |f indexe|d, or ze| |00000d70| 72 6f 20 69 66 20 6e 6f | 74 0d 32 20 62 79 74 65 |ro if no|t.2 byte| |00000d80| 73 09 09 66 6c 61 67 73 | 0d 0d 46 6c 61 67 20 62 |s..flags|..Flag b| |00000d90| 69 74 73 3a 20 28 7a 65 | 72 6f 20 69 73 20 72 69 |its: (ze|ro is ri| |00000da0| 67 68 74 6d 6f 73 74 20 | 2d 20 77 68 61 74 20 77 |ghtmost |- what w| |00000db0| 69 6c 6c 20 77 65 20 64 | 6f 20 6f 6e 20 50 6f 77 |ill we d|o on Pow| |00000dc0| 65 72 50 43 3f 29 0d 0d | 62 69 74 20 30 09 09 31 |erPC?)..|bit 0..1| |00000dd0| 20 3d 20 69 76 61 72 20 | 67 65 74 73 20 61 6e 20 | = ivar |gets an | |00000de0| 6f 62 6a 65 63 74 20 68 | 65 61 64 65 72 0d 62 69 |object h|eader.bi| |00000df0| 74 20 31 09 09 31 20 3d | 20 74 68 69 73 20 69 73 |t 1..1 =| this is| |00000e00| 20 61 20 73 74 61 74 69 | 63 20 69 76 61 72 0d 62 | a stati|c ivar.b| |00000e10| 69 74 20 32 09 09 31 20 | 3d 20 74 68 69 73 20 69 |it 2..1 |= this i| |00000e20| 73 20 61 20 70 75 62 6c | 69 63 20 69 76 61 72 0d |s a publ|ic ivar.| |00000e30| 0d 4e 6f 74 65 3a 20 61 | 6c 74 68 6f 75 67 68 20 |.Note: a|lthough | |00000e40| 69 6e 64 65 78 65 64 20 | 6f 62 6a 65 63 74 73 20 |indexed |objects | |00000e50| 63 61 6e 20 68 61 76 65 | 20 32 5e 5e 33 32 20 65 |can have| 2^^32 e| |00000e60| 6c 65 6d 65 6e 74 73 2c | 20 77 65 20 61 72 65 0d |lements,| we are.| |00000e70| 61 73 73 75 6d 69 6e 67 | 20 74 68 61 74 20 61 6e |assuming| that an| |00000e80| 20 69 76 61 72 20 63 61 | 6e 27 74 20 68 61 76 65 | ivar ca|n't have| |00000e90| 20 6d 6f 72 65 20 74 68 | 61 6e 20 36 34 4b 20 65 | more th|an 64K e| |00000ea0| 6c 65 6d 65 6e 74 73 2e | 20 20 54 68 69 73 20 69 |lements.| This i| |00000eb0| 73 0d 62 65 63 61 75 73 | 65 20 77 65 20 61 72 65 |s.becaus|e we are| |00000ec0| 20 6c 69 6d 69 74 69 6e | 67 20 74 68 65 20 6d 61 | limitin|g the ma| |00000ed0| 78 69 6d 75 6d 20 69 76 | 61 72 20 6c 65 6e 67 74 |ximum iv|ar lengt| |00000ee0| 68 20 6f 66 20 61 20 63 | 6c 61 73 73 20 74 6f 20 |h of a c|lass to | |00000ef0| 36 34 4b 20 62 79 74 65 | 73 2c 0d 77 68 69 63 68 |64K byte|s,.which| |00000f00| 20 69 73 20 61 20 73 74 | 72 69 63 74 65 72 20 63 | is a st|ricter c| |00000f10| 6f 6e 64 69 74 69 6f 6e | 2e 20 20 57 6f 75 6c 64 |ondition|. Would| |00000f20| 20 61 6e 79 62 6f 64 79 | 20 77 61 6e 74 20 61 20 | anybody| want a | |00000f30| 6c 6f 6e 67 65 72 20 69 | 76 61 72 20 74 68 61 6e |longer i|var than| |00000f40| 0d 74 68 69 73 3f 3f 0d | 0d 09 09 3d 3d 3d 3d 3d |.this??.|...=====| |00000f50| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 20 20 4d 65 74 68 6f |========|= Metho| |00000f60| 64 20 64 69 63 74 69 6f | 6e 61 72 79 20 65 6e 74 |d dictio|nary ent| |00000f70| 72 79 20 20 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |ry ====|========| |00000f80| 3d 3d 3d 3d 0d 0d 34 20 | 62 79 74 65 73 09 09 68 |====..4 |bytes..h| |00000f90| 61 73 68 65 64 20 6e 61 | 6d 65 0d 34 20 62 79 74 |ashed na|me.4 byt| |00000fa0| 65 73 09 09 6c 69 6e 6b | 20 74 6f 20 70 72 65 76 |es..link| to prev| |00000fb0| 20 6d 65 74 68 6f 64 20 | 64 69 63 20 65 6e 74 72 | method |dic entr| |00000fc0| 79 20 28 72 65 6c 61 74 | 69 76 65 20 61 64 64 72 |y (relat|ive addr| |00000fd0| 29 0d 32 20 62 79 74 65 | 73 09 09 66 6c 61 67 73 |).2 byte|s..flags| |00000fe0| 0d 0d 09 28 6d 65 74 68 | 6f 64 20 63 6f 64 65 20 |...(meth|od code | |00000ff0| 66 6f 6c 6c 6f 77 73 20 | 2d 20 74 68 69 73 20 69 |follows |- this i| |00001000| 73 20 74 68 65 20 6d 65 | 74 68 6f 64 27 73 20 63 |s the me|thod's c| |00001010| 66 61 20 68 65 72 65 29 | 0d 0d 46 6c 61 67 20 62 |fa here)|..Flag b| |00001020| 69 74 73 3a 0d 0d 62 69 | 74 20 30 09 09 31 20 3d |its:..bi|t 0..1 =| |00001030| 20 70 72 69 76 61 74 65 | 20 6d 65 74 68 6f 64 20 | private| method | |00001040| 28 6e 6f 74 65 20 6f 74 | 68 65 72 20 77 61 79 20 |(note ot|her way | |00001050| 72 6f 75 6e 64 20 74 6f | 20 69 76 61 72 73 20 2d |round to| ivars -| |00001060| 20 77 65 27 72 65 20 75 | 73 69 6e 67 0d 09 09 09 | we're u|sing....| |00001070| 09 31 20 66 6f 72 20 74 | 68 65 20 75 6e 75 73 75 |.1 for t|he unusu| |00001080| 61 6c 20 63 61 73 65 29 | 0d 62 69 74 20 37 09 09 |al case)|.bit 7..| |00001090| 31 20 3d 20 74 68 65 72 | 65 27 73 20 61 20 63 61 |1 = ther|e's a ca| |000010a0| 6c 6c 46 69 72 73 74 20 | 61 6e 64 2f 6f 72 20 63 |llFirst |and/or c| |000010b0| 61 6c 6c 4c 61 73 74 20 | 6d 65 74 68 6f 64 0d 0d |allLast |method..| |000010c0| 0d 09 09 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |...=====|========| |000010d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000010e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000010f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 0d 2a 29 |========|=====.*)| |00001100| 0d 0d 0d 3a 20 78 78 20 | 20 64 62 20 3b 09 09 09 |...: xx | db ;...| |00001110| 5c 20 75 73 65 66 75 6c | 21 0d 0d 09 32 36 09 63 |\ useful|!...26.c| |00001120| 6f 6e 73 74 61 6e 74 09 | 73 74 61 74 69 63 5f 69 |onstant.|static_i| |00001130| 76 61 72 5f 6f 66 66 73 | 0d 09 09 09 09 09 09 09 |var_offs|........| |00001140| 5c 20 74 68 65 20 6f 66 | 66 73 65 74 20 66 72 6f |\ the of|fset fro| |00001150| 6d 20 74 68 65 20 73 74 | 61 72 74 20 6f 66 20 74 |m the st|art of t| |00001160| 68 65 20 69 76 61 72 20 | 64 69 63 0d 09 09 09 09 |he ivar |dic.....| |00001170| 09 09 09 5c 20 20 69 6e | 66 6f 20 66 6f 72 20 61 |...\ in|fo for a| |00001180| 20 73 74 61 74 69 63 20 | 69 76 61 72 2c 20 74 6f | static |ivar, to| |00001190| 20 74 68 65 20 69 76 61 | 72 27 73 20 64 61 74 61 | the iva|r's data| |000011a0| 2e 0d 09 09 09 09 09 09 | 09 5c 20 20 54 68 65 20 |........|.\ The | |000011b0| 69 76 61 72 20 69 6e 66 | 6f 20 69 73 20 31 38 20 |ivar inf|o is 18 | |000011c0| 62 79 74 65 73 20 6c 6f | 6e 67 2c 20 74 68 65 6e |bytes lo|ng, then| |000011d0| 20 74 68 65 0d 09 09 09 | 09 09 09 09 5c 20 20 69 | the....|....\ i| |000011e0| 76 61 72 20 69 73 20 69 | 6e 73 74 61 6e 74 69 61 |var is i|nstantia| |000011f0| 74 65 64 20 69 6d 6d 65 | 64 69 61 74 65 6c 79 2c |ted imme|diately,| |00001200| 20 77 69 74 68 20 74 68 | 65 0d 09 09 09 09 09 09 | with th|e.......| |00001210| 09 5c 20 20 75 73 75 61 | 6c 20 38 2d 62 79 74 65 |.\ usua|l 8-byte| |00001220| 20 6f 62 6a 65 63 74 20 | 68 65 61 64 65 72 2e 20 | object |header. | |00001230| 20 54 6f 74 61 6c 3a 20 | 32 36 2e 0d 0d 09 30 09 | Total: |26....0.| |00001240| 76 61 6c 75 65 09 50 55 | 42 2f 50 52 49 56 09 5c |value.PU|B/PRIV.\| |00001250| 20 2d 31 20 70 72 69 76 | 61 74 65 2c 20 31 20 70 | -1 priv|ate, 1 p| |00001260| 75 62 6c 69 63 2c 20 30 | 20 64 65 66 61 75 6c 74 |ublic, 0| default| |00001270| 20 2d 20 66 6f 72 20 69 | 76 61 72 73 20 61 6e 64 | - for i|vars and| |00001280| 20 6d 65 74 68 6f 64 73 | 0d 66 61 6c 73 65 09 76 | methods|.false.v| |00001290| 61 6c 75 65 09 53 54 41 | 54 49 43 3f 09 09 5c 20 |alue.STA|TIC?..\ | |000012a0| 74 72 75 65 20 69 66 20 | 66 6f 6c 6c 6f 77 69 6e |true if |followin| |000012b0| 67 20 69 76 61 72 73 20 | 61 72 65 20 74 6f 20 62 |g ivars |are to b| |000012c0| 65 20 73 74 61 74 69 63 | 0d 20 20 20 20 30 09 76 |e static|. 0.v| |000012d0| 61 6c 75 65 09 5e 43 4f | 4d 50 5f 43 4c 41 53 53 |alue.^CO|MP_CLASS| |000012e0| 09 5c 20 61 64 64 72 20 | 6f 66 20 74 68 65 20 63 |.\ addr |of the c| |000012f0| 6c 61 73 73 20 77 65 27 | 72 65 20 63 75 72 72 65 |lass we'|re curre| |00001300| 6e 74 6c 79 20 63 6f 6d | 70 69 6c 69 6e 67 0d 20 |ntly com|piling. | |00001310| 20 20 20 30 09 76 61 6c | 75 65 09 50 49 56 41 52 | 0.val|ue.PIVAR| |00001320| 09 09 5c 20 68 61 73 68 | 65 64 20 6e 61 6d 65 20 |..\ hash|ed name | |00001330| 6f 66 20 61 6e 79 20 70 | 75 62 6c 69 63 20 69 76 |of any p|ublic iv| |00001340| 61 72 20 77 65 27 72 65 | 20 61 63 63 65 73 73 69 |ar we're| accessi| |00001350| 6e 67 0d 20 20 20 20 30 | 09 76 61 6c 75 65 09 50 |ng. 0|.value.P| |00001360| 49 56 53 45 4c 09 09 5c | 20 68 61 73 68 65 64 20 |IVSEL..\| hashed | |00001370| 73 65 6c 65 63 74 6f 72 | 20 6f 66 20 61 6e 79 20 |selector| of any | |00001380| 6d 73 67 20 62 65 69 6e | 67 20 73 65 6e 74 20 74 |msg bein|g sent t| |00001390| 6f 0d 20 20 20 20 09 09 | 09 09 09 09 5c 20 20 74 |o. ..|....\ t| |000013a0| 6f 20 61 20 70 75 62 6c | 69 63 20 69 76 61 72 0d |o a publ|ic ivar.| |000013b0| 0d 09 30 09 76 61 6c 75 | 65 09 4e 45 57 4f 42 4a |..0.valu|e.NEWOBJ| |000013c0| 45 43 54 09 5c 20 61 64 | 64 72 20 6f 66 20 6f 62 |ECT.\ ad|dr of ob| |000013d0| 6a 65 63 74 20 62 65 69 | 6e 67 20 63 72 65 61 74 |ject bei|ng creat| |000013e0| 65 64 0d 20 20 20 20 30 | 09 76 61 6c 75 65 09 23 |ed. 0|.value.#| |000013f0| 53 55 50 09 09 5c 20 6e | 75 6d 62 65 72 20 6f 66 |SUP..\ n|umber of| |00001400| 20 73 75 70 65 72 63 6c | 61 73 73 65 73 20 66 6f | supercl|asses fo| |00001410| 72 20 63 75 72 72 65 6e | 74 20 63 6c 61 73 73 0d |r curren|t class.| |00001420| 20 20 20 20 30 09 76 61 | 6c 75 65 09 53 55 50 45 | 0.va|lue.SUPE| |00001430| 52 53 5f 54 4f 5f 53 4b | 49 50 0d 09 30 09 76 61 |RS_TO_SK|IP..0.va| |00001440| 6c 75 65 09 49 4e 49 54 | 49 44 0d 0d 0d 76 61 72 |lue.INIT|ID...var| |00001450| 69 61 62 6c 65 20 4d 45 | 54 41 41 44 44 52 09 09 |iable ME|TAADDR..| |00001460| 09 5c 20 77 69 6c 6c 20 | 68 6f 6c 64 20 72 65 6c |.\ will |hold rel| |00001470| 6f 63 61 74 61 62 6c 65 | 20 61 64 64 72 65 73 73 |ocatable| address| |00001480| 20 6f 66 20 70 73 65 75 | 64 6f 63 6c 61 73 73 0d | of pseu|doclass.| |00001490| 09 09 09 09 09 09 09 5c | 20 20 4d 65 74 61 2e 20 |.......\| Meta. | |000014a0| 55 73 65 64 20 69 6e 20 | 4e 57 5f 49 56 53 45 54 |Used in |NW_IVSET| |000014b0| 55 50 20 74 6f 20 66 69 | 6e 64 20 69 66 20 65 6e |UP to fi|nd if en| |000014c0| 64 0d 09 09 09 09 09 09 | 09 5c 20 20 6f 66 20 73 |d.......|.\ of s| |000014d0| 75 70 65 72 63 6c 61 73 | 73 20 63 68 61 69 6e 20 |uperclas|s chain | |000014e0| 68 61 73 20 62 65 65 6e | 20 72 65 61 63 68 65 64 |has been| reached| |000014f0| 0d 0d 0d 5c 09 09 09 09 | 3d 3d 3d 3d 3d 3d 3d 3d |...\....|========| |00001500| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00001510| 3d 3d 3d 3d 3d 3d 3d 0d | 5c 09 09 09 09 09 09 55 |=======.|\......U| |00001520| 54 49 4c 49 54 59 20 57 | 4f 52 44 53 0d 5c 09 09 |TILITY W|ORDS.\..| |00001530| 09 09 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |..======|========| |00001540| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00001550| 3d 0d 0d 3a 20 50 52 49 | 56 41 54 45 09 09 2d 31 |=..: PRI|VATE..-1| |00001560| 20 2d 3e 20 70 75 62 2f | 70 72 69 76 20 20 3b 09 | -> pub/|priv ;.| |00001570| 09 5c 20 66 6f 6c 6c 6f | 77 69 6e 67 20 6d 65 74 |.\ follo|wing met| |00001580| 68 6f 64 73 20 61 6e 64 | 20 69 76 61 72 73 20 77 |hods and| ivars w| |00001590| 69 6c 6c 20 62 65 20 70 | 72 69 76 61 74 65 0d 3a |ill be p|rivate.:| |000015a0| 20 50 55 42 4c 49 43 09 | 09 20 31 20 2d 3e 20 70 | PUBLIC.|. 1 -> p| |000015b0| 75 62 2f 70 72 69 76 20 | 20 3b 09 09 5c 20 66 6f |ub/priv | ;..\ fo| |000015c0| 6c 6c 6f 77 69 6e 67 20 | 6d 65 74 68 6f 64 73 20 |llowing |methods | |000015d0| 61 6e 64 20 69 76 61 72 | 73 20 77 69 6c 6c 20 62 |and ivar|s will b| |000015e0| 65 20 70 75 62 6c 69 63 | 0d 0d 3a 20 45 4e 44 5f |e public|..: END_| |000015f0| 50 52 49 56 41 54 45 09 | 30 20 2d 3e 20 70 75 62 |PRIVATE.|0 -> pub| |00001600| 2f 70 72 69 76 20 20 3b | 09 09 5c 20 62 61 63 6b |/priv ;|..\ back| |00001610| 20 74 6f 20 74 68 65 20 | 64 65 66 61 75 6c 74 0d | to the |default.| |00001620| 3a 20 45 4e 44 5f 50 55 | 42 4c 49 43 09 30 20 2d |: END_PU|BLIC.0 -| |00001630| 3e 20 70 75 62 2f 70 72 | 69 76 20 20 3b 09 09 5c |> pub/pr|iv ;..\| |00001640| 20 64 69 74 74 6f 0d 0d | 0d 3a 20 58 09 62 6c 64 | ditto..|.: X.bld| |00001650| 20 20 31 32 33 20 20 3b | 09 09 09 09 5c 20 54 68 | 123 ;|....\ Th| |00001660| 65 20 31 32 33 20 62 6c | 6f 63 6b 73 20 6f 70 74 |e 123 bl|ocks opt| |00001670| 69 6d 69 7a 61 74 69 6f | 6e 21 0d 0d 27 20 78 20 |imizatio|n!..' x | |00001680| 40 20 20 66 6f 72 67 65 | 74 20 78 09 20 20 63 6f |@ forge|t x. co| |00001690| 6e 73 74 61 6e 74 09 43 | 4c 41 53 53 4d 4b 09 09 |nstant.C|LASSMK..| |000016a0| 5c 20 20 4a 53 52 20 20 | 62 6c 64 56 65 63 2d 62 |\ JSR |bldVec-b| |000016b0| 61 73 65 28 41 33 29 0d | 0d 3a 20 45 58 42 41 53 |ase(A3).|.: EXBAS| |000016c0| 45 09 24 20 34 45 39 32 | 20 20 77 2c 20 20 3b 09 |E.$ 4E92| w, ;.| |000016d0| 69 6d 6d 65 64 69 61 74 | 65 09 5c 20 20 4a 53 52 |immediat|e.\ JSR| |000016e0| 20 20 28 41 32 29 0d 0d | 3a 20 3e 4f 42 4a 20 20 | (A2)..|: >OBJ | |000016f0| 28 20 63 66 61 20 2d 2d | 20 5e 6f 62 6a 20 29 20 |( cfa --| ^obj ) | |00001700| 20 69 6e 6c 69 6e 65 7b | 20 38 20 2b 7d 20 20 3b | inline{| 8 +} ;| |00001710| 0d 3a 20 4f 42 4a 3e 20 | 20 28 20 5e 6f 62 6a 20 |.: OBJ> | ( ^obj | |00001720| 2d 2d 20 63 66 61 20 29 | 20 20 69 6e 6c 69 6e 65 |-- cfa )| inline| |00001730| 7b 20 38 20 2d 7d 20 20 | 3b 0d 09 09 09 5c 20 4e |{ 8 -} |;....\ N| |00001740| 6f 74 65 3a 20 77 65 20 | 64 6f 6e 27 74 20 75 73 |ote: we |don't us| |00001750| 65 20 3e 63 6c 61 73 73 | 20 68 65 72 65 2c 20 73 |e >class| here, s| |00001760| 69 6e 63 65 20 6f 62 6a | 3e 20 73 68 6f 75 6c 64 |ince obj|> should| |00001770| 6e 27 74 20 62 65 0d 09 | 09 09 5c 20 75 73 65 64 |n't be..|..\ used| |00001780| 20 66 6f 72 20 65 6d 62 | 65 64 64 65 64 20 6f 62 | for emb|edded ob| |00001790| 6a 65 63 74 73 2c 20 61 | 6e 64 20 69 74 20 69 73 |jects, a|nd it is| |000017a0| 20 75 73 65 64 20 64 75 | 72 69 6e 67 20 6f 62 6a | used du|ring obj| |000017b0| 0d 09 09 09 5c 20 62 75 | 69 6c 64 69 6e 67 20 77 |....\ bu|ilding w| |000017c0| 68 65 6e 20 74 68 65 20 | 5e 63 6c 61 73 73 20 69 |hen the |^class i| |000017d0| 73 6e 27 74 20 74 68 65 | 72 65 20 79 65 74 2e 0d |sn't the|re yet..| |000017e0| 0d 3a 20 43 48 4b 43 4c | 41 53 53 09 5c 20 28 20 |.: CHKCL|ASS.\ ( | |000017f0| 63 66 61 20 2d 2d 20 63 | 66 61 20 29 0d 09 63 6c |cfa -- c|fa )..cl| |00001800| 61 73 73 3f 20 20 3f 45 | 58 49 54 0d 09 2e 69 64 |ass? ?E|XIT...id| |00001810| 20 20 73 70 61 63 65 20 | 20 74 72 75 65 20 3f 65 | space | true ?e| |00001820| 72 72 6f 72 20 38 30 20 | 20 3b 0d 0d 3a 20 3f 3e |rror 80 | ;..: ?>| |00001830| 43 4c 41 53 53 20 20 20 | 28 20 5e 6f 62 6a 20 2d |CLASS |( ^obj -| |00001840| 2d 20 5e 63 6c 61 73 73 | 20 29 0d 09 3e 63 6c 61 |- ^class| )..>cla| |00001850| 73 73 20 20 64 75 70 20 | 30 3d 20 3f 65 72 72 6f |ss dup |0= ?erro| |00001860| 72 20 38 31 20 20 3b 09 | 09 5c 20 49 66 20 6e 6f |r 81 ;.|.\ If no| |00001870| 20 6c 65 67 61 6c 20 63 | 6c 61 73 73 20 70 74 72 | legal c|lass ptr| |00001880| 2c 20 70 72 6f 62 61 62 | 6c 79 0d 09 09 09 09 09 |, probab|ly......| |00001890| 09 09 09 09 5c 20 6e 6f | 74 20 61 6e 20 6f 62 6a |....\ no|t an obj| |000018a0| 20 61 64 64 72 20 61 74 | 20 61 6c 6c 21 0d 0d 5c | addr at| all!..\| |000018b0| 20 74 68 65 20 66 6f 6c | 6c 6f 77 69 6e 67 20 6f | the fol|lowing o| |000018c0| 66 66 73 65 74 73 20 72 | 65 66 65 72 20 74 6f 20 |ffsets r|efer to | |000018d0| 77 68 65 72 65 20 61 20 | 5e 63 6c 61 73 73 20 70 |where a |^class p| |000018e0| 6f 69 6e 74 73 2c 20 69 | 2e 65 2e 20 74 68 65 20 |oints, i|.e. the | |000018f0| 63 66 61 0d 5c 20 6f 66 | 20 74 68 65 20 63 6c 61 |cfa.\ of| the cla| |00001900| 73 73 2e 0d 0d 28 2a 09 | 4d 46 41 5f 6f 66 66 73 |ss...(*.|MFA_offs| |00001910| 65 74 20 70 69 63 6b 73 | 20 6f 6e 65 20 6f 66 20 |et picks| one of | |00001920| 74 68 65 20 38 20 6d 65 | 74 68 6f 64 20 74 68 72 |the 8 me|thod thr| |00001930| 65 61 64 73 2c 20 67 69 | 76 65 6e 20 61 20 73 65 |eads, gi|ven a se| |00001940| 6c 49 44 2e 0d 09 54 68 | 65 20 73 65 6c 49 44 20 |lID...Th|e selID | |00001950| 69 73 20 70 72 6f 62 61 | 62 6c 79 20 6e 6f 74 20 |is proba|bly not | |00001960| 76 65 72 79 20 72 61 6e | 64 6f 6d 20 69 6e 20 74 |very ran|dom in t| |00001970| 68 65 20 6c 6f 77 20 62 | 79 74 65 20 28 73 69 6e |he low b|yte (sin| |00001980| 63 65 0d 09 73 65 6c 65 | 63 74 6f 72 73 20 61 6c |ce..sele|ctors al| |00001990| 6c 20 65 6e 64 20 69 6e | 20 22 3a 22 2c 20 73 6f |l end in| ":", so| |000019a0| 20 77 65 20 68 61 73 68 | 20 69 74 20 61 20 6c 69 | we hash| it a li| |000019b0| 74 74 6c 65 20 6d 6f 72 | 65 20 74 68 65 6e 20 70 |ttle mor|e then p| |000019c0| 69 63 6b 0d 09 74 68 65 | 20 33 20 62 69 74 73 20 |ick..the| 3 bits | |000019d0| 66 72 6f 6d 20 74 68 65 | 20 72 65 73 75 6c 74 20 |from the| result | |000019e0| 77 68 69 63 68 20 61 72 | 65 20 61 6c 72 65 61 64 |which ar|e alread| |000019f0| 79 20 69 6e 20 74 68 65 | 20 72 69 67 68 74 20 70 |y in the| right p| |00001a00| 6f 73 69 74 69 6f 6e 2e | 0d 0d 09 4e 6f 74 65 3a |osition.|...Note:| |00001a10| 20 69 74 20 74 6f 6f 6b | 20 61 20 73 75 72 70 72 | it took| a surpr| |00001a20| 69 73 69 6e 67 20 61 6d | 6f 75 6e 74 20 6f 66 20 |ising am|ount of | |00001a30| 74 72 69 61 6c 20 61 6e | 64 20 65 72 72 6f 72 20 |trial an|d error | |00001a40| 74 6f 20 67 65 74 20 61 | 0d 09 67 6f 6f 64 20 65 |to get a|..good e| |00001a50| 78 74 72 61 20 68 61 73 | 68 20 66 6f 72 20 74 68 |xtra has|h for th| |00001a60| 69 73 20 70 61 72 74 69 | 63 75 6c 61 72 20 75 73 |is parti|cular us| |00001a70| 65 21 0d 2a 29 0d 0d 3a | 20 4d 46 41 5f 6f 66 66 |e!.*)..:| MFA_off| |00001a80| 73 65 74 20 20 28 20 73 | 65 6c 49 44 20 5e 63 6c |set ( s|elID ^cl| |00001a90| 61 73 73 20 2d 2d 20 73 | 65 6c 49 44 20 5e 63 6c |ass -- s|elID ^cl| |00001aa0| 61 73 73 20 4d 46 41 5f | 6f 66 66 73 65 74 20 29 |ass MFA_|offset )| |00001ab0| 0d 09 6f 76 65 72 0d 09 | 64 75 70 20 35 20 3e 3e |..over..|dup 5 >>| |00001ac0| 20 2b 0d 09 24 20 31 43 | 20 61 6e 64 20 20 34 2b | +..$ 1C| and 4+| |00001ad0| 20 20 3b 0d 0d 3a 20 4d | 46 41 20 20 28 20 53 65 | ;..: M|FA ( Se| |00001ae0| 6c 49 44 20 5e 43 6c 61 | 73 73 20 2d 2d 20 53 65 |lID ^Cla|ss -- Se| |00001af0| 6c 49 44 20 4d 46 41 20 | 29 20 20 4d 46 41 5f 6f |lID MFA |) MFA_o| |00001b00| 66 66 73 65 74 20 20 2b | 20 3b 0d 0d 33 36 09 63 |ffset +| ;..36.c| |00001b10| 6f 6e 73 74 61 6e 74 09 | 49 46 41 5f 6f 66 66 73 |onstant.|IFA_offs| |00001b20| 65 74 0d 0d 3a 20 49 46 | 41 09 69 6e 6c 69 6e 65 |et..: IF|A.inline| |00001b30| 7b 20 49 46 41 5f 6f 66 | 66 73 65 74 20 2b 7d 20 |{ IFA_of|fset +} | |00001b40| 3b 09 5c 20 69 76 61 72 | 20 6c 69 6e 6b 0d 3a 20 |;.\ ivar| link.: | |00001b50| 44 46 41 09 69 6e 6c 69 | 6e 65 7b 20 34 30 20 2b |DFA.inli|ne{ 40 +| |00001b60| 7d 09 3b 09 09 5c 20 44 | 61 74 61 20 6c 65 6e 20 |}.;..\ D|ata len | |00001b70| 28 32 20 62 79 74 65 73 | 29 2c 0d 20 09 09 09 09 |(2 bytes|),. ....| |00001b80| 09 09 09 09 5c 20 20 77 | 69 64 74 68 20 6f 66 20 |....\ w|idth of | |00001b90| 69 6e 64 65 78 65 64 20 | 65 6c 74 73 20 28 32 20 |indexed |elts (2 | |00001ba0| 62 79 74 65 73 29 0d 3a | 20 46 46 41 09 69 6e 6c |bytes).:| FFA.inl| |00001bb0| 69 6e 65 7b 20 34 34 20 | 2b 7d 09 3b 09 09 5c 20 |ine{ 44 |+}.;..\ | |00001bc0| 46 6c 61 67 73 20 28 32 | 20 62 79 74 65 73 29 0d |Flags (2| bytes).| |00001bd0| 3a 20 58 4f 46 46 41 09 | 69 6e 6c 69 6e 65 7b 20 |: XOFFA.|inline{ | |00001be0| 34 36 20 2b 7d 09 3b 09 | 09 5c 20 69 6e 64 65 78 |46 +}.;.|.\ index| |00001bf0| 69 6e 67 20 6f 66 66 73 | 65 74 20 66 6f 72 20 6c |ing offs|et for l| |00001c00| 61 72 67 65 5f 6f 62 6a | 5f 61 72 72 61 79 73 20 |arge_obj|_arrays | |00001c10| 28 32 20 62 79 74 65 73 | 29 0d 3a 20 53 46 41 09 |(2 bytes|).: SFA.| |00001c20| 69 6e 6c 69 6e 65 7b 20 | 34 38 20 2b 7d 09 3b 09 |inline{ |48 +}.;.| |00001c30| 09 5c 20 53 75 70 65 72 | 63 6c 61 73 73 20 4e 2d |.\ Super|class N-| |00001c40| 77 61 79 20 73 74 61 72 | 74 73 20 68 65 72 65 0d |way star|ts here.| |00001c50| 0d 34 38 09 63 6f 6e 73 | 74 61 6e 74 09 63 6c 61 |.48.cons|tant.cla| |00001c60| 73 73 53 69 7a 65 09 09 | 5c 20 74 6f 74 61 6c 20 |ssSize..|\ total | |00001c70| 73 69 7a 65 20 6f 66 20 | 63 6c 61 73 73 20 69 6e |size of |class in| |00001c80| 66 6f 20 75 70 20 74 6f | 20 4e 2d 77 61 79 0d 0d |fo up to| N-way..| |00001c90| 0d 5c 20 3a 20 47 45 54 | 44 4c 45 4e 09 09 5c 20 |.\ : GET|DLEN..\ | |00001ca0| 28 20 5e 6f 62 6a 20 2d | 2d 20 6e 20 29 20 20 47 |( ^obj -|- n ) G| |00001cb0| 65 74 73 20 6c 65 6e 67 | 74 68 20 6f 66 20 6f 62 |ets leng|th of ob| |00001cc0| 6a 65 63 74 27 73 20 6e | 61 6d 65 64 20 69 76 61 |ject's n|amed iva| |00001cd0| 72 73 0d 5c 09 3f 3e 63 | 6c 61 73 73 20 64 66 61 |rs.\.?>c|lass dfa| |00001ce0| 20 77 40 20 20 3b 0d 0d | 3a 20 28 5e 44 4c 45 4e | w@ ;..|: (^DLEN| |00001cf0| 29 09 5c 20 28 20 5e 6f | 62 6a 20 2d 2d 20 5e 64 |).\ ( ^o|bj -- ^d| |00001d00| 61 74 61 6c 65 6e 20 29 | 20 20 54 68 69 73 20 69 |atalen )| This i| |00001d10| 73 20 61 20 6c 6f 77 2d | 6c 65 76 65 6c 20 77 6f |s a low-|level wo| |00001d20| 72 64 20 77 68 69 63 68 | 20 73 68 6f 75 6c 64 0d |rd which| should.| |00001d30| 09 09 09 5c 20 20 6e 6f | 72 6d 61 6c 6c 79 20 6f |...\ no|rmally o| |00001d40| 6e 6c 79 20 62 65 20 75 | 73 65 64 20 69 6e 20 74 |nly be u|sed in t| |00001d50| 68 65 20 4d 6f 70 73 20 | 73 79 73 74 65 6d 20 73 |he Mops |system s| |00001d60| 74 75 66 66 2e 20 20 4e | 6f 74 65 20 69 74 0d 09 |tuff. N|ote it..| |00001d70| 09 09 5c 20 20 74 61 6b | 65 73 20 5e 6f 62 6a 2c |..\ tak|es ^obj,| |00001d80| 20 6e 6f 74 20 5e 63 6c | 61 73 73 2c 20 61 6e 64 | not ^cl|ass, and| |00001d90| 20 69 74 20 64 6f 65 73 | 6e 27 74 20 64 6f 20 61 | it does|n't do a| |00001da0| 20 6d 6f 64 75 6c 65 20 | 63 68 65 63 6b 0d 09 09 | module |check...| |00001db0| 09 5c 20 20 2d 20 69 74 | 20 61 73 73 75 6d 65 73 |.\ - it| assumes| |00001dc0| 20 74 68 65 20 63 6c 61 | 73 73 20 69 73 20 69 6e | the cla|ss is in| |00001dd0| 20 74 68 65 20 73 61 6d | 65 20 73 65 67 6d 65 6e | the sam|e segmen| |00001de0| 74 20 61 73 20 74 68 65 | 20 6f 62 6a 65 63 74 2e |t as the| object.| |00001df0| 0d 09 3f 3e 63 6c 61 73 | 73 20 64 66 61 20 20 3b |..?>clas|s dfa ;| |00001e00| 0d 0d 0d 3a 20 28 44 4c | 45 4e 26 58 57 49 44 29 |...: (DL|EN&XWID)| |00001e10| 09 28 20 5e 63 6c 61 73 | 73 20 2d 2d 20 64 6c 65 |.( ^clas|s -- dle| |00001e20| 6e 20 78 77 69 64 20 29 | 09 5c 20 41 73 73 75 6d |n xwid )|.\ Assum| |00001e30| 65 73 20 5e 63 6c 61 73 | 73 20 69 73 20 74 68 65 |es ^clas|s is the| |00001e40| 20 74 72 75 65 20 63 6c | 61 73 73 0d 09 09 64 66 | true cl|ass...df| |00001e50| 61 20 64 75 70 20 20 77 | 40 20 20 73 77 61 70 20 |a dup w|@ swap | |00001e60| 20 32 2b 20 77 40 20 20 | 3b 09 09 5c 20 20 61 64 | 2+ w@ |;..\ ad| |00001e70| 64 72 65 73 2c 20 6e 6f | 74 20 6d 61 69 6e 20 64 |dres, no|t main d| |00001e80| 69 63 74 69 6f 6e 61 72 | 79 20 61 64 64 72 65 73 |ictionar|y addres| |00001e90| 73 0d 09 09 09 09 09 09 | 09 09 09 09 5c 20 20 6f |s.......|....\ o| |00001ea0| 66 20 65 78 70 6f 72 74 | 65 64 20 63 6c 61 73 73 |f export|ed class| |00001eb0| 20 69 6e 20 6d 6f 64 75 | 6c 65 0d 09 09 09 09 09 | in modu|le......| |00001ec0| 09 09 09 09 09 5c 20 4f | 6e 6c 79 20 69 6e 74 65 |.....\ O|nly inte| |00001ed0| 6e 64 65 64 20 66 6f 72 | 20 69 6e 74 65 72 6e 61 |nded for| interna| |00001ee0| 6c 20 75 73 65 21 0d 0d | 3a 20 44 4c 45 4e 26 58 |l use!..|: DLEN&X| |00001ef0| 57 49 44 09 09 28 20 5e | 63 6c 61 73 73 20 2d 2d |WID..( ^|class --| |00001f00| 20 64 6c 65 6e 20 78 77 | 69 64 20 29 0d 09 09 3f | dlen xw|id )...?| |00001f10| 3e 63 6c 61 73 73 49 6e | 4d 6f 64 0d 09 09 28 64 |>classIn|Mod...(d| |00001f20| 6c 65 6e 26 78 77 69 64 | 29 0d 09 09 3f 75 6e 48 |len&xwid|)...?unH| |00001f30| 6f 6c 64 4d 6f 64 20 20 | 3b 0d 0d 0d 3a 20 44 4c |oldMod |;...: DL| |00001f40| 45 4e 09 64 6c 65 6e 26 | 78 77 69 64 20 20 64 72 |EN.dlen&|xwid dr| |00001f50| 6f 70 20 20 3b 0d 3a 20 | 58 57 49 44 09 64 6c 65 |op ;.: |XWID.dle| |00001f60| 6e 26 78 77 69 64 20 20 | 6e 69 70 20 20 20 3b 0d |n&xwid |nip ;.| |00001f70| 0d 3a 20 49 56 41 52 4c | 45 4e 09 70 6f 73 74 70 |.: IVARL|EN.postp| |00001f80| 6f 6e 65 20 64 6c 65 6e | 20 20 3b 09 69 6d 6d 65 |one dlen| ;.imme| |00001f90| 64 69 61 74 65 09 09 5c | 20 61 6e 20 61 6c 69 61 |diate..\| an alia| |00001fa0| 73 20 66 6f 72 20 64 6c | 65 6e 0d 0d 3a 20 4f 42 |s for dl|en..: OB| |00001fb0| 4a 4c 45 4e 09 5c 20 28 | 20 2d 2d 20 6f 62 6a 6c |JLEN.\ (| -- objl| |00001fc0| 65 6e 20 29 20 20 43 6f | 6d 70 75 74 65 73 20 74 |en ) Co|mputes t| |00001fd0| 6f 74 61 6c 20 64 61 74 | 61 20 6c 65 6e 67 74 68 |otal dat|a length| |00001fe0| 20 6f 66 20 63 75 72 72 | 65 6e 74 20 6f 62 6a 65 | of curr|ent obje| |00001ff0| 63 74 2e 0d 0d 09 5e 62 | 61 73 65 20 28 5e 64 6c |ct....^b|ase (^dl| |00002000| 65 6e 29 20 20 64 75 70 | 20 77 40 09 09 5c 20 69 |en) dup| w@..\ i| |00002010| 76 61 72 20 6c 65 6e 0d | 09 73 77 61 70 20 32 2b |var len.|.swap 2+| |00002020| 20 77 40 20 20 3f 64 75 | 70 0d 09 49 46 09 09 09 | w@ ?du|p..IF...| |00002030| 5c 20 77 65 27 72 65 20 | 69 6e 64 65 78 65 64 0d |\ we're |indexed.| |00002040| 09 09 69 64 78 42 61 73 | 65 20 34 2d 20 40 20 31 |..idxBas|e 4- @ 1| |00002050| 2b 20 20 2a 20 2b 09 5c | 20 61 64 64 20 6c 65 6e |+ * +.\| add len| |00002060| 20 6f 66 20 69 6e 64 65 | 78 65 64 20 65 6c 65 6d | of inde|xed elem| |00002070| 65 6e 74 73 0d 09 09 36 | 20 2b 09 09 09 09 09 09 |ents...6| +......| |00002080| 5c 20 20 61 6e 64 20 6c | 65 6e 20 6f 66 20 69 6e |\ and l|en of in| |00002090| 64 65 78 65 64 20 68 65 | 61 64 65 72 0d 09 54 48 |dexed he|ader..TH| |000020a0| 45 4e 0d 3b 0d 0d 0d 3a | 20 3f 3e 4d 41 49 4e 44 |EN.;...:| ?>MAIND| |000020b0| 49 43 20 20 7b 20 5e 63 | 6c 61 73 73 20 2d 2d 20 |IC { ^c|lass -- | |000020c0| 27 5e 63 6c 61 73 73 20 | 7d 0d 09 09 5c 20 49 66 |'^class |}...\ If| |000020d0| 20 5e 63 6c 61 73 73 20 | 69 73 20 65 78 70 6f 72 | ^class |is expor| |000020e0| 74 65 64 20 66 72 6f 6d | 20 61 20 6d 6f 64 75 6c |ted from| a modul| |000020f0| 65 2c 20 77 65 20 72 65 | 74 75 72 6e 20 74 68 65 |e, we re|turn the| |00002100| 20 6d 61 69 6e 20 64 69 | 63 0d 09 09 5c 20 65 71 | main di|c...\ eq| |00002110| 75 69 76 61 6c 65 6e 74 | 2e 20 20 49 66 20 69 74 |uivalent|. If it| |00002120| 27 73 20 6e 6f 74 20 65 | 78 70 6f 72 74 65 64 2c |'s not e|xported,| |00002130| 20 77 65 20 72 65 74 75 | 72 6e 20 69 74 20 75 6e | we retu|rn it un| |00002140| 63 68 61 6e 67 65 64 2e | 0d 09 09 5c 20 57 65 20 |changed.|...\ We | |00002150| 6e 65 65 64 20 74 68 69 | 73 20 77 6f 72 64 20 73 |need thi|s word s| |00002160| 69 6e 63 65 20 66 6f 72 | 20 65 78 70 6f 72 74 65 |ince for| exporte| |00002170| 64 20 63 6c 61 73 73 65 | 73 2c 20 77 65 20 6e 65 |d classe|s, we ne| |00002180| 65 64 20 74 6f 20 75 73 | 65 20 74 68 65 0d 09 09 |ed to us|e the...| |00002190| 5c 20 69 6d 70 6f 72 74 | 65 64 20 61 64 64 72 65 |\ import|ed addre| |000021a0| 73 73 20 28 69 6e 20 74 | 68 65 20 6d 61 69 6e 20 |ss (in t|he main | |000021b0| 64 69 63 74 69 6f 6e 61 | 72 79 29 20 61 73 20 74 |dictiona|ry) as t| |000021c0| 68 65 20 63 6c 61 73 73 | 20 70 6f 69 6e 74 65 72 |he class| pointer| |000021d0| 0d 09 09 5c 20 69 6e 20 | 61 20 6e 65 77 20 6f 62 |...\ in |a new ob| |000021e0| 6a 65 63 74 20 6f 72 20 | 61 6e 20 69 76 61 72 20 |ject or |an ivar | |000021f0| 64 69 63 20 65 6e 74 72 | 79 20 28 73 6f 20 74 68 |dic entr|y (so th| |00002200| 61 74 20 74 68 65 20 6d | 6f 64 75 6c 65 20 77 69 |at the m|odule wi| |00002210| 6c 6c 20 62 65 0d 09 09 | 5c 20 69 6e 76 6f 6b 65 |ll be...|\ invoke| |00002220| 64 20 70 72 6f 70 65 72 | 6c 79 20 77 68 65 6e 20 |d proper|ly when | |00002230| 61 20 6d 65 74 68 6f 64 | 20 69 73 20 73 65 6e 74 |a method| is sent| |00002240| 20 74 6f 20 74 68 65 20 | 6f 62 6a 65 63 74 2e 0d | to the |object..| |00002250| 0d 09 5e 63 6c 61 73 73 | 20 66 66 61 20 31 2b 20 |..^class| ffa 1+ | |00002260| 31 20 62 74 65 73 74 0d | 09 49 46 09 09 5e 63 6c |1 btest.|.IF..^cl| |00002270| 61 73 73 20 3e 6e 61 6d | 65 20 6e 3e 63 6f 75 6e |ass >nam|e n>coun| |00002280| 74 20 73 66 69 6e 64 20 | 64 72 6f 70 0d 09 45 4c |t sfind |drop..EL| |00002290| 53 45 09 5e 63 6c 61 73 | 73 0d 09 54 48 45 4e 20 |SE.^clas|s..THEN | |000022a0| 20 3b 0d 0d 0d 3a 20 4c | 41 52 47 45 5f 4f 42 4a | ;...: L|ARGE_OBJ| |000022b0| 5f 41 52 52 41 59 5f 43 | 48 45 43 4b 20 20 7b 20 |_ARRAY_C|HECK { | |000022c0| 5e 63 6c 61 73 73 20 6f | 66 66 73 20 5c 20 78 6f |^class o|ffs \ xo| |000022d0| 66 66 73 20 20 2d 2d 20 | 6f 66 66 73 20 78 64 69 |ffs -- |offs xdi| |000022e0| 73 70 6c 2d 6f 66 66 73 | 20 7d 0d 0d 5c 20 46 6f |spl-offs| }..\ Fo| |000022f0| 6c 6c 6f 77 69 6e 67 20 | 3c 66 69 6e 64 6d 3e 20 |llowing |<findm> | |00002300| 6f 72 20 3c 49 56 66 69 | 6e 64 6d 3e 2c 20 77 65 |or <IVfi|ndm>, we| |00002310| 20 63 68 65 63 6b 20 69 | 66 20 74 68 69 73 20 69 | check i|f this i| |00002320| 73 20 61 20 6c 61 72 67 | 65 5f 6f 62 6a 5f 61 72 |s a larg|e_obj_ar| |00002330| 72 61 79 2c 0d 5c 20 20 | 69 6e 20 77 68 69 63 68 |ray,.\ |in which| |00002340| 20 63 61 73 65 20 77 65 | 20 6d 69 67 68 74 20 68 | case we| might h| |00002350| 61 76 65 20 74 6f 20 6d | 61 70 20 74 68 65 20 6f |ave to m|ap the o| |00002360| 62 6a 2f 69 76 61 72 20 | 69 6e 74 6f 20 74 68 65 |bj/ivar |into the| |00002370| 20 69 6e 64 65 78 65 64 | 20 61 72 65 61 3a 0d 0d | indexed| area:..| |00002380| 09 5e 63 6c 61 73 73 20 | 78 6f 66 66 61 20 77 40 |.^class |xoffa w@| |00002390| 20 20 2d 3e 20 78 6f 66 | 66 73 09 5c 20 6f 66 66 | -> xof|fs.\ off| |000023a0| 73 20 77 68 65 72 65 20 | 72 65 6d 61 70 70 69 6e |s where |remappin| |000023b0| 67 20 65 6e 64 73 20 2d | 20 61 72 65 20 77 65 20 |g ends -| are we | |000023c0| 62 65 66 6f 72 65 20 74 | 68 61 74 3f 0d 09 5e 63 |before t|hat?..^c| |000023d0| 6c 61 73 73 20 73 65 61 | 72 63 68 65 64 43 6c 61 |lass sea|rchedCla| |000023e0| 73 73 20 3c 3e 0d 09 6f | 66 66 73 20 78 6f 66 66 |ss <>..o|ffs xoff| |000023f0| 73 20 3c 20 20 61 6e 64 | 0d 09 49 46 09 09 09 5c |s < and|..IF...\| |00002400| 20 79 65 73 20 2d 20 72 | 65 6d 61 70 70 69 6e 67 | yes - r|emapping| |00002410| 20 6e 65 63 65 73 73 61 | 72 79 2e 20 20 52 65 74 | necessa|ry. Ret| |00002420| 75 72 6e 20 6f 66 66 73 | 20 74 6f 20 78 64 69 73 |urn offs| to xdis| |00002430| 70 6c 20 69 76 61 72 0d | 09 09 6f 66 66 73 20 20 |pl ivar.|..offs | |00002440| 78 6f 66 66 73 20 31 32 | 20 2b 0d 09 45 4c 53 45 |xoffs 12| +..ELSE| |00002450| 09 09 5c 20 6e 6f 20 2d | 20 6e 6f 72 6d 61 6c 20 |..\ no -| normal | |00002460| 63 61 73 65 20 2d 20 6a | 75 73 74 20 72 65 74 75 |case - j|ust retu| |00002470| 72 6e 20 7a 65 72 6f 0d | 09 09 6f 66 66 73 20 30 |rn zero.|..offs 0| |00002480| 0d 09 54 48 45 4e 0d 3b | 0d 0d 0d 3a 20 3c 66 69 |..THEN.;|...: <fi| |00002490| 6e 64 4d 3e 20 20 7b 20 | 73 65 6c 49 44 20 5e 63 |ndM> { |selID ^c| |000024a0| 6c 61 73 73 20 5c 20 63 | 66 61 20 6f 66 66 73 20 |lass \ c|fa offs | |000024b0| 20 2d 2d 20 63 66 61 20 | 6f 66 66 73 20 78 64 69 | -- cfa |offs xdi| |000024c0| 73 70 6c 2d 6f 66 66 73 | 20 7d 0d 0d 28 2a 09 46 |spl-offs| }..(*.F| |000024d0| 61 63 74 6f 72 65 64 20 | 6f 75 74 20 66 72 6f 6d |actored |out from| |000024e0| 20 63 6c 46 6e 64 6d 20 | 61 6e 64 20 6f 62 6a 46 | clFndm |and objF| |000024f0| 69 6e 64 6d 2e 20 20 46 | 69 6e 64 73 20 61 20 6d |indm. F|inds a m| |00002500| 65 74 68 6f 64 27 73 20 | 63 66 61 20 67 69 76 65 |ethod's |cfa give| |00002510| 6e 20 61 0d 09 73 65 6c | 49 44 20 61 6e 64 20 61 |n a..sel|ID and a| |00002520| 20 63 6c 61 73 73 20 61 | 64 64 72 65 73 73 2c 20 | class a|ddress, | |00002530| 77 68 69 63 68 20 68 61 | 73 20 61 6c 72 65 61 64 |which ha|s alread| |00002540| 79 20 62 65 65 6e 20 63 | 6f 6e 76 65 72 74 65 64 |y been c|onverted| |00002550| 20 74 6f 20 61 20 6d 6f | 64 75 6c 65 0d 09 61 64 | to a mo|dule..ad| |00002560| 64 72 20 69 66 20 6e 65 | 63 65 73 73 61 72 79 2e |dr if ne|cessary.| |00002570| 0d 09 0d 09 6f 66 66 73 | 20 77 69 6c 6c 20 62 65 |....offs| will be| |00002580| 20 6e 6f 6e 7a 65 72 6f | 20 69 66 20 74 68 65 20 | nonzero| if the | |00002590| 6d 65 74 68 6f 64 20 74 | 75 72 6e 73 20 6f 75 74 |method t|urns out| |000025a0| 20 74 6f 20 62 65 6c 6f | 6e 67 20 74 6f 20 61 20 | to belo|ng to a | |000025b0| 73 75 70 65 72 63 6c 61 | 73 73 0d 09 77 69 74 68 |supercla|ss..with| |000025c0| 20 61 20 6e 6f 6e 2d 7a | 65 72 6f 20 6f 66 66 73 | a non-z|ero offs| |000025d0| 65 74 20 69 6e 20 74 68 | 65 20 6f 62 6a 65 63 74 |et in th|e object| |000025e0| 20 2d 20 69 2e 65 2e 20 | 61 6e 20 65 6d 62 65 64 | - i.e. |an embed| |000025f0| 64 65 64 20 6f 62 6a 65 | 63 74 2e 0d 09 49 66 20 |ded obje|ct...If | |00002600| 69 74 27 73 20 61 20 6c | 61 72 67 65 5f 6f 62 6a |it's a l|arge_obj| |00002610| 5f 61 72 72 61 79 2c 20 | 61 6e 64 20 74 68 65 20 |_array, |and the | |00002620| 6f 62 6a 65 63 74 20 69 | 73 20 69 6e 20 74 68 65 |object i|s in the| |00002630| 20 69 6e 64 65 78 65 64 | 20 61 72 65 61 2c 0d 09 | indexed| area,..| |00002640| 78 64 69 73 70 6c 2d 6f | 66 66 73 20 77 69 6c 6c |xdispl-o|ffs will| |00002650| 20 62 65 20 6e 6f 6e 7a | 65 72 6f 2e 20 20 54 68 | be nonz|ero. Th| |00002660| 69 73 20 61 6c 6c 6f 77 | 73 20 74 68 65 20 63 61 |is allow|s the ca| |00002670| 6c 6c 65 72 20 74 6f 20 | 63 6f 6d 70 69 6c 65 0d |ller to |compile.| |00002680| 09 63 6f 64 65 20 74 6f | 20 61 64 64 20 74 68 65 |.code to| add the| |00002690| 20 6f 66 66 73 65 74 20 | 74 6f 20 74 68 65 20 73 | offset |to the s| |000026a0| 65 6c 65 63 74 65 64 20 | 65 6c 65 6d 65 6e 74 2e |elected |element.| |000026b0| 0d 2a 29 0d 0d 09 5e 63 | 6c 61 73 73 20 2d 3e 20 |.*)...^c|lass -> | |000026c0| 6f 62 6a 43 6c 61 73 73 | 09 09 09 09 09 5c 20 75 |objClass|.....\ u| |000026d0| 73 65 64 20 69 6e 20 65 | 72 72 6f 72 20 6d 73 67 |sed in e|rror msg| |000026e0| 73 20 61 6e 64 20 69 6e | 6c 69 6e 65 20 62 69 6e |s and in|line bin| |000026f0| 64 69 6e 67 0d 0d 09 73 | 65 6c 49 44 20 5e 63 6c |ding...s|elID ^cl| |00002700| 61 73 73 20 4d 46 41 5f | 6f 66 66 73 65 74 20 74 |ass MFA_|offset t| |00002710| 72 75 65 20 20 28 66 69 | 6e 64 6d 29 0d 09 4e 49 |rue (fi|ndm)..NI| |00002720| 46 20 20 63 72 20 20 5e | 63 6c 61 73 73 20 2e 69 |F cr ^|class .i| |00002730| 64 20 20 31 30 38 20 64 | 69 65 09 09 5c 20 22 6d |d 108 d|ie..\ "m| |00002740| 65 74 68 6f 64 20 6e 6f | 74 20 66 6f 75 6e 64 22 |ethod no|t found"| |00002750| 0d 09 54 48 45 4e 0d 09 | 2d 3e 20 63 66 61 20 20 |..THEN..|-> cfa | |00002760| 2d 3e 20 6f 66 66 73 0d | 09 6f 66 66 73 20 2d 3e |-> offs.|.offs ->| |00002770| 20 65 6d 62 5f 6f 62 6a | 5f 6f 66 66 73 09 09 09 | emb_obj|_offs...| |00002780| 09 5c 20 6d 61 79 20 6e | 65 65 64 20 74 68 69 73 |.\ may n|eed this| |00002790| 20 69 6e 20 69 6e 6c 69 | 6e 65 20 62 69 6e 64 69 | in inli|ne bindi| |000027a0| 6e 67 0d 09 63 66 61 0d | 09 5e 63 6c 61 73 73 20 |ng..cfa.|.^class | |000027b0| 6f 66 66 73 20 20 6c 61 | 72 67 65 5f 6f 62 6a 5f |offs la|rge_obj_| |000027c0| 61 72 72 61 79 5f 63 68 | 65 63 6b 0d 3b 0d 0d 0d |array_ch|eck.;...| |000027d0| 3a 20 3c 66 69 6e 64 49 | 56 3e 20 20 7b 20 73 65 |: <findI|V> { se| |000027e0| 6c 49 44 20 5e 63 6c 61 | 73 73 20 5c 20 5e 69 76 |lID ^cla|ss \ ^iv| |000027f0| 61 72 20 6f 66 66 73 20 | 78 6f 66 66 73 20 2d 2d |ar offs |xoffs --| |00002800| 20 5e 69 76 61 72 20 6f | 66 66 73 20 78 64 69 73 | ^ivar o|ffs xdis| |00002810| 70 6c 2d 6f 66 66 73 20 | 54 20 7c 20 2d 2d 20 46 |pl-offs |T | -- F| |00002820| 20 20 7d 0d 0d 28 2a 09 | 42 61 73 69 63 20 72 6f | }..(*.|Basic ro| |00002830| 75 74 69 6e 65 20 74 6f | 20 6c 6f 6f 6b 20 66 6f |utine to| look fo| |00002840| 72 20 61 6e 20 69 76 61 | 72 2e 20 20 49 74 27 73 |r an iva|r. It's| |00002850| 20 6e 6f 74 20 61 6e 20 | 65 72 72 6f 72 20 69 66 | not an |error if| |00002860| 20 77 65 20 64 6f 6e 27 | 74 20 66 69 6e 64 20 69 | we don'|t find i| |00002870| 74 2c 0d 09 73 6f 20 77 | 65 20 72 65 74 75 72 6e |t,..so w|e return| |00002880| 20 61 20 66 6c 61 67 2e | 0d 2a 29 0d 09 73 65 6c | a flag.|.*)..sel| |00002890| 49 44 20 5e 63 6c 61 73 | 73 20 49 46 41 5f 6f 66 |ID ^clas|s IFA_of| |000028a0| 66 73 65 74 20 66 61 6c | 73 65 20 28 66 69 6e 64 |fset fal|se (find| |000028b0| 6d 29 20 20 4e 49 46 20 | 20 66 61 6c 73 65 20 20 |m) NIF | false | |000028c0| 45 58 49 54 20 20 54 48 | 45 4e 0d 09 38 20 2d 20 |EXIT TH|EN..8 - | |000028d0| 20 2d 3e 20 5e 69 76 61 | 72 20 20 2d 3e 20 6f 66 | -> ^iva|r -> of| |000028e0| 66 73 09 09 5c 20 6e 6f | 74 65 20 2d 20 28 66 69 |fs..\ no|te - (fi| |000028f0| 6e 64 6d 29 20 68 61 73 | 20 72 65 74 75 72 6e 65 |ndm) has| returne| |00002900| 64 20 74 68 65 20 62 61 | 73 65 0d 09 09 09 09 09 |d the ba|se......| |00002910| 09 09 09 5c 20 20 6f 66 | 66 73 20 68 65 72 65 2e |...\ of|fs here.| |00002920| 0d 09 5e 69 76 61 72 20 | 31 32 20 2b 20 77 40 20 |..^ivar |12 + w@ | |00002930| 20 2b 2b 3e 20 6f 66 66 | 73 0d 09 5e 69 76 61 72 | ++> off|s..^ivar| |00002940| 0d 09 5e 63 6c 61 73 73 | 20 6f 66 66 73 20 20 6c |..^class| offs l| |00002950| 61 72 67 65 5f 6f 62 6a | 5f 61 72 72 61 79 5f 63 |arge_obj|_array_c| |00002960| 68 65 63 6b 0d 09 74 72 | 75 65 0d 3b 0d 0d 0d 3a |heck..tr|ue.;...:| |00002970| 20 43 6c 46 69 6e 64 4d | 20 20 7b 20 73 65 6c 49 | ClFindM| { selI| |00002980| 44 20 5e 63 6c 61 73 73 | 20 5c 20 63 66 61 20 6f |D ^class| \ cfa o| |00002990| 66 66 73 20 78 6f 66 66 | 73 20 2d 2d 20 63 66 61 |ffs xoff|s -- cfa| |000029a0| 20 6f 66 66 73 20 78 64 | 69 73 70 6c 2d 6f 66 66 | offs xd|ispl-off| |000029b0| 73 20 7d 0d 09 09 09 09 | 09 09 09 09 09 09 09 09 |s }.....|........| |000029c0| 0d 28 2a 09 66 69 6e 64 | 73 20 61 20 6d 65 74 68 |.(*.find|s a meth| |000029d0| 6f 64 27 73 20 63 66 61 | 20 67 69 76 65 6e 20 61 |od's cfa| given a| |000029e0| 20 73 65 6c 49 44 20 61 | 6e 64 20 61 20 63 6c 61 | selID a|nd a cla| |000029f0| 73 73 20 61 64 64 72 65 | 73 73 2c 20 77 68 69 63 |ss addre|ss, whic| |00002a00| 68 20 68 61 73 6e 27 74 | 0d 09 62 65 65 6e 20 63 |h hasn't|..been c| |00002a10| 68 65 63 6b 65 64 20 66 | 6f 72 20 62 65 69 6e 67 |hecked f|or being| |00002a20| 20 69 6e 20 61 20 6d 6f | 64 75 6c 65 2e 20 20 54 | in a mo|dule. T| |00002a30| 68 65 20 72 65 74 75 72 | 6e 65 64 20 72 65 73 75 |he retur|ned resu| |00002a40| 6c 74 73 20 61 72 65 20 | 61 73 0d 09 64 65 73 63 |lts are |as..desc| |00002a50| 72 69 62 65 64 20 61 62 | 6f 76 65 20 66 6f 72 20 |ribed ab|ove for | |00002a60| 3c 66 69 6e 64 4d 3e 2e | 0d 2a 29 0d 09 5e 63 6c |<findM>.|.*)..^cl| |00002a70| 61 73 73 20 3f 3e 63 6c | 61 73 73 49 6e 4d 6f 64 |ass ?>cl|assInMod| |00002a80| 20 2d 3e 20 5e 63 6c 61 | 73 73 0d 09 73 65 6c 49 | -> ^cla|ss..selI| |00002a90| 44 20 5e 63 6c 61 73 73 | 20 20 3c 66 69 6e 64 4d |D ^class| <findM| |00002aa0| 3e 0d 3b 0d 0d 0d 3a 20 | 4f 62 6a 46 69 6e 64 4d |>.;...: |ObjFindM| |00002ab0| 20 20 7b 20 73 65 6c 49 | 44 20 5e 6f 62 6a 20 5c | { selI|D ^obj \| |00002ac0| 20 5e 63 6c 61 73 73 20 | 63 66 61 20 6f 66 66 73 | ^class |cfa offs| |00002ad0| 20 78 6f 66 66 73 20 20 | 2d 2d 20 63 66 61 20 6f | xoffs |-- cfa o| |00002ae0| 66 66 73 20 78 64 69 73 | 70 6c 2d 6f 66 66 73 0d |ffs xdis|pl-offs.| |00002af0| 09 09 09 09 09 09 09 09 | 09 09 09 09 7c 20 2d 2d |........|....| --| |00002b00| 20 63 66 61 20 6f 66 66 | 73 20 30 20 7d 0d 0d 28 | cfa off|s 0 }..(| |00002b10| 2a 20 46 69 6e 64 73 20 | 61 20 6d 65 74 68 6f 64 |* Finds |a method| |00002b20| 27 73 20 78 74 20 67 69 | 76 65 6e 20 61 20 73 65 |'s xt gi|ven a se| |00002b30| 6c 49 44 20 61 6e 64 20 | 61 6e 20 6f 62 6a 20 61 |lID and |an obj a| |00002b40| 64 64 72 2e 20 20 54 68 | 65 20 72 65 74 75 72 6e |ddr. Th|e return| |00002b50| 65 64 0d 09 72 65 73 75 | 6c 74 73 20 61 72 65 20 |ed..resu|lts are | |00002b60| 61 73 20 64 65 73 63 72 | 69 62 65 64 20 61 62 6f |as descr|ibed abo| |00002b70| 76 65 20 66 6f 72 20 3c | 66 69 6e 64 4d 3e 2e 0d |ve for <|findM>..| |00002b80| 2a 29 0d 09 5e 6f 62 6a | 20 3e 63 6c 61 73 73 20 |*)..^obj| >class | |00002b90| 20 2d 3e 20 5e 63 6c 61 | 73 73 0d 09 5e 63 6c 61 | -> ^cla|ss..^cla| |00002ba0| 73 73 20 4e 49 46 20 20 | 38 31 20 64 69 65 20 20 |ss NIF |81 die | |00002bb0| 54 48 45 4e 09 09 09 5c | 20 22 6e 6f 74 20 61 6e |THEN...\| "not an| |00002bc0| 20 6f 62 6a 65 63 74 22 | 0d 09 73 65 6c 49 44 20 | object"|..selID | |00002bd0| 5e 63 6c 61 73 73 20 20 | 3c 66 69 6e 64 4d 3e 0d |^class |<findM>.| |00002be0| 3b 0d 0d 0d 3a 20 49 56 | 46 69 6e 64 4d 09 5c 20 |;...: IV|FindM.\ | |00002bf0| 28 20 73 65 6c 49 44 20 | 5e 69 76 61 72 20 2d 2d |( selID |^ivar --| |00002c00| 20 78 74 20 6f 66 66 73 | 20 78 64 69 73 70 6c 2d | xt offs| xdispl-| |00002c10| 6f 66 66 73 20 29 0d 5c | 20 20 4c 6f 6f 6b 73 20 |offs ).\| Looks | |00002c20| 66 6f 72 20 61 20 6d 65 | 74 68 6f 64 20 69 6e 20 |for a me|thod in | |00002c30| 61 6e 20 69 76 61 72 2e | 0d 0d 09 38 20 2b 20 40 |an ivar.|...8 + @| |00002c40| 61 62 73 09 09 5c 20 61 | 64 64 72 20 6f 66 20 69 |abs..\ a|ddr of i| |00002c50| 76 61 72 27 73 20 63 6c | 61 73 73 0d 09 63 6c 46 |var's cl|ass..clF| |00002c60| 69 6e 64 6d 20 20 3b 0d | 0d 0d 3a 20 53 45 4e 44 |indm ;.|..: SEND| |00002c70| 20 20 7b 20 5e 6f 62 6a | 20 73 65 6c 49 44 20 5c | { ^obj| selID \| |00002c80| 20 73 76 4d 42 20 2d 2d | 20 7d 09 5c 20 20 45 78 | svMB --| }.\ Ex| |00002c90| 65 63 75 74 65 73 20 61 | 20 6d 65 74 68 6f 64 20 |ecutes a| method | |00002ca0| 67 69 76 65 6e 20 69 74 | 73 20 73 65 6c 20 49 44 |given it|s sel ID| |00002cb0| 2e 20 20 55 73 65 64 0d | 09 09 09 09 09 09 09 09 |. Used.|........| |00002cc0| 09 5c 20 20 09 69 6e 20 | 6c 61 74 65 20 62 69 6e |.\ .in |late bin| |00002cd0| 64 69 6e 67 2e 20 20 43 | 61 6e 20 61 6c 73 6f 20 |ding. C|an also | |00002ce0| 62 65 20 75 73 65 64 20 | 69 66 20 79 6f 75 0d 09 |be used |if you..| |00002cf0| 09 09 09 09 09 09 09 09 | 5c 20 20 20 68 61 76 65 |........|\ have| |00002d00| 20 61 20 64 79 6e 61 6d | 69 63 61 6c 6c 79 20 64 | a dynam|ically d| |00002d10| 65 74 65 72 6d 69 6e 65 | 64 20 6d 65 74 68 6f 64 |etermine|d method| |00002d20| 20 49 44 2e 0d 09 6d 6f | 64 42 61 73 65 20 2d 3e | ID...mo|dBase ->| |00002d30| 20 73 76 4d 42 0d 09 73 | 65 6c 49 44 20 5e 6f 62 | svMB..s|elID ^ob| |00002d40| 6a 20 20 6f 62 6a 46 69 | 6e 64 4d 0d 09 3f 64 75 |j objFi|ndM..?du| |00002d50| 70 0d 09 49 46 09 09 5e | 6f 62 6a 20 2b 20 64 75 |p..IF..^|obj + du| |00002d60| 70 20 40 20 2b 20 2b 0d | 09 45 4c 53 45 09 5e 6f |p @ + +.|.ELSE.^o| |00002d70| 62 6a 20 2b 0d 09 54 48 | 45 4e 0d 09 73 77 61 70 |bj +..TH|EN..swap| |00002d80| 20 20 65 78 2d 6d 65 74 | 68 6f 64 0d 09 73 76 4d | ex-met|hod..svM| |00002d90| 42 20 2d 3e 20 6d 6f 64 | 42 61 73 65 20 20 3b 0d |B -> mod|Base ;.| |00002da0| 0d 0d 3a 20 28 44 45 46 | 45 52 29 20 20 28 20 5e |..: (DEF|ER) ( ^| |00002db0| 6f 62 6a 20 2d 2d 20 29 | 09 09 5c 20 4c 6f 6f 6b |obj -- )|..\ Look| |00002dc0| 73 20 75 70 20 53 65 6c | 49 44 20 61 74 20 49 50 |s up Sel|ID at IP| |00002dd0| 20 61 6e 64 20 72 75 6e | 73 20 74 68 65 20 6d 65 | and run|s the me| |00002de0| 74 68 6f 64 2e 0d 09 09 | 09 09 09 09 09 5c 20 20 |thod....|.....\ | |00002df0| 55 73 65 64 20 69 6e 20 | 6c 61 74 65 20 62 69 6e |Used in |late bin| |00002e00| 64 69 6e 67 2e 0d 09 40 | 28 69 70 29 20 20 73 65 |ding...@|(ip) se| |00002e10| 6e 64 20 20 3b 0d 0d 0d | 30 20 2d 3e 20 71 75 69 |nd ;...|0 -> qui| |00002e20| 74 76 65 63 20 20 20 30 | 20 2d 3e 20 61 62 6f 72 |tvec 0| -> abor| |00002e30| 74 76 65 63 20 20 20 30 | 20 2d 3e 20 6f 62 6a 49 |tvec 0| -> objI| |00002e40| 6e 69 74 09 09 5c 20 63 | 6c 65 61 72 20 76 65 63 |nit..\ c|lear vec| |00002e50| 74 6f 72 73 0d 27 20 70 | 66 69 6e 64 20 20 2d 3e |tors.' p|find ->| |00002e60| 20 75 66 69 6e 64 0d 0d | 0d 3a 20 3f 43 4c 41 53 | ufind..|.: ?CLAS| |00002e70| 53 09 09 5c 20 45 72 72 | 6f 72 20 69 66 20 6e 6f |S..\ Err|or if no| |00002e80| 74 20 63 6f 6d 70 69 6c | 69 6e 67 20 61 20 63 6c |t compil|ing a cl| |00002e90| 61 73 73 20 64 65 66 69 | 6e 69 74 69 6f 6e 2e 0d |ass defi|nition..| |00002ea0| 09 63 73 74 61 74 65 20 | 30 3d 20 20 3f 65 72 72 |.cstate |0= ?err| |00002eb0| 6f 72 20 31 31 35 20 20 | 3b 0d 0d 0d 0d 28 2a 09 |or 115 |;....(*.| |00002ec0| 49 56 46 49 4e 44 20 69 | 73 20 63 61 6c 6c 65 64 |IVFIND i|s called| |00002ed0| 20 77 68 65 6e 20 77 65 | 27 76 65 20 70 61 72 73 | when we|'ve pars| |00002ee0| 65 64 20 61 20 73 65 6c | 65 63 74 6f 72 2e 20 20 |ed a sel|ector. | |00002ef0| 49 74 20 64 65 74 65 72 | 6d 69 6e 65 73 20 69 66 |It deter|mines if| |00002f00| 20 74 68 65 20 6e 65 78 | 74 0d 09 77 6f 72 64 20 | the nex|t..word | |00002f10| 69 73 20 61 6e 20 69 76 | 61 72 2e 0d 09 4e 6f 74 |is an iv|ar...Not| |00002f20| 65 3a 20 69 66 20 66 6f | 75 6e 64 2c 20 3c 66 69 |e: if fo|und, <fi| |00002f30| 6e 64 49 56 3e 20 72 65 | 74 75 72 6e 73 20 74 68 |ndIV> re|turns th| |00002f40| 65 20 65 71 75 69 76 61 | 6c 65 6e 74 20 6f 66 20 |e equiva|lent of | |00002f50| 74 68 65 20 63 66 61 20 | 6f 66 0d 09 61 20 6d 65 |the cfa |of..a me| |00002f60| 74 68 6f 64 2c 20 77 68 | 69 63 68 20 66 6f 72 20 |thod, wh|ich for | |00002f70| 69 76 61 72 73 2c 20 69 | 73 20 74 68 65 20 61 64 |ivars, i|s the ad| |00002f80| 64 72 20 6f 66 20 74 68 | 65 20 63 6c 61 73 73 20 |dr of th|e class | |00002f90| 70 6f 69 6e 74 65 72 2e | 0d 2a 29 0d 0d 3a 20 69 |pointer.|.*)..: i| |00002fa0| 76 46 69 6e 64 20 20 7b | 20 73 74 72 2d 61 64 64 |vFind {| str-add| |00002fb0| 72 20 5c 20 78 64 69 73 | 70 6c 2d 6f 66 66 73 20 |r \ xdis|pl-offs | |00002fc0| 2d 2d 20 5e 69 76 61 72 | 20 6f 66 66 73 20 78 64 |-- ^ivar| offs xd| |00002fd0| 69 73 70 6c 2d 6f 66 66 | 73 20 54 20 7c 20 20 2d |ispl-off|s T | -| |00002fe0| 2d 20 73 74 72 2d 61 64 | 64 72 20 46 20 7d 0d 09 |- str-ad|dr F }..| |00002ff0| 73 74 72 2d 61 64 64 72 | 0d 09 63 73 74 61 74 65 |str-addr|..cstate| |00003000| 20 20 4e 49 46 20 20 66 | 61 6c 73 65 20 20 45 58 | NIF f|alse EX| |00003010| 49 54 20 20 54 48 45 4e | 0d 09 68 61 73 68 20 5e |IT THEN|..hash ^| |00003020| 63 6f 6d 70 5f 63 6c 61 | 73 73 20 20 3c 66 69 6e |comp_cla|ss <fin| |00003030| 64 49 56 3e 09 09 5c 20 | 28 20 5e 69 76 61 72 20 |dIV>..\ |( ^ivar | |00003040| 6f 66 66 73 20 78 64 69 | 73 70 6c 2d 6f 66 66 73 |offs xdi|spl-offs| |00003050| 20 20 54 20 20 7c 20 20 | 46 20 29 0d 09 49 46 09 | T | |F )..IF.| |00003060| 09 74 72 75 65 0d 09 45 | 4c 53 45 09 44 50 20 20 |.true..E|LSE.DP | |00003070| 66 61 6c 73 65 0d 09 54 | 48 45 4e 0d 3b 0d 0d 0d |false..T|HEN.;...| |00003080| 5c 20 54 4f 66 69 6e 64 | 20 6c 6f 6f 6b 73 20 66 |\ TOfind| looks f| |00003090| 6f 72 20 61 20 74 65 6d | 70 20 28 6c 6f 63 61 6c |or a tem|p (local| |000030a0| 29 20 6f 62 6a 65 63 74 | 2e 0d 0d 3a 20 54 4f 66 |) object|...: TOf| |000030b0| 69 6e 64 20 20 7b 20 73 | 74 72 2d 61 64 64 72 20 |ind { s|tr-addr | |000030c0| 2d 2d 20 5e 69 76 61 72 | 20 6f 66 66 73 20 54 20 |-- ^ivar| offs T | |000030d0| 7c 20 2d 2d 20 73 74 72 | 2d 61 64 64 72 20 46 20 || -- str|-addr F | |000030e0| 20 7d 0d 09 73 74 72 2d | 61 64 64 72 0d 09 74 6d | }..str-|addr..tm| |000030f0| 70 4f 62 6a 73 20 20 4e | 49 46 20 20 66 61 6c 73 |pObjs N|IF fals| |00003100| 65 20 20 45 58 49 54 20 | 20 54 48 45 4e 0d 09 68 |e EXIT | THEN..h| |00003110| 61 73 68 0d 09 74 6d 70 | 4f 62 6a 73 20 3c 66 69 |ash..tmp|Objs <fi| |00003120| 6e 64 49 56 3e 0d 09 49 | 46 09 09 09 09 09 5c 20 |ndIV>..I|F.....\ | |00003130| 28 20 2d 2d 20 5e 69 76 | 61 72 20 6f 66 66 73 20 |( -- ^iv|ar offs | |00003140| 78 64 69 73 70 6c 2d 6f | 66 66 73 20 29 0d 09 09 |xdispl-o|ffs )...| |00003150| 09 64 72 6f 70 09 09 5c | 20 78 64 69 73 70 6c 2d |.drop..\| xdispl-| |00003160| 6f 66 66 73 20 6d 75 73 | 74 20 62 65 20 7a 65 72 |offs mus|t be zer| |00003170| 6f 20 66 6f 72 20 63 6c | 61 73 73 20 44 75 6d 6d |o for cl|ass Dumm| |00003180| 79 0d 09 09 09 64 75 70 | 20 24 20 46 46 46 45 20 |y....dup| $ FFFE | |00003190| 3e 3d 0d 09 09 09 49 46 | 09 09 09 5c 20 73 65 6c |>=....IF|...\ sel| |000031a0| 66 20 6f 72 20 73 75 70 | 65 72 20 2d 20 6d 75 73 |f or sup|er - mus| |000031b0| 74 6e 27 74 20 6d 61 74 | 63 68 20 74 68 65 73 65 |tn't mat|ch these| |000031c0| 20 69 6e 20 63 6c 61 73 | 73 20 44 75 6d 6d 79 21 | in clas|s Dummy!| |000031d0| 0d 09 09 09 09 32 64 72 | 6f 70 20 20 73 74 72 2d |.....2dr|op str-| |000031e0| 61 64 64 72 20 66 61 6c | 73 65 20 20 45 58 49 54 |addr fal|se EXIT| |000031f0| 0d 09 09 09 54 48 45 4e | 0d 09 09 09 74 72 75 65 |....THEN|....true| |00003200| 0d 09 45 4c 53 45 09 73 | 74 72 2d 61 64 64 72 20 |..ELSE.s|tr-addr | |00003210| 66 61 6c 73 65 0d 09 54 | 48 45 4e 0d 3b 0d 09 0d |false..T|HEN.;...| |00003220| 28 2a 0d 4c 6f 63 46 69 | 6e 64 20 77 69 6c 6c 20 |(*.LocFi|nd will | |00003230| 62 65 20 63 61 6c 6c 65 | 64 20 66 72 6f 6d 20 55 |be calle|d from U| |00003240| 66 69 6e 64 2c 20 77 68 | 69 63 68 20 69 73 20 74 |find, wh|ich is t| |00003250| 68 65 20 76 65 63 74 6f | 72 20 74 68 61 74 20 67 |he vecto|r that g| |00003260| 65 74 73 20 66 69 72 73 | 74 0d 73 68 6f 74 20 61 |ets firs|t.shot a| |00003270| 74 20 72 65 63 6f 67 6e | 69 7a 69 6e 67 20 61 20 |t recogn|izing a | |00003280| 77 6f 72 64 2e 0d 49 74 | 20 6c 6f 6f 6b 73 20 61 |word..It| looks a| |00003290| 74 20 61 6c 6c 20 74 68 | 65 20 70 6f 73 73 69 62 |t all th|e possib| |000032a0| 69 6c 69 74 69 65 73 20 | 69 6e 76 6f 6c 76 69 6e |ilities |involvin| |000032b0| 67 20 6c 6f 63 61 6c 20 | 6e 61 6d 65 73 2c 20 77 |g local |names, w| |000032c0| 68 69 63 68 20 61 72 65 | 0d 6e 6f 74 20 69 6e 20 |hich are|.not in | |000032d0| 74 68 65 20 72 65 67 75 | 6c 61 72 20 64 69 63 74 |the regu|lar dict| |000032e0| 69 6f 6e 61 72 79 2e 20 | 20 54 68 65 73 65 20 70 |ionary. | These p| |000032f0| 6f 73 73 69 62 69 6c 69 | 74 69 65 73 20 61 72 65 |ossibili|ties are| |00003300| 3a 20 6e 61 6d 65 64 20 | 70 61 72 6d 73 2f 6c 6f |: named |parms/lo| |00003310| 63 61 6c 73 2c 0d 6c 6f | 63 61 6c 20 6f 62 6a 65 |cals,.lo|cal obje| |00003320| 63 74 73 2c 20 61 6e 64 | 20 69 66 20 61 20 63 6c |cts, and| if a cl| |00003330| 61 73 73 20 69 73 20 62 | 65 69 6e 67 20 63 6f 6d |ass is b|eing com| |00003340| 70 69 6c 65 64 2c 20 69 | 76 61 72 73 20 6f 66 20 |piled, i|vars of | |00003350| 74 68 69 73 20 63 6c 61 | 73 73 2e 0d 0d 49 6e 20 |this cla|ss...In | |00003360| 74 68 65 20 6c 61 74 74 | 65 72 20 63 61 73 65 2c |the latt|er case,| |00003370| 20 77 65 20 61 72 72 61 | 6e 67 65 20 66 6f 72 20 | we arra|nge for | |00003380| 74 68 65 20 69 76 61 72 | 27 73 20 61 64 64 72 65 |the ivar|'s addre| |00003390| 73 73 20 74 6f 0d 62 65 | 20 70 75 73 68 65 64 20 |ss to.be| pushed | |000033a0| 61 74 20 72 75 6e 20 74 | 69 6d 65 20 73 69 6d 70 |at run t|ime simp| |000033b0| 6c 79 20 62 79 20 63 6f | 6d 70 69 6c 69 6e 67 20 |ly by co|mpiling | |000033c0| 5e 62 61 73 65 20 66 6f | 6c 6c 6f 77 65 64 20 62 |^base fo|llowed b| |000033d0| 79 20 61 6e 20 61 64 64 | 20 6f 66 20 74 68 65 0d |y an add| of the.| |000033e0| 69 76 61 72 27 73 20 6f | 66 66 73 65 74 20 2d 20 |ivar's o|ffset - | |000033f0| 6f 75 72 20 63 6f 64 65 | 20 67 65 6e 65 72 61 74 |our code| generat| |00003400| 69 6f 6e 20 77 69 6c 6c | 20 70 72 6f 64 75 63 65 |ion will| produce| |00003410| 20 6f 70 74 69 6d 61 6c | 20 63 6f 64 65 20 66 6f | optimal| code fo| |00003420| 72 20 74 68 69 73 2e 0d | 57 65 20 74 68 65 6e 20 |r this..|We then | |00003430| 68 61 76 65 20 74 6f 20 | 72 65 74 75 72 6e 20 74 |have to |return t| |00003440| 68 65 20 78 74 20 6f 66 | 20 73 6f 6d 65 20 77 6f |he xt of| some wo| |00003450| 72 64 20 74 6f 20 6b 65 | 65 70 20 46 49 4e 44 20 |rd to ke|ep FIND | |00003460| 68 61 70 70 79 20 2d 20 | 77 65 20 64 6f 6e 27 74 |happy - |we don't| |00003470| 0d 6e 65 65 64 20 74 6f | 20 63 6f 6d 70 69 6c 65 |.need to| compile| |00003480| 20 61 6e 79 74 68 69 6e | 67 20 65 6c 73 65 2c 20 | anythin|g else, | |00003490| 73 6f 20 77 65 20 75 73 | 65 20 74 68 65 20 78 74 |so we us|e the xt| |000034a0| 20 6f 66 20 4e 55 4c 4c | 20 61 6e 64 20 72 65 74 | of NULL| and ret| |000034b0| 75 72 6e 20 61 20 31 0d | 69 6e 73 74 65 61 64 20 |urn a 1.|instead | |000034c0| 6f 66 20 54 72 75 65 20 | 2d 20 74 68 69 73 20 6d |of True |- this m| |000034d0| 61 6b 65 73 20 46 49 4e | 44 20 74 68 69 6e 6b 20 |akes FIN|D think | |000034e0| 69 74 27 73 20 69 6d 6d | 65 64 69 61 74 65 2e 20 |it's imm|ediate. | |000034f0| 20 53 6f 20 4e 55 4c 4c | 20 69 73 0d 65 78 65 63 | So NULL| is.exec| |00003500| 75 74 65 64 20 69 6d 6d | 65 64 69 61 74 65 6c 79 |uted imm|ediately| |00003510| 2c 20 77 68 69 63 68 20 | 64 6f 65 73 20 70 72 65 |, which |does pre| |00003520| 63 69 73 65 6c 79 20 6e | 6f 74 68 69 6e 67 2e 0d |cisely n|othing..| |00003530| 0d 54 68 65 20 6f 6e 65 | 20 65 78 63 65 70 74 69 |.The one| excepti| |00003540| 6f 6e 20 74 6f 20 74 68 | 69 73 20 69 73 20 69 66 |on to th|is is if| |00003550| 20 74 68 65 20 22 69 76 | 61 72 22 20 74 75 72 6e | the "iv|ar" turn| |00003560| 73 20 6f 75 74 20 74 6f | 20 62 65 20 53 45 4c 46 |s out to| be SELF| |00003570| 20 6f 72 20 53 55 50 45 | 52 0d 2d 20 69 6e 20 74 | or SUPE|R.- in t| |00003580| 68 69 73 20 63 61 73 65 | 20 77 65 20 6e 65 65 64 |his case| we need| |00003590| 20 74 6f 20 63 61 6c 6c | 20 74 68 65 20 6e 75 63 | to call| the nuc| |000035a0| 6c 65 75 73 20 77 6f 72 | 64 20 53 45 4c 46 20 77 |leus wor|d SELF w| |000035b0| 68 69 63 68 20 77 6f 72 | 6b 73 20 6f 75 74 0d 74 |hich wor|ks out.t| |000035c0| 68 65 20 72 69 67 68 74 | 20 62 61 73 65 20 61 64 |he right| base ad| |000035d0| 64 72 65 73 73 20 28 74 | 68 69 73 20 69 73 20 77 |dress (t|his is w| |000035e0| 68 61 74 20 68 61 70 70 | 65 6e 65 64 20 70 72 65 |hat happ|ened pre| |000035f0| 2d 32 2e 35 29 2e 20 20 | 48 65 72 65 20 77 65 20 |-2.5). |Here we | |00003600| 6b 65 65 70 0d 46 49 4e | 44 20 68 61 70 70 79 20 |keep.FIN|D happy | |00003610| 62 79 20 70 75 73 68 69 | 6e 67 20 74 68 65 20 78 |by pushi|ng the x| |00003620| 74 20 6f 66 20 53 45 4c | 46 20 61 6e 64 20 54 72 |t of SEL|F and Tr| |00003630| 75 65 2c 20 73 6f 20 74 | 68 61 74 20 69 74 20 73 |ue, so t|hat it s| |00003640| 65 65 73 20 77 65 27 76 | 65 0d 66 6f 75 6e 64 20 |ees we'v|e.found | |00003650| 53 45 4c 46 2e 0d 2a 29 | 0d 0d 3a 20 4c 6f 63 46 |SELF..*)|..: LocF| |00003660| 69 6e 64 09 09 5c 20 28 | 20 73 74 72 2d 61 64 64 |ind..\ (| str-add| |00003670| 72 20 2d 2d 20 63 66 61 | 20 54 20 20 7c 20 20 2d |r -- cfa| T | -| |00003680| 2d 20 73 74 72 2d 61 64 | 64 72 20 46 20 29 0d 09 |- str-ad|dr F )..| |00003690| 50 66 69 6e 64 09 3f 64 | 75 70 20 20 3f 45 58 49 |Pfind.?d|up ?EXI| |000036a0| 54 09 09 09 09 09 5c 20 | 46 6f 75 6e 64 20 61 20 |T.....\ |Found a | |000036b0| 6e 61 6d 65 64 20 70 61 | 72 6d 2f 6c 6f 63 61 6c |named pa|rm/local| |000036c0| 0d 09 54 4f 66 69 6e 64 | 0d 09 49 46 09 09 09 09 |..TOfind|..IF....| |000036d0| 09 09 09 09 09 5c 20 46 | 6f 75 6e 64 20 74 65 6d |.....\ F|ound tem| |000036e0| 70 20 6f 62 6a 0d 09 09 | 6e 69 70 09 09 09 09 09 |p obj...|nip.....| |000036f0| 09 09 09 5c 20 44 6f 6e | 27 74 20 6e 65 65 64 20 |...\ Don|'t need | |00003700| 69 74 73 20 64 69 63 20 | 61 64 64 72 0d 09 09 70 |its dic |addr...p| |00003710| 6f 73 74 70 6f 6e 65 20 | 6c 6f 63 52 65 67 20 20 |ostpone |locReg | |00003720| 70 6f 73 74 70 6f 6e 65 | 20 6c 69 74 65 72 61 6c |postpone| literal| |00003730| 20 20 70 6f 73 74 70 6f | 6e 65 20 2b 0d 09 09 5b | postpo|ne +...[| |00003740| 27 5d 20 6e 75 6c 6c 20 | 20 31 20 20 20 45 58 49 |'] null | 1 EXI| |00003750| 54 0d 09 54 48 45 4e 0d | 0d 5c 20 4e 6f 77 20 77 |T..THEN.|.\ Now w| |00003760| 65 20 6c 6f 6f 6b 20 66 | 6f 72 20 61 6e 20 69 76 |e look f|or an iv| |00003770| 61 72 20 6e 61 6d 65 0d | 0d 09 63 73 74 61 74 65 |ar name.|..cstate| |00003780| 20 20 4e 49 46 20 20 66 | 61 6c 73 65 20 20 45 58 | NIF f|alse EX| |00003790| 49 54 20 20 54 48 45 4e | 09 09 5c 20 73 65 61 72 |IT THEN|..\ sear| |000037a0| 63 68 20 66 61 69 6c 73 | 20 69 66 20 77 65 27 72 |ch fails| if we'r| |000037b0| 65 20 6e 6f 74 20 63 6f | 6d 70 69 6c 69 6e 67 0d |e not co|mpiling.| |000037c0| 09 09 09 09 09 09 09 09 | 09 09 5c 20 20 61 20 63 |........|..\ a c| |000037d0| 6c 61 73 73 0d 0d 5c 20 | 6d 79 62 75 67 74 65 73 |lass..\ |mybugtes| |000037e0| 74 20 69 66 20 64 62 20 | 74 68 65 6e 0d 09 0d 09 |t if db |then....| |000037f0| 64 75 70 20 68 61 73 68 | 20 5e 63 6f 6d 70 5f 63 |dup hash| ^comp_c| |00003800| 6c 61 73 73 20 49 46 41 | 5f 6f 66 66 73 65 74 20 |lass IFA|_offset | |00003810| 66 61 6c 73 65 20 20 28 | 66 69 6e 64 6d 29 0d 09 |false (|findm)..| |00003820| 49 46 09 09 09 09 09 09 | 09 09 09 5c 20 46 6f 75 |IF......|...\ Fou| |00003830| 6e 64 20 69 76 61 72 0d | 09 09 6e 69 70 20 6e 69 |nd ivar.|..nip ni| |00003840| 70 09 09 09 09 09 09 09 | 5c 20 64 6f 6e 27 74 20 |p.......|\ don't | |00003850| 6e 65 65 64 20 65 6d 62 | 65 64 64 65 64 20 6f 62 |need emb|edded ob| |00003860| 6a 20 6f 66 66 73 20 6f | 72 0d 09 09 09 09 09 09 |j offs o|r.......| |00003870| 09 09 09 09 5c 20 20 73 | 74 72 69 6e 67 20 61 64 |....\ s|tring ad| |00003880| 64 72 0d 09 09 34 2b 20 | 77 40 09 09 09 09 09 09 |dr...4+ |w@......| |00003890| 09 5c 20 69 76 61 72 20 | 6f 66 66 73 65 74 0d 09 |.\ ivar |offset..| |000038a0| 09 64 75 70 20 24 20 46 | 46 46 45 20 3e 3d 09 09 |.dup $ F|FFE >=..| |000038b0| 09 09 09 5c 20 69 73 20 | 69 74 20 53 45 4c 46 20 |...\ is |it SELF | |000038c0| 6f 72 20 53 55 50 45 52 | 20 28 6a 75 73 74 20 75 |or SUPER| (just u| |000038d0| 73 65 64 20 69 6e 0d 09 | 09 09 09 09 09 09 09 09 |sed in..|........| |000038e0| 09 5c 20 20 69 73 6f 6c | 61 74 69 6f 6e 29 3f 0d |.\ isol|ation)?.| |000038f0| 09 09 49 46 09 64 72 6f | 70 20 20 5b 27 5d 20 73 |..IF.dro|p ['] s| |00003900| 65 6c 66 20 20 74 72 75 | 65 20 20 45 58 49 54 0d |elf tru|e EXIT.| |00003910| 09 09 54 48 45 4e 0d 09 | 09 70 6f 73 74 70 6f 6e |..THEN..|.postpon| |00003920| 65 20 5e 62 61 73 65 20 | 70 6f 73 74 70 6f 6e 65 |e ^base |postpone| |00003930| 20 6c 69 74 65 72 61 6c | 20 20 70 6f 73 74 70 6f | literal| postpo| |00003940| 6e 65 20 2b 0d 09 09 5b | 27 5d 20 6e 75 6c 6c 20 |ne +...[|'] null | |00003950| 20 31 0d 09 45 4c 53 45 | 09 66 61 6c 73 65 0d 09 | 1..ELSE|.false..| |00003960| 54 48 45 4e 20 20 3b 0d | 0d 0d 3a 20 49 4c 46 41 |THEN ;.|..: ILFA| |00003970| 20 20 20 20 20 28 20 69 | 6e 66 61 20 2d 2d 20 69 | ( i|nfa -- i| |00003980| 6c 66 61 20 29 09 34 2b | 20 20 3b 0d 0d 0d 3a 20 |lfa ).4+| ;...: | |00003990| 5e 49 43 4c 41 53 53 20 | 20 28 20 69 6e 66 61 20 |^ICLASS | ( infa | |000039a0| 2d 2d 20 5e 63 6c 61 73 | 73 20 7c 20 30 20 29 0d |-- ^clas|s | 0 ).| |000039b0| 09 38 20 2b 20 64 75 70 | 20 40 20 4e 49 46 20 20 |.8 + dup| @ NIF | |000039c0| 20 64 72 6f 70 20 30 20 | 20 20 45 4c 53 45 20 20 | drop 0 | ELSE | |000039d0| 20 40 61 62 73 20 3f 3e | 63 6c 61 73 73 49 6e 4d | @abs ?>|classInM| |000039e0| 6f 64 20 20 20 54 48 45 | 4e 20 20 3b 0d 0d 0d 3a |od THE|N ;...:| |000039f0| 20 49 4f 46 46 53 09 28 | 20 69 6e 66 61 20 2d 2d | IOFFS.(| infa --| |00003a00| 20 69 6f 66 66 73 20 29 | 09 31 32 20 2b 20 77 40 | ioffs )|.12 + w@| |00003a10| 20 20 3b 0d 3a 20 49 23 | 45 4c 53 09 28 20 69 6e | ;.: I#|ELS.( in| |00003a20| 66 61 20 2d 2d 20 23 65 | 6c 73 20 29 09 31 34 20 |fa -- #e|ls ).14 | |00003a30| 2b 20 77 40 20 20 3b 0d | 3a 20 49 46 46 41 20 09 |+ w@ ;.|: IFFA .| |00003a40| 28 20 69 6e 66 61 20 2d | 2d 20 69 66 66 61 20 29 |( infa -|- iffa )| |00003a50| 09 69 6e 6c 69 6e 65 7b | 20 31 36 20 2b 7d 20 20 |.inline{| 16 +} | |00003a60| 3b 0d 0d 0d 3a 20 5e 4e | 45 58 54 49 56 41 52 09 |;...: ^N|EXTIVAR.| |00003a70| 5c 20 28 20 69 6e 66 61 | 20 2d 2d 20 69 6e 66 61 |\ ( infa| -- infa| |00003a80| 27 20 29 0d 09 69 6c 66 | 61 20 20 64 69 73 70 6c |' )..ilf|a displ| |00003a90| 61 63 65 20 20 3b 0d 0d | 0d 5c 09 09 09 09 09 09 |ace ;..|.\......| |00003aa0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00003ab0| 3d 3d 3d 3d 3d 3d 3d 3d | 0d 5c 09 09 09 09 09 09 |========|.\......| |00003ac0| 09 09 42 49 4e 44 49 4e | 47 0d 5c 09 09 09 09 09 |..BINDIN|G.\.....| |00003ad0| 09 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.=======|========| |00003ae0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 0d 0d 20 20 20 20 30 |========|=.. 0| |00003af0| 09 76 61 6c 75 65 09 4f | 42 4a 5f 42 41 53 45 0d |.value.O|BJ_BASE.| |00003b00| 20 20 20 20 30 09 76 61 | 6c 75 65 09 4f 42 4a 5f | 0.va|lue.OBJ_| |00003b10| 44 49 53 50 4c 0d 20 20 | 20 20 30 09 76 61 6c 75 |DISPL. | 0.valu| |00003b20| 65 09 4f 42 4a 5f 4c 4f | 43 41 4c 5f 44 49 53 50 |e.OBJ_LO|CAL_DISP| |00003b30| 4c 0d 20 20 20 20 30 09 | 76 61 6c 75 65 09 4f 42 |L. 0.|value.OB| |00003b40| 4a 5f 49 4e 44 0d 0d 66 | 61 6c 73 65 09 76 61 6c |J_IND..f|alse.val| |00003b50| 75 65 09 53 45 4c 46 3f | 0d 0d 0d 3a 20 28 4f 42 |ue.SELF?|...: (OB| |00003b60| 4a 29 09 09 5c 20 43 61 | 6c 6c 65 64 20 66 72 6f |J)..\ Ca|lled fro| |00003b70| 6d 20 77 69 74 68 69 6e | 20 61 6e 20 69 6e 6c 69 |m within| an inli| |00003b80| 6e 65 20 6d 65 74 68 6f | 64 2e 20 20 50 61 73 73 |ne metho|d. Pass| |00003b90| 65 73 20 74 68 65 20 6f | 62 6a 65 63 74 27 73 0d |es the o|bject's.| |00003ba0| 09 09 09 5c 20 20 62 61 | 73 65 20 61 6e 64 20 64 |...\ ba|se and d| |00003bb0| 69 73 70 6c 61 63 65 6d | 65 6e 74 20 74 6f 20 48 |isplacem|ent to H| |00003bc0| 61 6e 64 6c 65 72 73 20 | 74 6f 20 67 65 6e 65 72 |andlers |to gener| |00003bd0| 61 74 65 20 74 68 65 20 | 63 6f 72 72 65 63 74 0d |ate the |correct.| |00003be0| 09 09 09 5c 20 20 61 64 | 64 72 65 73 73 2e 20 20 |...\ ad|dress. | |00003bf0| 4f 70 74 69 6d 69 7a 61 | 74 69 6f 6e 20 77 69 6c |Optimiza|tion wil| |00003c00| 6c 20 74 68 65 6e 20 61 | 70 70 6c 79 2e 0d 0d 09 |l then a|pply....| |00003c10| 6f 62 6a 5f 62 61 73 65 | 20 6f 62 6a 5f 64 69 73 |obj_base| obj_dis| |00003c20| 70 6c 0d 09 6f 62 6a 5f | 69 6e 64 20 20 67 65 6e |pl..obj_|ind gen| |00003c30| 61 64 64 72 0d 09 6f 62 | 6a 5f 6c 6f 63 61 6c 5f |addr..ob|j_local_| |00003c40| 64 69 73 70 6c 20 20 70 | 6f 73 74 70 6f 6e 65 20 |displ p|ostpone | |00003c50| 6c 69 74 65 72 61 6c 20 | 20 70 6f 73 74 70 6f 6e |literal | postpon| |00003c60| 65 20 2b 20 20 3b 0d 0d | 0d 3a 20 28 49 58 29 0d |e + ;..|.: (IX).| |00003c70| 0d 09 28 2a 09 43 61 6c | 6c 65 64 20 66 72 6f 6d |..(*.Cal|led from| |00003c80| 20 77 69 74 68 69 6e 20 | 61 6e 20 69 6e 6c 69 6e | within |an inlin| |00003c90| 65 20 6d 65 74 68 6f 64 | 2e 20 20 43 6f 6d 70 69 |e method|. Compi| |00003ca0| 6c 65 73 20 63 6f 64 65 | 20 74 6f 20 67 65 6e 65 |les code| to gene| |00003cb0| 72 61 74 65 0d 09 09 74 | 68 65 20 69 6e 64 65 78 |rate...t|he index| |00003cc0| 65 64 20 61 64 64 72 65 | 73 73 2e 0d 09 09 5e 63 |ed addre|ss....^c| |00003cd0| 6f 6d 70 5f 63 6c 61 73 | 73 20 68 61 73 20 62 65 |omp_clas|s has be| |00003ce0| 65 6e 20 73 65 74 20 62 | 79 20 69 6e 6c 5f 62 69 |en set b|y inl_bi| |00003cf0| 6e 64 20 74 6f 20 74 68 | 65 20 63 6c 61 73 73 20 |nd to th|e class | |00003d00| 6f 66 20 74 68 65 20 6f | 62 6a 0d 09 09 77 65 27 |of the o|bj...we'| |00003d10| 72 65 20 62 69 6e 64 69 | 6e 67 20 74 6f 2e 20 20 |re bindi|ng to. | |00003d20| 4f 6e 65 20 74 72 69 63 | 6b 79 20 70 6f 69 6e 74 |One tric|ky point| |00003d30| 20 69 73 20 74 68 61 74 | 20 74 6f 20 61 63 63 65 | is that| to acce| |00003d40| 73 73 20 74 68 65 20 69 | 6e 64 65 78 65 64 0d 09 |ss the i|ndexed..| |00003d50| 09 61 72 65 61 2c 20 77 | 65 20 68 61 76 65 20 74 |.area, w|e have t| |00003d60| 6f 20 75 73 65 20 74 68 | 65 20 64 6c 65 6e 20 76 |o use th|e dlen v| |00003d70| 61 6c 75 65 20 69 6e 20 | 74 68 69 73 20 63 6c 61 |alue in |this cla| |00003d80| 73 73 2c 20 6e 6f 74 20 | 74 68 65 20 63 6c 61 73 |ss, not |the clas| |00003d90| 73 0d 09 09 6f 66 20 74 | 68 65 20 6d 65 74 68 6f |s...of t|he metho| |00003da0| 64 20 77 65 27 72 65 20 | 63 61 6c 6c 69 6e 67 20 |d we're |calling | |00003db0| 28 77 68 69 63 68 20 6d | 61 79 20 62 65 20 61 20 |(which m|ay be a | |00003dc0| 73 75 70 65 72 63 6c 61 | 73 73 29 2e 20 20 42 75 |supercla|ss). Bu| |00003dd0| 74 0d 09 09 74 68 65 20 | 6f 62 6a 5f 6c 6f 63 61 |t...the |obj_loca| |00003de0| 6c 5f 64 69 73 70 6c 20 | 68 61 73 20 61 6c 72 65 |l_displ |has alre| |00003df0| 61 64 79 20 68 61 64 20 | 74 68 65 20 65 6d 62 65 |ady had |the embe| |00003e00| 64 64 65 64 20 6f 62 6a | 65 63 74 20 6f 66 66 73 |dded obj|ect offs| |00003e10| 65 74 0d 09 09 61 64 64 | 65 64 20 69 6e 20 28 69 |et...add|ed in (i| |00003e20| 66 20 61 6e 79 29 2e 20 | 20 57 65 20 68 61 76 65 |f any). | We have| |00003e30| 20 74 6f 20 69 67 6e 6f | 72 65 20 74 68 69 73 2c | to igno|re this,| |00003e40| 20 73 69 6e 63 65 20 77 | 65 27 72 65 20 75 73 69 | since w|e're usi| |00003e50| 6e 67 20 0d 09 09 74 68 | 65 20 6f 62 6a 65 63 74 |ng ...th|e object| |00003e60| 27 73 20 63 6c 61 73 73 | 2c 20 6e 6f 74 20 74 68 |'s class|, not th| |00003e70| 65 20 6d 65 74 68 6f 64 | 27 73 2e 20 20 57 68 65 |e method|'s. Whe| |00003e80| 6e 20 74 68 65 20 6d 65 | 74 68 6f 64 20 77 61 73 |n the me|thod was| |00003e90| 20 66 6f 75 6e 64 2c 0d | 09 09 74 68 65 20 76 61 | found,.|..the va| |00003ea0| 6c 75 65 20 65 6d 62 5f | 6f 62 6a 5f 6f 66 66 73 |lue emb_|obj_offs| |00003eb0| 20 77 61 73 20 73 65 74 | 20 74 6f 20 74 68 69 73 | was set| to this| |00003ec0| 20 6f 66 66 73 65 74 2c | 20 73 6f 20 77 65 20 73 | offset,| so we s| |00003ed0| 75 62 74 72 61 63 74 0d | 09 09 69 74 20 68 65 72 |ubtract.|..it her| |00003ee0| 65 2e 0d 09 2a 29 0d 0d | 09 5e 63 6f 6d 70 5f 63 |e...*)..|.^comp_c| |00003ef0| 6c 61 73 73 20 64 6c 65 | 6e 26 78 77 69 64 20 20 |lass dle|n&xwid | |00003f00| 73 77 61 70 0d 09 73 65 | 6c 66 3f 0d 09 49 46 20 |swap..se|lf?..IF | |00003f10| 20 64 72 6f 70 20 20 2d | 31 20 20 45 4c 53 45 20 | drop -|1 ELSE | |00003f20| 20 61 6c 69 67 6e 65 64 | 20 20 36 20 2b 20 20 54 | aligned| 6 + T| |00003f30| 48 45 4e 0d 09 6f 62 6a | 5f 62 61 73 65 20 6f 62 |HEN..obj|_base ob| |00003f40| 6a 5f 64 69 73 70 6c 20 | 6f 62 6a 5f 6c 6f 63 61 |j_displ |obj_loca| |00003f50| 6c 5f 64 69 73 70 6c 0d | 09 65 6d 62 5f 6f 62 6a |l_displ.|.emb_obj| |00003f60| 5f 6f 66 66 73 20 2d 0d | 09 6f 62 6a 5f 69 6e 64 |_offs -.|.obj_ind| |00003f70| 20 20 5e 63 6f 6d 70 5f | 63 6c 61 73 73 20 66 66 | ^comp_|class ff| |00003f80| 61 20 77 40 0d 09 67 65 | 6e 78 61 64 64 72 20 20 |a w@..ge|nxaddr | |00003f90| 3b 0d 0d 0d 3a 20 5e 42 | 41 53 45 0d 09 63 6f 6d |;...: ^B|ASE..com| |00003fa0| 70 69 6e 6c 69 6e 65 3f | 0d 09 49 46 09 09 28 6f |pinline?|..IF..(o| |00003fb0| 62 6a 29 0d 09 45 4c 53 | 45 09 70 6f 73 74 70 6f |bj)..ELS|E.postpo| |00003fc0| 6e 65 20 5e 62 61 73 65 | 0d 09 54 48 45 4e 20 20 |ne ^base|..THEN | |00003fd0| 3b 09 09 09 69 6d 6d 65 | 64 69 61 74 65 0d 0d 0d |;...imme|diate...| |00003fe0| 3a 20 5e 45 4c 45 4d 0d | 09 63 6f 6d 70 69 6e 6c |: ^ELEM.|.compinl| |00003ff0| 69 6e 65 3f 0d 09 49 46 | 09 09 28 69 78 29 0d 09 |ine?..IF|..(ix)..| |00004000| 45 4c 53 45 09 70 6f 73 | 74 70 6f 6e 65 20 5e 65 |ELSE.pos|tpone ^e| |00004010| 6c 65 6d 0d 09 54 48 45 | 4e 20 20 3b 09 09 09 69 |lem..THE|N ;...i| |00004020| 6d 6d 65 64 69 61 74 65 | 0d 0d 0d 3a 20 4f 42 4a |mmediate|...: OBJ| |00004030| 09 70 6f 73 74 70 6f 6e | 65 20 5e 62 61 73 65 20 |.postpon|e ^base | |00004040| 20 3b 09 69 6d 6d 65 64 | 69 61 74 65 09 09 5c 20 | ;.immed|iate..\ | |00004050| 66 6f 72 20 62 61 63 6b | 77 61 72 64 20 63 6f 6d |for back|ward com| |00004060| 70 61 74 69 62 69 6c 69 | 74 79 0d 3a 20 49 58 09 |patibili|ty.: IX.| |00004070| 70 6f 73 74 70 6f 6e 65 | 20 5e 65 6c 65 6d 20 20 |postpone| ^elem | |00004080| 3b 09 69 6d 6d 65 64 69 | 61 74 65 09 09 5c 20 64 |;.immedi|ate..\ d| |00004090| 69 74 74 6f 0d 0d 0d 6c | 6f 63 61 6c 20 20 45 41 |itto...l|ocal EA| |000040a0| 52 4c 59 5f 42 49 4e 44 | 20 20 7b 20 6f 43 66 61 |RLY_BIND| { oCfa| |000040b0| 20 6f 42 61 73 65 20 6f | 44 69 73 70 6c 20 6f 4c | oBase o|Displ oL| |000040c0| 44 69 73 70 6c 20 6f 69 | 6e 64 20 73 6c 66 3f 20 |Displ oi|nd slf? | |000040d0| 5c 20 5e 6d 6f 64 20 70 | 74 72 20 2d 2d 20 7d 0d |\ ^mod p|tr -- }.| |000040e0| 0d 0d 3a 20 49 4e 4c 5f | 42 49 4e 44 09 5c 20 28 |..: INL_|BIND.\ (| |000040f0| 20 2d 2d 20 62 20 29 0d | 09 5c 20 49 6e 2d 6c 69 | -- b ).|.\ In-li| |00004100| 6e 65 20 63 6f 64 65 20 | 74 6f 20 62 65 20 63 6f |ne code |to be co| |00004110| 6d 70 69 6c 65 64 20 66 | 6f 72 20 74 68 69 73 20 |mpiled f|or this | |00004120| 6d 65 74 68 6f 64 2e 0d | 09 5c 20 42 75 74 20 6e |method..|.\ But n| |00004130| 6f 74 65 2c 20 77 65 20 | 64 6f 6e 27 74 20 64 6f |ote, we |don't do| |00004140| 20 69 74 20 69 66 20 6f | 62 6a 5f 62 61 73 65 20 | it if o|bj_base | |00004150| 69 73 20 7a 65 72 6f 2c | 20 6d 65 61 6e 69 6e 67 |is zero,| meaning| |00004160| 20 74 68 61 74 0d 09 5c | 20 77 65 20 68 61 76 65 | that..\| we have| |00004170| 20 70 75 74 20 74 68 65 | 20 5e 6f 62 6a 20 69 6e | put the| ^obj in| |00004180| 20 41 30 20 61 73 20 61 | 20 74 65 6d 70 6f 72 61 | A0 as a| tempora| |00004190| 72 79 2e 20 20 53 6f 6d | 65 20 69 6e 6c 69 6e 65 |ry. Som|e inline| |000041a0| 0d 09 5c 20 6d 65 74 68 | 6f 64 73 20 63 6f 75 6c |..\ meth|ods coul| |000041b0| 64 20 63 61 75 73 65 20 | 61 20 63 6c 61 73 68 20 |d cause |a clash | |000041c0| 6f 6e 20 41 30 2e 20 20 | 53 6f 20 69 6e 20 74 68 |on A0. |So in th| |000041d0| 69 73 20 63 61 73 65 20 | 77 65 0d 09 5c 20 63 61 |is case |we..\ ca| |000041e0| 6c 6c 20 74 68 65 20 6f | 75 74 2d 6f 66 2d 6c 69 |ll the o|ut-of-li| |000041f0| 6e 65 20 63 6f 64 65 20 | 2d 20 77 65 20 72 65 74 |ne code |- we ret| |00004200| 75 72 6e 20 74 72 75 65 | 20 73 6f 20 74 68 61 74 |urn true| so that| |00004210| 20 74 68 69 73 0d 09 5c | 20 77 69 6c 6c 20 62 65 | this..\| will be| |00004220| 20 64 6f 6e 65 20 62 79 | 20 4e 4f 52 4d 5f 42 49 | done by| NORM_BI| |00004230| 4e 44 2e 20 20 4f 74 68 | 65 72 77 69 73 65 20 77 |ND. Oth|erwise w| |00004240| 65 20 72 65 74 75 72 6e | 20 66 61 6c 73 65 2e 0d |e return| false..| |00004250| 0d 09 6f 62 6a 5f 62 61 | 73 65 0d 09 4e 49 46 09 |..obj_ba|se..NIF.| |00004260| 09 09 09 09 09 09 09 09 | 5c 20 55 70 64 61 74 65 |........|\ Update| |00004270| 20 63 66 61 20 74 6f 20 | 74 68 65 20 6f 75 74 2d | cfa to |the out-| |00004280| 6f 66 2d 6c 69 6e 65 20 | 63 6f 64 65 0d 09 09 6f |of-line |code...o| |00004290| 43 66 61 20 32 2b 20 64 | 75 70 20 63 40 20 2b 20 |Cfa 2+ d|up c@ + | |000042a0| 61 6c 69 67 6e 65 64 20 | 20 2d 3e 20 6f 43 66 61 |aligned | -> oCfa| |000042b0| 20 20 74 72 75 65 0d 09 | 45 4c 53 45 0d 09 09 5e | true..|ELSE...^| |000042c0| 63 6f 6d 70 5f 63 6c 61 | 73 73 20 20 63 73 74 61 |comp_cla|ss csta| |000042d0| 74 65 20 20 73 65 6c 66 | 3f 09 09 09 09 5c 20 53 |te self|?....\ S| |000042e0| 61 76 65 20 6f 76 65 72 | 20 75 70 63 6f 6d 69 6e |ave over| upcomin| |000042f0| 67 20 65 76 61 6c 75 61 | 74 65 0d 09 09 73 6c 66 |g evalua|te...slf| |00004300| 3f 20 4e 49 46 20 20 6f | 62 6a 43 6c 61 73 73 20 |? NIF o|bjClass | |00004310| 2d 3e 20 5e 63 6f 6d 70 | 5f 63 6c 61 73 73 20 20 |-> ^comp|_class | |00004320| 54 48 45 4e 09 5c 20 53 | 65 74 20 5e 63 6f 6d 70 |THEN.\ S|et ^comp| |00004330| 5f 63 6c 61 73 73 20 61 | 6e 64 20 63 73 74 61 74 |_class a|nd cstat| |00004340| 65 0d 09 09 74 72 75 65 | 20 2d 3e 20 63 73 74 61 |e...true| -> csta| |00004350| 74 65 09 09 09 09 09 09 | 09 5c 20 20 73 6f 20 69 |te......|.\ so i| |00004360| 76 61 72 73 20 61 72 65 | 20 61 63 63 65 73 73 69 |vars are| accessi| |00004370| 62 6c 65 0d 09 09 73 6c | 66 3f 20 2d 3e 20 73 65 |ble...sl|f? -> se| |00004380| 6c 66 3f 0d 09 09 6f 43 | 66 61 20 20 28 63 6f 6d |lf?...oC|fa (com| |00004390| 70 69 6e 6c 29 0d 09 09 | 2d 3e 20 73 65 6c 66 3f |pinl)...|-> self?| |000043a0| 20 20 2d 3e 20 63 73 74 | 61 74 65 20 20 2d 3e 20 | -> cst|ate -> | |000043b0| 5e 63 6f 6d 70 5f 63 6c | 61 73 73 09 09 5c 20 52 |^comp_cl|ass..\ R| |000043c0| 65 73 74 6f 72 65 0d 09 | 09 66 61 6c 73 65 0d 09 |estore..|.false..| |000043d0| 54 48 45 4e 20 20 3b 0d | 0d 0d 3a 20 53 45 54 55 |THEN ;.|..: SETU| |000043e0| 50 5f 4d 4f 44 55 4c 45 | 5f 42 49 4e 44 0d 09 68 |P_MODULE|_BIND..h| |000043f0| 65 6c 64 4d 6f 64 0d 09 | 40 20 40 09 09 09 5c 20 |eldMod..|@ @...\ | |00004400| 67 65 74 20 6d 6f 64 20 | 68 61 6e 64 6c 65 20 61 |get mod |handle a| |00004410| 6e 64 20 64 65 72 65 66 | 65 72 65 6e 63 65 20 2d |nd deref|erence -| |00004420| 20 61 64 64 72 20 6f 66 | 20 6d 6f 64 20 73 74 61 | addr of| mod sta| |00004430| 72 74 0d 09 53 41 6d 61 | 73 6b 20 61 6e 64 20 20 |rt..SAma|sk and | |00004440| 2d 3e 20 5e 6d 6f 64 0d | 09 5e 6d 6f 64 20 38 20 |-> ^mod.|.^mod 8 | |00004450| 2b 20 2d 3e 20 70 74 72 | 09 09 09 5c 20 73 65 6c |+ -> ptr|...\ sel| |00004460| 66 2d 72 65 6c 20 61 64 | 64 72 20 6f 66 20 65 78 |f-rel ad|dr of ex| |00004470| 70 6f 72 74 73 20 74 61 | 62 6c 65 0d 09 70 74 72 |ports ta|ble..ptr| |00004480| 20 40 20 2b 2b 3e 20 70 | 74 72 09 09 09 5c 20 70 | @ ++> p|tr...\ p| |00004490| 74 72 20 2d 3e 20 73 74 | 61 72 74 20 6f 66 20 74 |tr -> st|art of t| |000044a0| 61 62 6c 65 0d 09 30 20 | 2d 3e 20 6d 65 74 68 49 |able..0 |-> methI| |000044b0| 6e 64 65 78 0d 09 42 45 | 47 49 4e 0d 09 09 70 74 |ndex..BE|GIN...pt| |000044c0| 72 20 40 20 64 75 70 20 | 30 3c 20 3f 65 72 72 6f |r @ dup |0< ?erro| |000044d0| 72 20 31 39 38 0d 09 09 | 5e 6d 6f 64 20 2b 20 20 |r 198...|^mod + | |000044e0| 6f 43 66 61 20 3d 0d 09 | 4e 57 48 49 4c 45 0d 09 |oCfa =..|NWHILE..| |000044f0| 09 34 20 2b 2b 3e 20 6d | 65 74 68 49 6e 64 65 78 |.4 ++> m|ethIndex| |00004500| 20 20 34 20 2b 2b 3e 20 | 70 74 72 0d 09 52 45 50 | 4 ++> |ptr..REP| |00004510| 45 41 54 0d 3b 0d 09 0d | 0d 3a 20 4e 4f 52 4d 5f |EAT.;...|.: NORM_| |00004520| 42 49 4e 44 0d 09 68 65 | 6c 64 4d 6f 64 20 49 46 |BIND..he|ldMod IF| |00004530| 20 20 73 65 74 75 70 5f | 6d 6f 64 75 6c 65 5f 62 | setup_|module_b| |00004540| 69 6e 64 20 20 54 48 45 | 4e 0d 09 6f 43 66 61 20 |ind THE|N..oCfa | |00004550| 20 28 6f 62 6a 29 20 20 | 45 42 20 20 3b 0d 0d 0d | (obj) |EB ;...| |00004560| 3a 6c 6f 63 20 20 45 41 | 52 4c 59 5f 42 49 4e 44 |:loc EA|RLY_BIND| |00004570| 09 09 5c 20 7b 20 6f 43 | 66 61 20 6f 42 61 73 65 |..\ { oC|fa oBase| |00004580| 20 6f 44 69 73 70 6c 20 | 6f 4c 44 69 73 70 6c 20 | oDispl |oLDispl | |00004590| 6f 69 6e 64 20 73 6c 66 | 3f 20 2d 2d 20 7d 0d 09 |oind slf|? -- }..| |000045a0| 6f 62 6a 5f 62 61 73 65 | 20 20 6f 62 6a 5f 64 69 |obj_base| obj_di| |000045b0| 73 70 6c 20 20 6f 62 6a | 5f 6c 6f 63 61 6c 5f 64 |spl obj|_local_d| |000045c0| 69 73 70 6c 20 20 6f 62 | 6a 5f 69 6e 64 09 09 5c |ispl ob|j_ind..\| |000045d0| 20 53 61 76 65 0d 09 6f | 42 61 73 65 09 2d 3e 20 | Save..o|Base.-> | |000045e0| 6f 62 6a 5f 62 61 73 65 | 20 20 20 20 09 09 6f 44 |obj_base| ..oD| |000045f0| 69 73 70 6c 09 2d 3e 20 | 6f 62 6a 5f 64 69 73 70 |ispl.-> |obj_disp| |00004600| 6c 0d 09 4f 4c 64 69 73 | 70 6c 09 2d 3e 20 6f 62 |l..OLdis|pl.-> ob| |00004610| 6a 5f 6c 6f 63 61 6c 5f | 64 69 73 70 6c 09 6f 69 |j_local_|displ.oi| |00004620| 6e 64 09 2d 3e 20 6f 62 | 6a 5f 69 6e 64 0d 09 6f |nd.-> ob|j_ind..o| |00004630| 43 66 61 20 77 40 20 20 | 69 6e 6c 4d 6b 20 3d 0d |Cfa w@ |inlMk =.| |00004640| 09 49 46 20 20 69 6e 6c | 5f 62 69 6e 64 20 20 45 |.IF inl|_bind E| |00004650| 4c 53 45 20 20 74 72 75 | 65 20 20 54 48 45 4e 0d |LSE tru|e THEN.| |00004660| 09 49 46 20 20 6e 6f 72 | 6d 5f 62 69 6e 64 20 20 |.IF nor|m_bind | |00004670| 54 48 45 4e 0d 09 2d 3e | 20 6f 62 6a 5f 69 6e 64 |THEN..->| obj_ind| |00004680| 20 20 2d 3e 20 6f 62 6a | 5f 6c 6f 63 61 6c 5f 64 | -> obj|_local_d| |00004690| 69 73 70 6c 0d 09 2d 3e | 20 6f 62 6a 5f 64 69 73 |ispl..->| obj_dis| |000046a0| 70 6c 20 20 2d 3e 20 6f | 62 6a 5f 62 61 73 65 09 |pl -> o|bj_base.| |000046b0| 09 09 09 09 09 09 5c 20 | 52 65 73 74 6f 72 65 0d |......\ |Restore.| |000046c0| 3b 6c 6f 63 0d 0d 0d 3a | 20 42 49 4e 44 5f 54 4f |;loc...:| BIND_TO| |000046d0| 5f 4f 42 4a 20 20 7b 20 | 63 66 61 20 5e 6f 62 6a |_OBJ { |cfa ^obj| |000046e0| 20 6f 66 66 73 20 2d 2d | 20 7d 0d 09 63 66 61 0d | offs --| }..cfa.| |000046f0| 09 2d 31 09 09 09 09 09 | 5c 20 2d 31 20 61 73 20 |.-1.....|\ -1 as | |00004700| 22 62 61 73 65 22 20 73 | 69 67 6e 61 6c 73 20 68 |"base" s|ignals h| |00004710| 61 6e 64 6c 65 72 73 20 | 74 6f 20 67 65 6e 65 72 |andlers |to gener| |00004720| 61 74 65 0d 09 5e 6f 62 | 6a 09 09 09 09 5c 20 20 |ate..^ob|j....\ | |00004730| 61 20 6e 6f 72 6d 61 6c | 20 64 69 63 20 61 64 64 |a normal| dic add| |00004740| 72 2e 20 20 57 65 20 73 | 74 69 6c 6c 20 63 61 72 |r. We s|till car| |00004750| 72 79 20 74 68 65 0d 09 | 09 09 09 09 09 5c 20 20 |ry the..|.....\ | |00004760| 6f 66 66 73 20 68 65 72 | 65 20 73 69 6e 63 65 20 |offs her|e since | |00004770| 69 66 20 77 65 20 6e 65 | 65 64 20 74 6f 20 61 63 |if we ne|ed to ac| |00004780| 63 65 73 73 20 74 68 65 | 0d 09 09 09 09 09 09 5c |cess the|.......\| |00004790| 20 20 69 6e 64 65 78 65 | 64 20 61 72 65 61 2c 20 | indexe|d area, | |000047a0| 77 65 20 77 61 6e 74 20 | 74 68 65 20 6f 72 69 67 |we want |the orig| |000047b0| 69 6e 61 6c 20 6f 62 6a | 20 61 64 64 72 2c 0d 09 |inal obj| addr,..| |000047c0| 09 09 09 09 09 5c 20 20 | 6e 6f 74 20 73 6f 6d 65 |.....\ |not some| |000047d0| 20 65 6d 62 65 64 64 65 | 64 20 6f 62 6a 65 63 74 | embedde|d object| |000047e0| 2e 0d 09 6f 66 66 73 20 | 20 30 20 20 66 61 6c 73 |...offs | 0 fals| |000047f0| 65 20 20 65 61 72 6c 79 | 5f 62 69 6e 64 20 20 3b |e early|_bind ;| |00004800| 0d 0d 3a 20 42 49 4e 44 | 5f 54 4f 5f 53 54 4b 09 |..: BIND|_TO_STK.| |00004810| 09 5c 20 28 20 63 66 61 | 20 2d 2d 20 29 0d 09 73 |.\ ( cfa| -- )..s| |00004820| 74 6b 4f 62 6a 20 20 30 | 20 73 77 61 70 20 20 66 |tkObj 0| swap f| |00004830| 61 6c 73 65 20 20 65 61 | 72 6c 79 5f 62 69 6e 64 |alse ea|rly_bind| |00004840| 20 20 3b 0d 0d 3a 20 42 | 49 4e 44 5f 54 4f 5f 49 | ;..: B|IND_TO_I| |00004850| 56 41 52 20 20 7b 20 63 | 66 61 20 6f 66 66 73 20 |VAR { c|fa offs | |00004860| 2d 2d 20 7d 0d 09 63 66 | 61 20 20 6f 62 6a 5f 62 |-- }..cf|a obj_b| |00004870| 61 73 65 20 20 6f 62 6a | 5f 64 69 73 70 6c 0d 09 |ase obj|_displ..| |00004880| 6f 62 6a 5f 6c 6f 63 61 | 6c 5f 64 69 73 70 6c 20 |obj_loca|l_displ | |00004890| 6f 66 66 73 20 2b 0d 09 | 6f 62 6a 5f 69 6e 64 20 |offs +..|obj_ind | |000048a0| 20 66 61 6c 73 65 20 20 | 65 61 72 6c 79 5f 62 69 | false |early_bi| |000048b0| 6e 64 20 20 3b 0d 0d 3a | 20 42 49 4e 44 5f 54 4f |nd ;..:| BIND_TO| |000048c0| 5f 54 4d 50 4f 42 4a 20 | 20 7b 20 63 66 61 20 6f |_TMPOBJ | { cfa o| |000048d0| 66 66 73 20 2d 2d 20 7d | 0d 09 63 66 61 0d 09 34 |ffs -- }|..cfa..4| |000048e0| 09 09 5c 20 6c 6f 63 52 | 65 67 20 3d 20 44 34 0d |..\ locR|eg = D4.| |000048f0| 09 6f 66 66 73 0d 09 30 | 20 30 20 66 61 6c 73 65 |.offs..0| 0 false| |00004900| 20 20 65 61 72 6c 79 5f | 62 69 6e 64 20 20 3b 0d | early_|bind ;.| |00004910| 0d 3a 20 42 49 4e 44 5f | 54 4f 5f 53 45 4c 46 20 |.: BIND_|TO_SELF | |00004920| 20 7b 20 63 66 61 20 6f | 66 66 73 20 2d 2d 20 7d | { cfa o|ffs -- }| |00004930| 0d 09 63 66 61 20 20 6f | 62 6a 5f 62 61 73 65 20 |..cfa o|bj_base | |00004940| 20 6f 62 6a 5f 64 69 73 | 70 6c 20 20 6f 66 66 73 | obj_dis|pl offs| |00004950| 20 20 6f 62 6a 5f 69 6e | 64 20 20 74 72 75 65 20 | obj_in|d true | |00004960| 20 65 61 72 6c 79 5f 62 | 69 6e 64 20 20 3b 0d 0d | early_b|ind ;..| |00004970| 0d 0d 5c 09 09 09 09 09 | 3d 3d 3d 3d 3d 3d 3d 3d |..\.....|========| |00004980| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00004990| 3d 3d 3d 0d 5c 09 09 09 | 09 09 20 49 4e 49 54 49 |===.\...|.. INITI| |000049a0| 41 4c 49 5a 49 4e 47 20 | 4e 45 57 20 4f 42 4a 45 |ALIZING |NEW OBJE| |000049b0| 43 54 53 0d 5c 09 09 09 | 09 09 3d 3d 3d 3d 3d 3d |CTS.\...|..======| |000049c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000049d0| 3d 3d 3d 3d 3d 0d 0d 66 | 61 6c 73 65 09 76 61 6c |=====..f|alse.val| |000049e0| 75 65 09 52 45 43 3f 09 | 09 5c 20 41 72 65 20 77 |ue.REC?.|.\ Are w| |000049f0| 65 20 63 6f 6d 70 69 6c | 69 6e 67 20 61 20 72 65 |e compil|ing a re| |00004a00| 63 6f 72 64 3f 0d 66 61 | 6c 73 65 09 76 61 6c 75 |cord?.fa|lse.valu| |00004a10| 65 09 55 4e 49 4f 4e 3f | 09 09 5c 20 41 72 65 20 |e.UNION?|..\ Are | |00004a20| 77 65 20 63 6f 6d 70 69 | 6c 69 6e 67 20 61 20 75 |we compi|ling a u| |00004a30| 6e 69 6f 6e 20 69 6e 20 | 61 20 72 65 63 6f 72 64 |nion in |a record| |00004a40| 3f 0d 09 30 09 76 61 6c | 75 65 09 55 4e 49 4f 4e |?..0.val|ue.UNION| |00004a50| 4f 46 46 53 09 5c 20 42 | 61 73 65 20 6f 66 66 73 |OFFS.\ B|ase offs| |00004a60| 65 74 20 6f 66 20 74 68 | 65 20 63 75 72 72 65 6e |et of th|e curren| |00004a70| 74 20 75 6e 69 6f 6e 0d | 0d 0d 3a 20 49 4e 49 54 |t union.|..: INIT| |00004a80| 5f 4f 42 4a 20 20 20 28 | 20 74 68 65 43 6c 61 73 |_OBJ (| theClas| |00004a90| 73 20 74 68 65 4f 62 6a | 20 2d 2d 20 29 0d 0d 28 |s theObj| -- )..(| |00004aa0| 2a 09 50 65 72 66 6f 72 | 6d 73 20 43 4c 41 53 53 |*.Perfor|ms CLASS| |00004ab0| 49 4e 49 54 3a 20 6d 65 | 74 68 6f 64 20 6f 6e 20 |INIT: me|thod on | |00004ac0| 6f 62 6a 65 63 74 2e 20 | 20 4e 6f 74 65 2c 20 77 |object. | Note, w| |00004ad0| 65 20 71 75 69 74 65 20 | 64 65 6c 69 62 65 72 61 |e quite |delibera| |00004ae0| 74 65 6c 79 20 64 6f 6e | 27 74 20 0d 09 63 68 65 |tely don|'t ..che| |00004af0| 63 6b 20 69 66 20 74 68 | 65 20 6f 66 66 73 65 74 |ck if th|e offset| |00004b00| 20 77 6f 75 6c 64 20 70 | 75 74 20 75 73 20 69 6e | would p|ut us in| |00004b10| 74 6f 20 74 68 65 20 69 | 6e 64 65 78 65 64 20 61 |to the i|ndexed a| |00004b20| 72 65 61 20 6f 66 20 61 | 20 6c 61 72 67 65 5f 6f |rea of a| large_o| |00004b30| 62 6a 5f 61 72 72 61 79 | 2e 0d 09 54 68 69 73 20 |bj_array|...This | |00004b40| 69 73 20 62 65 63 61 75 | 73 65 20 77 65 20 64 6f |is becau|se we do| |00004b50| 6e 27 74 20 77 61 6e 74 | 20 74 6f 20 73 65 6e 64 |n't want| to send| |00004b60| 20 43 4c 41 53 53 49 4e | 49 54 3a 20 69 6e 64 69 | CLASSIN|IT: indi| |00004b70| 76 69 64 75 61 6c 6c 79 | 20 74 6f 20 65 61 63 68 |vidually| to each| |00004b80| 20 6f 66 20 74 68 65 0d | 09 69 6e 64 65 78 65 64 | of the.|.indexed| |00004b90| 20 65 6c 65 6d 65 6e 74 | 73 2c 20 62 75 74 20 69 | element|s, but i| |00004ba0| 6e 73 74 65 61 64 20 77 | 65 20 6a 75 73 74 20 73 |nstead w|e just s| |00004bb0| 65 6e 64 20 69 74 20 74 | 6f 20 74 68 65 20 62 61 |end it t|o the ba| |00004bc0| 73 65 20 65 6c 65 6d 65 | 6e 74 2e 20 20 54 68 65 |se eleme|nt. The| |00004bd0| 6e 2c 0d 09 43 4c 41 53 | 53 49 4e 49 54 3a 20 69 |n,..CLAS|SINIT: i| |00004be0| 6e 20 74 68 65 20 6c 61 | 72 67 65 5f 6f 62 6a 5f |n the la|rge_obj_| |00004bf0| 61 72 72 61 79 20 63 6c | 61 73 73 20 63 6f 70 69 |array cl|ass copi| |00004c00| 65 73 20 74 68 69 73 20 | 74 6f 20 74 68 65 20 69 |es this |to the i| |00004c10| 6e 64 65 78 65 64 20 65 | 6c 65 6d 65 6e 74 73 2e |ndexed e|lements.| |00004c20| 0d 2a 29 0d 0d 09 73 77 | 61 70 0d 09 28 20 74 68 |.*)...sw|ap..( th| |00004c30| 65 4f 62 6a 20 74 68 65 | 43 6c 61 73 73 20 29 09 |eObj the|Class ).| |00004c40| 09 69 6e 69 74 49 44 20 | 73 77 61 70 20 4d 46 41 |.initID |swap MFA| |00004c50| 5f 6f 66 66 73 65 74 20 | 74 72 75 65 20 28 66 69 |_offset |true (fi| |00004c60| 6e 64 6d 29 0d 09 28 20 | 74 68 65 4f 62 6a 20 6f |ndm)..( |theObj o| |00004c70| 66 66 73 20 78 74 20 74 | 72 75 65 20 29 09 64 72 |ffs xt t|rue ).dr| |00004c80| 6f 70 20 09 5c 20 49 73 | 20 67 75 61 72 61 6e 74 |op .\ Is| guarant| |00004c90| 65 65 64 20 74 6f 20 66 | 69 6e 64 20 43 4c 41 53 |eed to f|ind CLAS| |00004ca0| 53 49 4e 49 54 3a 20 6d | 65 74 68 6f 64 0d 09 28 |SINIT: m|ethod..(| |00004cb0| 20 74 68 65 4f 62 6a 20 | 6f 66 66 73 20 78 74 20 | theObj |offs xt | |00004cc0| 20 29 09 09 3e 72 20 2b | 20 72 3e 09 5c 20 4d 6f | )..>r +| r>.\ Mo| |00004cd0| 64 69 66 79 20 6f 62 6a | 20 61 64 64 72 20 62 79 |dify obj| addr by| |00004ce0| 20 6f 66 66 73 20 28 6e | 65 65 64 65 64 20 69 6e | offs (n|eeded in| |00004cf0| 20 63 61 73 65 0d 09 09 | 09 09 09 09 09 09 09 5c | case...|.......\| |00004d00| 20 20 6d 65 74 68 6f 64 | 20 69 73 20 64 65 66 69 | method| is defi| |00004d10| 6e 65 64 20 69 6e 20 61 | 6e 79 20 73 75 70 65 72 |ned in a|ny super| |00004d20| 63 6c 61 73 73 0d 09 09 | 09 09 09 09 09 09 09 5c |class...|.......\| |00004d30| 20 20 62 75 74 20 74 68 | 65 20 66 69 72 73 74 29 | but th|e first)| |00004d40| 0d 09 28 20 74 68 65 4f | 62 6a 27 20 78 74 20 29 |..( theO|bj' xt )| |00004d50| 20 20 09 09 65 78 2d 6d | 65 74 68 6f 64 0d 3b 0d | ..ex-m|ethod.;.| |00004d60| 0d 0d 3a 20 4d 41 4b 45 | 5f 48 44 52 53 09 09 28 |..: MAKE|_HDRS..(| |00004d70| 20 23 65 6c 73 20 29 20 | 7b 20 74 68 65 43 6c 61 | #els ) |{ theCla| |00004d80| 73 73 20 74 68 65 4f 62 | 6a 20 5c 20 6c 65 6e 20 |ss theOb|j \ len | |00004d90| 77 69 64 20 2d 2d 20 7d | 0d 09 5c 20 61 73 73 75 |wid -- }|..\ assu| |00004da0| 6d 65 73 20 74 68 65 43 | 6c 61 73 73 20 69 73 20 |mes theC|lass is | |00004db0| 74 68 65 20 74 72 75 65 | 20 63 6c 61 73 73 20 61 |the true| class a| |00004dc0| 64 64 72 65 73 73 2c 20 | 6e 6f 74 0d 09 5c 20 74 |ddress, |not..\ t| |00004dd0| 68 65 20 6d 61 69 6e 20 | 64 69 63 74 69 6f 6e 61 |he main |dictiona| |00004de0| 72 79 20 61 64 64 72 65 | 73 73 20 6f 66 20 61 6e |ry addre|ss of an| |00004df0| 20 65 78 70 6f 72 74 65 | 64 20 63 6c 61 73 73 0d | exporte|d class.| |00004e00| 09 5c 20 69 66 20 74 68 | 65 43 6c 61 73 73 20 69 |.\ if th|eClass i| |00004e10| 73 20 6e 6f 74 20 69 6e | 64 65 78 65 64 2c 20 74 |s not in|dexed, t| |00004e20| 68 65 72 65 20 73 68 6f | 75 6c 64 20 62 65 20 6e |here sho|uld be n| |00004e30| 6f 20 23 65 6c 73 20 6f | 6e 20 74 68 65 20 73 74 |o #els o|n the st| |00004e40| 61 63 6b 0d 0d 09 09 41 | 53 53 45 52 54 7b 20 74 |ack....A|SSERT{ t| |00004e50| 68 65 4f 62 6a 20 31 20 | 61 6e 64 20 30 3d 20 7d |heObj 1 |and 0= }| |00004e60| 09 09 5c 20 6f 62 6a 20 | 61 64 64 72 20 6d 75 73 |..\ obj |addr mus| |00004e70| 74 20 62 65 20 61 6c 69 | 67 6e 65 64 20 69 66 20 |t be ali|gned if | |00004e80| 74 68 69 73 0d 09 09 09 | 09 09 09 09 09 09 09 5c |this....|.......\| |00004e90| 20 20 77 6f 72 64 20 69 | 73 20 63 61 6c 6c 65 64 | word i|s called| |00004ea0| 0d 0d 09 09 74 68 65 43 | 6c 61 73 73 20 28 64 6c |....theC|lass (dl| |00004eb0| 65 6e 26 78 77 69 64 29 | 20 20 2d 3e 20 77 69 64 |en&xwid)| -> wid| |00004ec0| 20 20 2d 3e 20 6c 65 6e | 09 09 09 0d 09 09 09 09 | -> len|........| |00004ed0| 09 09 09 09 09 09 09 09 | 0d 09 5c 20 66 69 72 73 |........|..\ firs| |00004ee0| 74 20 74 68 65 20 78 64 | 65 73 63 20 28 69 6e 64 |t the xd|esc (ind| |00004ef0| 65 78 65 64 20 61 72 65 | 61 20 68 65 61 64 65 72 |exed are|a header| |00004f00| 29 2c 20 69 66 20 69 6e | 64 65 78 65 64 20 6f 62 |), if in|dexed ob| |00004f10| 6a 65 63 74 0d 09 09 77 | 69 64 20 09 49 46 09 09 |ject...w|id .IF..| |00004f20| 6c 65 6e 20 61 6c 69 67 | 6e 65 64 20 2d 3e 20 6c |len alig|ned -> l| |00004f30| 65 6e 0d 09 09 09 09 09 | 09 74 68 65 4f 62 6a 20 |en......|.theObj | |00004f40| 6c 65 6e 20 2b 09 09 5c | 20 78 64 65 73 63 20 61 |len +..\| xdesc a| |00004f50| 64 64 72 65 73 73 3a 20 | 61 66 74 65 72 20 69 76 |ddress: |after iv| |00004f60| 61 72 73 0d 09 09 28 20 | 23 65 6c 73 20 5e 78 64 |ars...( |#els ^xd| |00004f70| 65 73 63 20 29 09 77 69 | 64 20 6f 76 65 72 20 77 |esc ).wi|d over w| |00004f80| 21 09 09 09 5c 20 74 77 | 6f 20 62 79 74 65 73 3a |!...\ tw|o bytes:| |00004f90| 20 69 6e 64 65 78 65 64 | 20 77 69 64 74 68 0d 09 | indexed| width..| |00004fa0| 09 28 20 23 65 6c 73 20 | 5e 78 64 65 73 63 20 29 |.( #els |^xdesc )| |00004fb0| 09 73 77 61 70 20 31 2d | 20 73 77 61 70 20 32 2b |.swap 1-| swap 2+| |00004fc0| 20 21 09 5c 20 66 6f 75 | 72 20 62 79 74 65 73 3a | !.\ fou|r bytes:| |00004fd0| 20 6c 69 6d 69 74 20 28 | 20 23 65 6c 73 2d 31 29 | limit (| #els-1)| |00004fe0| 0d 09 09 09 09 09 09 6c | 65 6e 20 31 32 20 2b 09 |.......l|en 12 +.| |00004ff0| 09 09 5c 20 6f 66 66 73 | 65 74 20 74 6f 20 69 6e |..\ offs|et to in| |00005000| 64 65 78 65 64 20 61 72 | 65 61 0d 09 09 09 09 09 |dexed ar|ea......| |00005010| 09 09 09 09 09 09 5c 20 | 20 74 6f 20 62 65 20 70 |......\ | to be p| |00005020| 75 74 20 69 6e 20 6f 62 | 6a 20 68 65 61 64 65 72 |ut in ob|j header| |00005030| 0d 09 09 09 09 45 4c 53 | 45 09 36 09 09 09 09 09 |.....ELS|E.6.....| |00005040| 5c 20 73 74 61 6e 64 61 | 72 64 20 6f 66 66 73 65 |\ standa|rd offse| |00005050| 74 20 69 66 20 6e 6f 74 | 20 69 6e 64 65 78 65 64 |t if not| indexed| |00005060| 0d 09 09 09 09 54 48 45 | 4e 0d 0d 09 09 5c 20 6e |.....THE|N....\ n| |00005070| 6f 77 20 74 68 65 20 6f | 62 6a 20 68 65 61 64 65 |ow the o|bj heade| |00005080| 72 20 69 74 73 65 6c 66 | 0d 09 09 28 20 6f 66 66 |r itself|...( off| |00005090| 73 20 29 09 74 68 65 4f | 62 6a 20 38 20 2d 20 77 |s ).theO|bj 8 - w| |000050a0| 21 09 09 5c 20 32 20 62 | 79 74 65 73 3a 20 6f 66 |!..\ 2 b|ytes: of| |000050b0| 66 73 65 74 20 74 6f 20 | 69 6e 64 65 78 65 64 20 |fset to |indexed | |000050c0| 61 72 65 61 0d 09 09 09 | 09 09 09 09 09 09 09 5c |area....|.......\| |000050d0| 20 20 63 61 6c 63 75 6c | 61 74 65 64 20 61 62 6f | calcul|ated abo| |000050e0| 76 65 0d 09 09 09 09 09 | 74 68 65 43 6c 61 73 73 |ve......|theClass| |000050f0| 20 3f 3e 6d 61 69 6e 64 | 69 63 09 5c 20 64 6f 6e | ?>maind|ic.\ don| |00005100| 27 74 20 73 74 6f 72 65 | 20 6d 6f 64 75 6c 65 20 |'t store| module | |00005110| 61 64 64 72 20 6f 66 20 | 63 6c 61 73 73 21 0d 09 |addr of |class!..| |00005120| 09 09 09 09 66 61 6c 73 | 65 20 2d 3e 20 72 65 6c |....fals|e -> rel| |00005130| 6f 63 43 68 6b 3f 09 5c | 20 6f 62 6a 20 61 64 64 |ocChk?.\| obj add| |00005140| 72 65 73 73 20 63 6f 75 | 6c 64 20 62 65 20 69 6e |ress cou|ld be in| |00005150| 20 68 65 61 70 21 0d 09 | 09 28 20 5e 63 6c 61 73 | heap!..|.( ^clas| |00005160| 73 20 29 09 74 68 65 4f | 62 6a 20 36 20 2d 20 72 |s ).theO|bj 6 - r| |00005170| 65 6c 6f 63 21 09 5c 20 | 34 20 62 79 74 65 73 3a |eloc!.\ |4 bytes:| |00005180| 20 72 65 6c 6f 63 61 74 | 61 62 6c 65 20 63 6c 61 | relocat|able cla| |00005190| 73 73 20 70 6f 69 6e 74 | 65 72 0d 09 09 09 09 09 |ss point|er......| |000051a0| 74 72 75 65 20 2d 3e 20 | 72 65 6c 6f 63 43 68 6b |true -> |relocChk| |000051b0| 3f 0d 09 09 09 09 09 2d | 36 20 74 68 65 4f 62 6a |?......-|6 theObj| |000051c0| 20 32 2d 20 77 21 09 09 | 5c 20 32 20 62 79 74 65 | 2- w!..|\ 2 byte| |000051d0| 73 3a 20 6f 66 66 73 65 | 74 20 74 6f 20 63 6c 61 |s: offse|t to cla| |000051e0| 73 73 20 70 6f 69 6e 74 | 65 72 20 2d 2d 0d 09 09 |ss point|er --...| |000051f0| 09 09 09 09 09 09 09 09 | 5c 20 20 61 6c 77 61 79 |........|\ alway| |00005200| 73 20 2d 36 20 66 6f 72 | 20 6e 6f 6e 2d 65 6d 62 |s -6 for| non-emb| |00005210| 65 64 64 65 64 20 6f 62 | 6a 65 63 74 0d 3b 0d 0d |edded ob|ject.;..| |00005220| 66 6f 72 77 61 72 64 20 | 49 56 53 45 54 55 50 0d |forward |IVSETUP.| |00005230| 0d 3a 20 4e 57 5f 49 56 | 53 45 54 55 50 20 20 7b |.: NW_IV|SETUP {| |00005240| 20 5e 6e 77 61 79 20 62 | 61 73 65 4f 66 66 73 20 | ^nway b|aseOffs | |00005250| 45 4f 6f 66 66 73 20 5c | 20 69 6e 69 74 45 4f 6f |EOoffs \| initEOo| |00005260| 66 66 73 20 73 75 70 43 | 6c 61 73 73 20 73 75 70 |ffs supC|lass sup| |00005270| 4f 66 66 73 20 2d 2d 20 | 7d 0d 0d 28 2a 09 53 65 |Offs -- |}..(*.Se| |00005280| 74 73 20 75 70 20 74 68 | 65 20 67 72 6f 75 70 73 |ts up th|e groups| |00005290| 20 6f 66 20 69 76 61 72 | 73 20 66 6f 72 20 65 61 | of ivar|s for ea| |000052a0| 63 68 20 73 75 70 65 72 | 63 6c 61 73 73 20 6f 66 |ch super|class of| |000052b0| 20 74 68 65 20 63 75 72 | 72 65 6e 74 20 6f 62 6a | the cur|rent obj| |000052c0| 65 63 74 2f 69 76 61 72 | 0d 09 62 65 69 6e 67 20 |ect/ivar|..being | |000052d0| 70 72 6f 63 65 73 73 65 | 64 2e 20 4f 6e 65 20 67 |processe|d. One g| |000052e0| 72 6f 75 70 20 66 6f 72 | 20 65 61 63 68 20 73 75 |roup for| each su| |000052f0| 70 65 72 20 6f 66 20 61 | 20 6d 75 6c 74 69 70 6c |per of a| multipl| |00005300| 79 20 69 6e 68 65 72 69 | 74 65 64 20 6f 62 6a 65 |y inheri|ted obje| |00005310| 63 74 2e 0d 09 45 61 63 | 68 20 67 72 6f 75 70 20 |ct...Eac|h group | |00005320| 77 65 20 63 61 6c 6c 20 | 61 6e 20 22 65 6d 62 65 |we call |an "embe| |00005330| 64 64 65 64 20 6f 62 6a | 65 63 74 22 2c 20 77 68 |dded obj|ect", wh| |00005340| 69 63 68 20 73 6f 72 74 | 20 6f 66 20 64 65 73 63 |ich sort| of desc| |00005350| 72 69 62 65 73 20 77 68 | 61 74 20 69 74 20 69 73 |ribes wh|at it is| |00005360| 2e 0d 09 4f 6e 20 65 6e | 74 72 79 20 5e 6e 77 61 |...On en|try ^nwa| |00005370| 79 20 70 6f 69 6e 74 73 | 20 74 6f 20 74 68 65 20 |y points| to the | |00005380| 66 69 72 73 74 20 73 75 | 70 65 72 63 6c 61 73 73 |first su|perclass| |00005390| 20 70 6f 69 6e 74 65 72 | 20 69 6e 20 74 68 65 20 | pointer| in the | |000053a0| 6e 2d 77 61 79 20 64 65 | 66 69 6e 69 6e 67 0d 09 |n-way de|fining..| |000053b0| 74 68 65 20 6d 75 6c 74 | 69 70 6c 65 20 69 6e 68 |the mult|iple inh| |000053c0| 65 72 69 74 61 6e 63 65 | 2e 20 57 65 20 72 65 70 |eritance|. We rep| |000053d0| 65 61 74 20 74 68 65 20 | 70 72 6f 63 65 64 75 72 |eat the |procedur| |000053e0| 65 20 66 6f 72 20 65 61 | 63 68 20 73 75 70 65 72 |e for ea|ch super| |000053f0| 63 6c 61 73 73 20 75 6e | 74 69 6c 0d 09 74 68 65 |class un|til..the| |00005400| 20 7a 65 72 6f 20 6d 61 | 72 6b 69 6e 67 20 74 68 | zero ma|rking th| |00005410| 65 20 65 6e 64 20 6f 66 | 20 74 68 65 20 6e 2d 77 |e end of| the n-w| |00005420| 61 79 20 69 73 20 65 6e | 63 6f 75 6e 74 65 72 65 |ay is en|countere| |00005430| 64 2e 20 49 66 20 74 68 | 65 20 73 75 70 65 72 63 |d. If th|e superc| |00005440| 6c 61 73 73 0d 09 69 73 | 20 74 68 65 20 70 73 65 |lass..is| the pse| |00005450| 75 64 6f 63 6c 61 73 73 | 20 4d 65 74 61 20 77 65 |udoclass| Meta we| |00005460| 20 64 6f 6e 27 74 20 64 | 6f 20 61 6e 79 74 68 69 | don't d|o anythi| |00005470| 6e 67 20 73 69 6e 63 65 | 20 69 74 20 64 6f 65 73 |ng since| it does| |00005480| 20 6e 6f 74 20 68 61 76 | 65 20 61 6e 79 20 69 76 | not hav|e any iv| |00005490| 61 72 73 2e 0d 09 62 61 | 73 65 4f 66 66 73 20 69 |ars...ba|seOffs i| |000054a0| 73 20 74 68 65 20 70 6f | 73 69 74 69 6f 6e 20 6f |s the po|sition o| |000054b0| 66 20 74 68 65 20 63 75 | 72 72 65 6e 74 20 6f 62 |f the cu|rrent ob| |000054c0| 6a 65 63 74 2f 69 76 61 | 72 27 73 20 64 61 74 61 |ject/iva|r's data| |000054d0| 20 73 70 61 63 65 20 72 | 65 6c 61 74 69 76 65 0d | space r|elative.| |000054e0| 09 74 6f 20 6e 65 77 4f | 62 6a 65 63 74 2c 20 74 |.to newO|bject, t| |000054f0| 68 65 20 63 75 72 72 65 | 6e 74 20 74 6f 70 2d 6c |he curre|nt top-l| |00005500| 65 76 65 6c 20 6f 62 6a | 65 63 74 20 62 65 69 6e |evel obj|ect bein| |00005510| 67 20 63 72 65 61 74 65 | 64 2e 0d 09 45 4f 6f 66 |g create|d...EOof| |00005520| 66 73 20 69 73 20 74 68 | 65 20 6f 66 66 73 65 74 |fs is th|e offset| |00005530| 20 66 72 6f 6d 20 6e 65 | 77 4f 62 6a 65 63 74 20 | from ne|wObject | |00005540| 61 74 20 77 68 69 63 68 | 20 74 68 65 20 63 75 72 |at which| the cur| |00005550| 72 65 6e 74 20 45 6d 62 | 65 64 64 65 64 20 4f 62 |rent Emb|edded Ob| |00005560| 6a 65 63 74 0d 09 73 74 | 61 72 74 73 2e 20 57 68 |ject..st|arts. Wh| |00005570| 65 6e 20 61 6e 20 65 6d | 62 65 64 64 65 64 20 6f |en an em|bedded o| |00005580| 62 6a 65 63 74 20 73 74 | 61 72 74 73 20 61 74 20 |bject st|arts at | |00005590| 61 20 6e 6f 6e 2d 7a 65 | 72 6f 20 45 4f 6f 66 66 |a non-ze|ro EOoff| |000055a0| 73 2c 20 77 65 20 70 75 | 74 20 69 6e 0d 09 66 72 |s, we pu|t in..fr| |000055b0| 6f 6e 74 20 6f 66 20 69 | 74 20 61 20 32 2d 62 79 |ont of i|t a 2-by| |000055c0| 74 65 20 6f 66 66 73 65 | 74 20 74 6f 20 74 68 65 |te offse|t to the| |000055d0| 20 63 6c 61 73 73 20 70 | 6f 69 6e 74 65 72 2e 20 | class p|ointer. | |000055e0| 4e 6f 74 65 20 74 68 61 | 74 20 69 66 20 74 68 65 |Note tha|t if the| |000055f0| 0d 09 6d 75 6c 74 69 70 | 6c 79 20 69 6e 68 65 72 |..multip|ly inher| |00005600| 69 74 65 64 20 6f 62 6a | 65 63 74 20 69 73 20 61 |ited obj|ect is a| |00005610| 6e 20 69 76 61 72 2c 20 | 74 68 65 72 65 20 6d 61 |n ivar, |there ma| |00005620| 79 20 6e 6f 74 20 62 65 | 20 61 20 63 6c 61 73 73 |y not be| a class| |00005630| 20 70 6f 69 6e 74 65 72 | 21 0d 09 54 68 69 73 20 | pointer|!..This | |00005640| 64 6f 65 73 6e 27 74 20 | 6d 61 74 74 65 72 2c 20 |doesn't |matter, | |00005650| 73 69 6e 63 65 20 69 74 | 27 73 20 62 65 74 74 65 |since it|'s bette| |00005660| 72 20 66 6f 72 20 6d 75 | 6c 74 69 70 6c 79 20 69 |r for mu|ltiply i| |00005670| 6e 68 65 72 69 74 65 64 | 0d 09 6f 62 6a 65 63 74 |nherited|..object| |00005680| 73 20 74 6f 20 61 6c 77 | 61 79 73 20 68 61 76 65 |s to alw|ays have| |00005690| 20 74 68 65 20 73 61 6d | 65 20 66 6f 72 6d 61 74 | the sam|e format| |000056a0| 2c 20 77 68 65 72 65 76 | 65 72 20 74 68 65 79 20 |, wherev|er they | |000056b0| 61 72 65 2c 20 61 6e 64 | 20 61 6e 79 20 61 74 74 |are, and| any att| |000056c0| 65 6d 70 74 0d 09 74 6f | 20 75 73 65 20 74 68 65 |empt..to| use the| |000056d0| 20 63 6c 61 73 73 20 70 | 6f 69 6e 74 65 72 20 6f | class p|ointer o| |000056e0| 66 66 73 65 74 20 74 6f | 20 67 65 74 20 74 68 65 |ffset to| get the| |000056f0| 20 28 6e 6f 6e 65 78 69 | 73 74 65 6e 74 29 20 63 | (nonexi|stent) c| |00005700| 6c 61 73 73 20 70 6f 69 | 6e 74 65 72 0d 09 77 69 |lass poi|nter..wi| |00005710| 6c 6c 20 6d 6f 73 74 20 | 70 72 6f 62 61 62 6c 79 |ll most |probably| |00005720| 20 62 65 20 63 61 75 67 | 68 74 20 62 79 20 6f 75 | be caug|ht by ou| |00005730| 72 20 63 68 65 63 6b 73 | 2e 0d 2a 29 0d 0d 5c 20 |r checks|..*)..\ | |00005740| 46 72 6f 6d 20 4d 6f 70 | 73 20 32 2e 35 20 6f 6e |From Mop|s 2.5 on| |00005750| 2c 20 77 65 27 72 65 20 | 6e 6f 77 20 73 65 6e 64 |, we're |now send| |00005760| 69 6e 67 20 63 6c 61 73 | 73 69 6e 69 74 3a 20 73 |ing clas|sinit: s| |00005770| 65 70 61 72 61 74 65 6c | 79 20 74 6f 20 65 61 63 |eparatel|y to eac| |00005780| 68 0d 5c 20 20 73 75 70 | 65 72 63 6c 61 73 73 2e |h.\ sup|erclass.| |00005790| 0d 0d 09 45 4f 6f 66 66 | 73 20 2d 3e 20 69 6e 69 |...EOoff|s -> ini| |000057a0| 74 45 4f 6f 66 66 73 0d | 09 42 45 47 49 4e 0d 09 |tEOoffs.|.BEGIN..| |000057b0| 09 5e 6e 77 61 79 20 40 | 61 62 73 20 3f 3e 63 6c |.^nway @|abs ?>cl| |000057c0| 61 73 73 49 6e 4d 6f 64 | 20 20 2d 3e 20 73 75 70 |assInMod| -> sup| |000057d0| 43 6c 61 73 73 09 5c 20 | 6d 61 79 20 68 6f 6c 64 |Class.\ |may hold| |000057e0| 20 61 20 6d 6f 64 0d 09 | 09 73 75 70 43 6c 61 73 | a mod..|.supClas| |000057f0| 73 20 20 4d 65 74 61 41 | 64 64 72 20 40 61 62 73 |s MetaA|ddr @abs| |00005800| 20 20 3c 3e 0d 09 09 49 | 46 0d 09 09 09 62 61 73 | <>...I|F....bas| |00005810| 65 4f 66 66 73 20 45 4f | 6f 66 66 73 20 2b 20 20 |eOffs EO|offs + | |00005820| 69 6e 69 74 45 4f 6f 66 | 66 73 20 2d 09 5c 20 53 |initEOof|fs -.\ S| |00005830| 74 61 72 74 20 6f 66 20 | 64 61 74 61 73 70 61 63 |tart of |dataspac| |00005840| 65 20 6f 66 20 74 68 69 | 73 0d 09 09 09 2d 3e 20 |e of thi|s....-> | |00005850| 73 75 70 4f 66 66 73 09 | 09 09 09 09 09 5c 20 20 |supOffs.|.....\ | |00005860| 73 75 70 65 72 63 6c 61 | 73 73 0d 09 09 09 73 75 |supercla|ss....su| |00005870| 70 43 6c 61 73 73 20 69 | 66 61 20 64 69 73 70 6c |pClass i|fa displ| |00005880| 61 63 65 09 09 09 5c 20 | 49 6e 66 61 20 6f 66 20 |ace...\ |Infa of | |00005890| 66 69 72 73 74 20 69 76 | 61 72 20 6f 66 20 73 75 |first iv|ar of su| |000058a0| 70 43 6c 61 73 73 0d 09 | 09 09 73 75 70 4f 66 66 |pClass..|..supOff| |000058b0| 73 20 20 45 4f 6f 66 66 | 73 20 20 69 76 53 65 74 |s EOoff|s ivSet| |000058c0| 75 70 0d 09 09 09 73 75 | 70 43 6c 61 73 73 20 20 |up....su|pClass | |000058d0| 6e 65 77 4f 62 6a 65 63 | 74 20 73 75 70 4f 66 66 |newObjec|t supOff| |000058e0| 73 20 2b 20 20 69 6e 69 | 74 5f 6f 62 6a 0d 09 09 |s + ini|t_obj...| |000058f0| 54 48 45 4e 0d 09 09 3f | 75 6e 68 6f 6c 64 4d 6f |THEN...?|unholdMo| |00005900| 64 09 09 09 09 09 09 09 | 09 5c 20 6e 6f 77 20 66 |d.......|.\ now f| |00005910| 69 6e 69 73 68 65 64 20 | 77 69 74 68 20 74 68 65 |inished |with the| |00005920| 20 6d 6f 64 0d 09 09 31 | 63 65 6c 6c 20 2b 2b 3e | mod...1|cell ++>| |00005930| 20 5e 6e 77 61 79 0d 09 | 09 5e 6e 77 61 79 20 40 | ^nway..|.^nway @| |00005940| 0d 09 57 48 49 4c 45 09 | 09 5c 20 61 6e 6f 74 68 |..WHILE.|.\ anoth| |00005950| 65 72 20 63 6c 61 73 73 | 20 63 6f 6d 69 6e 67 20 |er class| coming | |00005960| 75 70 20 2d 20 73 74 6f | 72 65 20 32 2d 62 79 74 |up - sto|re 2-byt| |00005970| 65 20 5e 63 6c 61 73 73 | 20 6f 66 66 73 65 74 20 |e ^class| offset | |00005980| 66 69 72 73 74 0d 09 09 | 73 75 70 43 6c 61 73 73 |first...|supClass| |00005990| 20 64 66 61 20 77 40 09 | 09 09 09 5c 20 64 6c 65 | dfa w@.|...\ dle| |000059a0| 6e 20 6f 66 20 73 75 70 | 43 6c 61 73 73 2e 20 46 |n of sup|Class. F| |000059b0| 61 73 74 65 72 20 74 68 | 61 6e 20 75 73 69 6e 67 |aster th|an using| |000059c0| 20 44 4c 45 4e 0d 09 09 | 28 20 64 6c 65 6e 20 29 | DLEN...|( dlen )| |000059d0| 20 61 6c 69 67 6e 65 64 | 20 2b 2b 3e 20 45 4f 6f | aligned| ++> EOo| |000059e0| 66 66 73 0d 09 09 45 4f | 6f 66 66 73 20 6e 65 67 |ffs...EO|offs neg| |000059f0| 61 74 65 20 38 20 2d 09 | 09 09 5c 20 5e 63 6c 61 |ate 8 -.|..\ ^cla| |00005a00| 73 73 20 6f 66 66 73 65 | 74 20 66 6f 72 20 73 74 |ss offse|t for st| |00005a10| 6f 72 65 0d 09 09 45 4f | 6f 66 66 73 20 69 6e 69 |ore...EO|offs ini| |00005a20| 74 45 4f 6f 66 66 73 20 | 2d 09 09 09 5c 20 6f 66 |tEOoffs |-...\ of| |00005a30| 66 73 65 74 20 6e 6f 74 | 20 61 6c 72 65 61 64 79 |fset not| already| |00005a40| 20 69 6e 63 6c 75 64 65 | 64 20 69 6e 20 62 61 73 | include|d in bas| |00005a50| 65 4f 66 66 73 0d 09 09 | 62 61 73 65 4f 66 66 73 |eOffs...|baseOffs| |00005a60| 20 2b 20 6e 65 77 4f 62 | 6a 65 63 74 20 2b 09 09 | + newOb|ject +..| |00005a70| 5c 20 66 69 6e 61 6c 20 | 61 64 64 72 20 66 6f 72 |\ final |addr for| |00005a80| 20 73 74 6f 72 65 0d 09 | 09 77 21 0d 09 09 32 20 | store..|.w!...2 | |00005a90| 2b 2b 3e 20 45 4f 6f 66 | 66 73 0d 09 52 45 50 45 |++> EOof|fs..REPE| |00005aa0| 41 54 20 20 3b 0d 0d 0d | 28 2a 09 49 56 73 65 74 |AT ;...|(*.IVset| |00005ab0| 75 70 20 72 65 63 75 72 | 73 69 76 65 6c 79 20 74 |up recur|sively t| |00005ac0| 72 61 76 65 72 73 65 73 | 20 74 68 65 20 74 72 65 |raverses| the tre| |00005ad0| 65 20 6f 66 20 6e 65 73 | 74 65 64 20 69 76 61 72 |e of nes|ted ivar| |00005ae0| 20 64 65 66 69 6e 69 74 | 69 6f 6e 73 20 69 6e 20 | definit|ions in | |00005af0| 61 0d 09 63 6c 61 73 73 | 2c 20 62 75 69 6c 64 69 |a..class|, buildi| |00005b00| 6e 67 20 68 65 61 64 65 | 72 73 20 61 6e 64 20 69 |ng heade|rs and i| |00005b10| 6e 64 65 78 65 64 20 61 | 72 65 61 20 68 65 61 64 |ndexed a|rea head| |00005b20| 65 72 73 20 77 68 65 72 | 65 20 6e 65 63 65 73 73 |ers wher|e necess| |00005b30| 61 72 79 2c 20 61 6e 64 | 20 0d 09 73 65 6e 64 69 |ary, and| ..sendi| |00005b40| 6e 67 09 74 68 65 20 43 | 4c 41 53 53 49 4e 49 54 |ng.the C|LASSINIT| |00005b50| 3a 20 6d 65 73 73 61 67 | 65 20 74 6f 20 65 61 63 |: messag|e to eac| |00005b60| 68 20 69 76 61 72 2e 0d | 09 0d 09 4f 6e 20 65 6e |h ivar..|...On en| |00005b70| 74 72 79 20 69 6e 66 61 | 20 69 73 20 74 68 65 20 |try infa| is the | |00005b80| 6e 66 61 20 6f 66 20 74 | 68 65 20 66 69 72 73 74 |nfa of t|he first| |00005b90| 20 69 76 61 72 20 69 6e | 20 74 68 65 20 69 76 61 | ivar in| the iva| |00005ba0| 72 20 64 69 63 74 69 6f | 6e 61 72 79 20 6f 66 20 |r dictio|nary of | |00005bb0| 74 68 65 0d 09 6f 62 6a | 65 63 74 2f 69 76 61 72 |the..obj|ect/ivar| |00005bc0| 20 77 68 6f 73 65 20 28 | 73 75 62 29 69 76 61 72 | whose (|sub)ivar| |00005bd0| 73 20 77 65 20 61 72 65 | 20 74 6f 20 73 65 74 20 |s we are| to set | |00005be0| 75 70 2e 20 54 68 65 20 | 64 69 63 74 69 6f 6e 61 |up. The |dictiona| |00005bf0| 72 79 20 63 68 61 69 6e | 20 69 73 0d 09 66 6f 6c |ry chain| is..fol| |00005c00| 6c 6f 77 65 64 20 74 6f | 20 74 68 65 20 65 6e 64 |lowed to| the end| |00005c10| 2c 20 74 68 65 20 6c 61 | 73 74 20 6c 69 6e 6b 20 |, the la|st link | |00005c20| 70 6f 69 6e 74 69 6e 67 | 20 74 6f 20 74 68 65 20 |pointing| to the | |00005c30| 4e 77 61 79 20 73 75 70 | 65 72 63 6c 61 73 73 20 |Nway sup|erclass | |00005c40| 70 6f 69 6e 74 65 72 2e | 0d 09 62 61 73 65 4f 66 |pointer.|..baseOf| |00005c50| 66 73 20 69 73 20 74 68 | 65 20 70 6f 73 69 74 69 |fs is th|e positi| |00005c60| 6f 6e 20 6f 66 20 74 68 | 65 20 63 75 72 72 65 6e |on of th|e curren| |00005c70| 74 20 6f 62 6a 65 63 74 | 2f 69 76 61 72 27 73 20 |t object|/ivar's | |00005c80| 64 61 74 61 20 73 70 61 | 63 65 20 72 65 6c 61 74 |data spa|ce relat| |00005c90| 69 76 65 0d 09 74 6f 20 | 6e 65 77 4f 62 6a 65 63 |ive..to |newObjec| |00005ca0| 74 2c 20 74 68 65 20 63 | 75 72 72 65 6e 74 20 74 |t, the c|urrent t| |00005cb0| 6f 70 2d 6c 65 76 65 6c | 20 6f 62 6a 65 63 74 20 |op-level| object | |00005cc0| 62 65 69 6e 67 20 63 72 | 65 61 74 65 64 2e 0d 09 |being cr|eated...| |00005cd0| 45 4f 6f 66 66 73 20 69 | 73 20 6e 6f 6e 2d 7a 65 |EOoffs i|s non-ze| |00005ce0| 72 6f 20 69 66 20 74 68 | 65 20 69 76 61 72 20 77 |ro if th|e ivar w| |00005cf0| 68 6f 73 65 20 73 75 62 | 69 76 61 72 73 20 77 65 |hose sub|ivars we| |00005d00| 20 61 72 65 20 74 6f 20 | 73 65 74 20 75 70 20 69 | are to |set up i| |00005d10| 73 20 70 61 72 74 0d 09 | 6f 66 20 61 6e 20 22 65 |s part..|of an "e| |00005d20| 6d 62 65 64 64 65 64 20 | 6f 62 6a 65 63 74 22 2c |mbedded |object",| |00005d30| 20 69 65 2e 20 69 73 20 | 69 6e 68 65 72 69 74 65 | ie. is |inherite| |00005d40| 64 20 66 72 6f 6d 20 61 | 20 73 75 70 65 72 63 6c |d from a| supercl| |00005d50| 61 73 73 2c 20 61 6e 64 | 20 74 68 69 73 0d 09 73 |ass, and| this..s| |00005d60| 75 70 65 72 63 6c 61 73 | 73 20 69 73 20 6e 6f 74 |uperclas|s is not| |00005d70| 20 74 68 65 20 66 69 72 | 73 74 20 73 75 70 65 72 | the fir|st super| |00005d80| 20 6f 66 20 74 68 65 20 | 63 75 72 72 65 6e 74 20 | of the |current | |00005d90| 74 6f 70 2d 6c 65 76 65 | 6c 20 6f 62 6a 65 63 74 |top-leve|l object| |00005da0| 2e 0d 09 54 68 69 73 20 | 69 73 20 70 61 73 73 65 |...This |is passe| |00005db0| 64 20 6f 6e 20 75 6e 6d | 6f 64 69 66 69 65 64 20 |d on unm|odified | |00005dc0| 69 6e 20 61 6e 79 20 72 | 65 63 75 72 73 69 76 65 |in any r|ecursive| |00005dd0| 20 63 61 6c 6c 20 61 6e | 64 20 75 73 65 64 20 6f | call an|d used o| |00005de0| 6e 6c 79 20 62 79 0d 09 | 4e 57 5f 49 56 53 45 54 |nly by..|NW_IVSET| |00005df0| 55 50 20 74 6f 20 63 61 | 6c 63 75 6c 61 74 65 20 |UP to ca|lculate | |00005e00| 74 68 65 20 6f 66 66 73 | 65 74 20 74 6f 20 74 68 |the offs|et to th| |00005e10| 65 20 63 6c 61 73 73 20 | 70 6f 69 6e 74 65 72 2e |e class |pointer.| |00005e20| 0d 09 57 68 65 6e 20 74 | 68 69 73 20 77 6f 72 64 |..When t|his word| |00005e30| 20 69 73 20 63 61 6c 6c | 65 64 2c 20 69 66 20 74 | is call|ed, if t| |00005e40| 68 65 20 6f 62 6a 65 63 | 74 2f 69 76 61 72 27 73 |he objec|t/ivar's| |00005e50| 20 63 6c 61 73 73 20 69 | 73 20 69 6e 20 61 20 6d | class i|s in a m| |00005e60| 6f 64 75 6c 65 2c 0d 09 | 74 68 65 20 6d 6f 64 75 |odule,..|the modu| |00005e70| 6c 65 20 77 69 6c 6c 20 | 62 65 20 68 65 6c 64 2e |le will |be held.| |00005e80| 20 49 6e 20 73 6f 6d 65 | 20 63 69 72 63 75 6d 73 | In some| circums| |00005e90| 74 61 6e 63 65 73 20 74 | 68 65 20 63 61 6c 6c 65 |tances t|he calle| |00005ea0| 72 20 73 74 69 6c 6c 20 | 6e 65 65 64 73 20 69 74 |r still |needs it| |00005eb0| 2e 0d 09 54 68 65 20 72 | 65 63 75 72 73 69 76 65 |...The r|ecursive| |00005ec0| 20 63 61 6c 6c 20 6d 69 | 67 68 74 20 72 65 71 75 | call mi|ght requ| |00005ed0| 69 72 65 20 61 6e 6f 74 | 68 65 72 20 6d 6f 64 75 |ire anot|her modu| |00005ee0| 6c 65 20 74 6f 20 62 65 | 20 68 65 6c 64 2c 20 73 |le to be| held, s| |00005ef0| 6f 20 77 65 20 68 61 76 | 65 20 74 6f 0d 09 73 61 |o we hav|e to..sa| |00005f00| 76 65 20 61 6e 64 20 72 | 65 73 74 6f 72 65 20 61 |ve and r|estore a| |00005f10| 6e 79 20 6d 6f 64 75 6c | 65 20 68 65 6c 64 20 6f |ny modul|e held o| |00005f20| 6e 20 65 6e 74 72 79 2e | 0d 2a 29 0d 0d 3a 66 20 |n entry.|.*)..:f | |00005f30| 49 56 53 45 54 55 50 09 | 09 7b 20 69 6e 66 61 20 |IVSETUP.|.{ infa | |00005f40| 62 61 73 65 4f 66 66 73 | 20 45 4f 4f 66 66 73 20 |baseOffs| EOOffs | |00005f50| 5c 20 69 76 4f 66 66 73 | 20 69 76 43 6c 61 73 73 |\ ivOffs| ivClass| |00005f60| 20 2d 2d 20 7d 0d 0d 09 | 68 65 6c 64 4d 6f 64 09 | -- }...|heldMod.| |00005f70| 09 09 09 5c 20 49 66 20 | 63 6c 61 73 73 20 69 73 |...\ If |class is| |00005f80| 20 69 6e 20 6d 6f 64 75 | 6c 65 20 69 74 20 6d 75 | in modu|le it mu| |00005f90| 73 74 20 6e 6f 74 20 67 | 65 74 20 75 6e 68 65 6c |st not g|et unhel| |00005fa0| 64 0d 09 09 09 09 09 09 | 5c 20 20 77 68 69 6c 65 |d.......|\ while| |00005fb0| 20 70 72 6f 63 65 73 73 | 69 6e 67 20 73 6f 20 6b | process|ing so k| |00005fc0| 65 65 70 20 61 64 64 72 | 65 73 73 20 6f 6e 20 74 |eep addr|ess on t| |00005fd0| 68 65 20 73 74 61 63 6b | 0d 09 30 20 2d 3e 20 68 |he stack|..0 -> h| |00005fe0| 65 6c 64 4d 6f 64 09 09 | 5c 20 20 61 6e 64 20 63 |eldMod..|\ and c| |00005ff0| 6c 65 61 72 20 68 65 6c | 64 4d 6f 64 20 73 6f 20 |lear hel|dMod so | |00006000| 69 74 20 63 61 6e 6e 6f | 74 20 62 65 20 75 6e 68 |it canno|t be unh| |00006010| 65 6c 64 0d 09 09 0d 09 | 42 45 47 49 4e 0d 09 09 |eld.....|BEGIN...| |00006020| 69 6e 66 61 20 40 20 30 | 3e 09 5c 20 41 20 73 65 |infa @ 0|>.\ A se| |00006030| 6c 65 63 74 6f 72 20 69 | 73 20 61 6c 77 61 79 73 |lector i|s always| |00006040| 20 6e 65 67 61 74 69 76 | 65 2c 20 73 6f 20 61 0d | negativ|e, so a.| |00006050| 09 09 09 09 09 5c 20 20 | 70 6f 73 69 74 69 76 65 |.....\ |positive| |00006060| 20 76 61 6c 75 65 20 6d | 65 61 6e 73 20 74 68 65 | value m|eans the| |00006070| 20 4e 2d 77 61 79 20 73 | 75 70 65 72 63 6c 61 73 | N-way s|uperclas| |00006080| 73 0d 09 09 09 09 09 5c | 20 20 70 6f 69 6e 74 65 |s......\| pointe| |00006090| 72 20 61 72 65 61 20 28 | 20 73 75 70 65 72 63 6c |r area (| supercl| |000060a0| 61 73 73 20 61 64 72 65 | 73 73 65 73 20 29 2c 0d |ass adre|sses ),.| |000060b0| 09 09 09 09 09 5c 20 20 | 74 68 65 20 65 6e 64 70 |.....\ |the endp| |000060c0| 6f 69 6e 74 20 6f 66 20 | 74 68 65 20 69 76 61 72 |oint of |the ivar| |000060d0| 20 64 69 63 74 69 6f 6e | 61 72 79 20 63 68 61 69 | diction|ary chai| |000060e0| 6e 0d 09 09 09 09 09 0d | 09 4e 57 48 49 4c 45 09 |n.......|.NWHILE.| |000060f0| 5c 20 62 75 69 6c 64 20 | 74 68 69 73 20 69 76 61 |\ build |this iva| |00006100| 72 20 69 6e 20 6f 62 6a | 65 63 74 0d 0d 09 09 69 |r in obj|ect....i| |00006110| 6e 66 61 20 69 66 66 61 | 20 77 40 20 32 20 61 6e |nfa iffa| w@ 2 an| |00006120| 64 09 09 09 5c 20 53 74 | 61 74 69 63 20 69 76 61 |d...\ St|atic iva| |00006130| 72 3f 20 2d 3e 20 6e 6f | 74 20 69 6e 20 6f 62 6a |r? -> no|t in obj| |00006140| 20 28 62 69 74 20 31 29 | 0d 09 09 4e 49 46 09 69 | (bit 1)|...NIF.i| |00006150| 6e 66 61 20 69 6f 66 66 | 73 09 09 09 09 5c 20 4f |nfa ioff|s....\ O| |00006160| 66 66 73 65 74 20 6f 66 | 20 69 76 61 72 20 69 6e |ffset of| ivar in| |00006170| 20 6f 77 6e 69 6e 67 20 | 6f 62 6a 65 63 74 0d 09 | owning |object..| |00006180| 09 09 62 61 73 65 6f 66 | 66 73 20 2b 20 20 20 2d |..baseof|fs + -| |00006190| 3e 20 69 76 4f 66 66 73 | 09 5c 20 50 6f 73 69 74 |> ivOffs|.\ Posit| |000061a0| 69 6f 6e 20 72 65 6c 61 | 74 69 76 65 20 74 6f 20 |ion rela|tive to | |000061b0| 6e 65 77 4f 62 6a 65 63 | 74 0d 09 09 09 69 6e 66 |newObjec|t....inf| |000061c0| 61 20 5e 69 63 6c 61 73 | 73 20 2d 3e 20 69 76 43 |a ^iclas|s -> ivC| |000061d0| 6c 61 73 73 09 5c 20 4d | 61 79 20 63 61 75 73 65 |lass.\ M|ay cause| |000061e0| 20 61 6e 6f 74 68 65 72 | 20 6d 6f 64 75 6c 65 20 | another| module | |000061f0| 74 6f 20 62 65 20 68 65 | 6c 64 0d 09 09 09 69 6e |to be he|ld....in| |00006200| 66 61 20 69 66 66 61 20 | 77 40 20 31 20 61 6e 64 |fa iffa |w@ 1 and| |00006210| 09 09 5c 20 44 6f 65 73 | 20 69 74 20 77 61 6e 74 |..\ Does| it want| |00006220| 20 68 65 61 64 65 72 73 | 3f 20 2d 3e 20 66 6c 61 | headers|? -> fla| |00006230| 67 20 62 69 74 20 30 0d | 09 09 09 49 46 09 69 6e |g bit 0.|...IF.in| |00006240| 66 61 20 69 23 65 6c 73 | 20 64 75 70 20 4e 49 46 |fa i#els| dup NIF| |00006250| 20 64 72 6f 70 20 54 48 | 45 4e 0d 09 09 09 09 69 | drop TH|EN.....i| |00006260| 76 43 6c 61 73 73 0d 09 | 09 09 09 6e 65 77 4f 62 |vClass..|...newOb| |00006270| 6a 65 63 74 20 69 76 4f | 66 66 73 20 2b 20 09 5c |ject ivO|ffs + .\| |00006280| 20 61 64 64 72 65 73 73 | 20 77 68 65 72 65 20 68 | address| where h| |00006290| 65 61 64 65 72 73 20 6d | 75 73 74 20 62 65 20 6d |eaders m|ust be m| |000062a0| 61 64 65 0d 09 09 09 09 | 6d 61 6b 65 5f 68 64 72 |ade.....|make_hdr| |000062b0| 73 0d 09 09 09 54 48 45 | 4e 0d 09 09 09 3f 52 64 |s....THE|N....?Rd| |000062c0| 65 70 74 68 09 09 09 09 | 09 5c 20 43 68 65 63 6b |epth....|.\ Check| |000062d0| 20 6f 6e 20 72 65 63 75 | 72 73 69 6f 6e 20 64 65 | on recu|rsion de| |000062e0| 70 74 68 0d 09 09 09 69 | 76 43 6c 61 73 73 20 69 |pth....i|vClass i| |000062f0| 66 61 20 64 69 73 70 6c | 61 63 65 09 5c 20 49 6e |fa displ|ace.\ In| |00006300| 66 61 20 6f 66 20 66 69 | 72 73 74 20 73 75 62 69 |fa of fi|rst subi| |00006310| 76 61 72 20 69 6e 0d 09 | 09 09 09 09 09 09 09 09 |var in..|........| |00006320| 5c 20 20 63 68 61 69 6e | 20 6f 66 20 74 68 65 20 |\ chain| of the | |00006330| 63 75 72 72 65 6e 74 6c | 79 0d 09 09 09 09 09 09 |currentl|y.......| |00006340| 09 09 09 5c 20 20 70 72 | 6f 63 65 73 73 65 64 20 |...\ pr|ocessed | |00006350| 69 76 61 72 20 6f 62 6a | 65 63 74 0d 09 09 09 69 |ivar obj|ect....i| |00006360| 76 4f 66 66 73 09 09 09 | 09 09 5c 20 4e 65 77 20 |vOffs...|..\ New | |00006370| 62 61 73 65 20 6f 66 66 | 73 65 74 20 6f 66 20 73 |base off|set of s| |00006380| 75 62 69 76 61 72 0d 09 | 09 09 30 0d 09 09 09 69 |ubivar..|..0....i| |00006390| 76 53 65 74 75 70 0d 09 | 09 09 3f 75 6e 68 6f 6c |vSetup..|..?unhol| |000063a0| 64 4d 6f 64 0d 09 09 09 | 69 76 43 6c 61 73 73 20 |dMod....|ivClass | |000063b0| 20 6e 65 77 4f 62 6a 65 | 63 74 20 69 76 4f 66 66 | newObje|ct ivOff| |000063c0| 73 20 2b 20 20 69 6e 69 | 74 5f 6f 62 6a 0d 09 09 |s + ini|t_obj...| |000063d0| 54 48 45 4e 0d 09 09 69 | 6e 66 61 20 5e 6e 65 78 |THEN...i|nfa ^nex| |000063e0| 74 69 76 61 72 20 2d 3e | 20 69 6e 66 61 0d 09 52 |tivar ->| infa..R| |000063f0| 45 50 45 41 54 0d 09 69 | 6e 66 61 20 62 61 73 65 |EPEAT..i|nfa base| +--------+-------------------------+-------------------------+--------+--------+ Only 25.0 KB of data is shown above.