Structure.st
author Stefan Vogel <sv@exept.de>
Wed, 22 Apr 2015 20:03:50 +0200
changeset 3626 690681bf1976
parent 3403 1ae8bfefe251
child 3627 4638af476fae
permissions -rw-r--r--
class: Structure changed: #doesNotUnderstand: Use CharacterWriteStream for Unicode compatibility
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
283
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
     1
"
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
     2
 COPYRIGHT (c) 1996 by Claus Gittinger
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
     3
              All Rights Reserved
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
     4
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
     5
 This software is furnished under a license and may be used
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
     6
 only in accordance with the terms of that license and with the
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
     8
 be provided or otherwise made available to, or used by, any
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
     9
 other person.  No title to or ownership of the software is
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
    10
 hereby transferred.
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
    11
"
1129
4951097b5191 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1037
diff changeset
    12
"{ Package: 'stx:libcomp' }"
4951097b5191 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1037
diff changeset
    13
3626
690681bf1976 class: Structure
Stefan Vogel <sv@exept.de>
parents: 3403
diff changeset
    14
"{ NameSpace: Smalltalk }"
690681bf1976 class: Structure
Stefan Vogel <sv@exept.de>
parents: 3403
diff changeset
    15
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
Object subclass:#Structure
2351
4371af1faf81 changed: #newWith:values:
Stefan Vogel <sv@exept.de>
parents: 2341
diff changeset
    17
	instanceVariableNames:'superclass flags methodDictionary lookupFunction instSize i1 i2
4371af1faf81 changed: #newWith:values:
Stefan Vogel <sv@exept.de>
parents: 2341
diff changeset
    18
		i3 i4 i5 i6 i7 i8 i9 i10 i11 i12 i13 i14 i15 i16 i17 i18 i19 i20
4371af1faf81 changed: #newWith:values:
Stefan Vogel <sv@exept.de>
parents: 2341
diff changeset
    19
		i21 i22 i23 i24 i25 i26 i27 i28 i29 i30 i31 i32 i33 i34 i35 i36
4371af1faf81 changed: #newWith:values:
Stefan Vogel <sv@exept.de>
parents: 2341
diff changeset
    20
		i37 i38 i39 i40 i41 i42 i43 i44 i45 i46 i47 i48 i49 i50'
4371af1faf81 changed: #newWith:values:
Stefan Vogel <sv@exept.de>
parents: 2341
diff changeset
    21
	classVariableNames:'OneInstance DummyClass ReadAccessMethods WriteAccessMethods
4371af1faf81 changed: #newWith:values:
Stefan Vogel <sv@exept.de>
parents: 2341
diff changeset
    22
		OtherMethods OtherSelectors'
4371af1faf81 changed: #newWith:values:
Stefan Vogel <sv@exept.de>
parents: 2341
diff changeset
    23
	poolDictionaries:''
4371af1faf81 changed: #newWith:values:
Stefan Vogel <sv@exept.de>
parents: 2341
diff changeset
    24
	category:'Programming-Support'
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    27
!Structure class methodsFor:'documentation'!
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
283
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
    29
copyright
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
    30
"
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
    31
 COPYRIGHT (c) 1996 by Claus Gittinger
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
    32
              All Rights Reserved
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
    33
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
    34
 This software is furnished under a license and may be used
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
    35
 only in accordance with the terms of that license and with the
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
    36
 inclusion of the above copyright notice.   This software may not
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
    37
 be provided or otherwise made available to, or used by, any
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
    38
 other person.  No title to or ownership of the software is
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
    39
 hereby transferred.
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
    40
"
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
    41
!
3fdbe3ef9a1d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 282
diff changeset
    42
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
documentation
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
"
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    45
    This is an experimental class, stressing the metaObject capabilities.
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    47
    Structures are objects which are class-less,
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    48
    only holding some values, and provide a protocol to access
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    49
    those fields. In addition, they support the array-protocol,
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    50
    so they can be used as backward compatible replacements in
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
    places where arrays were returned.
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    52
    (However, we recommend using private classes, since they are easier
1037
6c3b1d28ae03 comment
Claus Gittinger <cg@exept.de>
parents: 953
diff changeset
    53
     to understand and maintain).
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    54
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    55
    For example, some structure object can be create with:
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    56
        ^ Structure with:#foo->'someFooValue' with:#bar->'someBarValue'
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
    and access these values either as:
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    59
        retVal at:1     -> returns the foo instvar value
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    60
        retVal at:2     -> returns the bar instvar value
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
    or (much more convenient and readable) as:
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    62
        retVal foo
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    63
        retVal bar
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    65
    Implementation note:
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
    66
        this is a very tricky (but fully legal) implementation,
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
    67
        creating an object which is its own class.
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    68
        Therefore, no additional overhead by extra (class) objects is involved.
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    69
        These are very lightweight objects.
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    70
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
    71
        Another prove that smalltalk is a powerful & flexible programming language.
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
    72
        However, some smalltalk systems crash if your try this ;-)
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
    74
    CAVEAT:
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    75
        tricky implementation - not the full object protocol is supported;
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
    76
        a maximum of 50 instance variables is allowed.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
    77
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    78
    [WARNING:]
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    79
        this is an experimental goody - for our amusement and not meant
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    80
        to be used in real applications.
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    81
        It may be removed without notice and/or no longer maintained in the furure.
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
    82
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
    [author:]
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
    84
        Claus Gittinger
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
    [see also:]
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
    87
        Array
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
    88
        Behavior
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    89
"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
examples
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
"
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
    94
  access is possibly by name:
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
    95
                                                                [exBegin]
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
    96
    Transcript showCR:
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
    97
        (Structure with:#foo->'foo value') foo
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
    98
                                                                [exEnd]
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   100
  AND also by index (for backward compatibility):
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   101
                                                                [exBegin]
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   102
    Transcript showCR:
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   103
        ((Structure with:#foo->'foo value') at:1)
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   104
                                                                [exEnd]
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   106
  it can be inspected:
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   107
                                                                [exBegin]
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   108
    (Structure with:#foo->'foo value') inspect
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   109
                                                                [exEnd]
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   110
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   111
  and presents its contents nicely:
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   112
                                                                [exBegin]
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   113
    (Structure with:#foo->'foo value' with:#bar->'bar value') inspect
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   114
                                                                [exEnd]
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   115
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   116
                                                                [exBegin]
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   117
    (Structure with:#foo->'hello' with:#bar->true with:#baz->'world') inspect
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   118
                                                                [exEnd]
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   119
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   120
"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
! !
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   123
!Structure class methodsFor:'initialization'!
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   124
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   125
initialize
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   126
    OneInstance isNil ifTrue:[
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   127
        "/ check if the first few instvars correspond to Behavior's definition:
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   128
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   129
        (Behavior instSize + 1) == (self instanceVariableNames indexOf:#i1) ifFalse:[
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   130
            self halt:'you must change the definition of this class (instvars before i1 must match behavior''s)'.
1424
eb987ab75c1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
   131
        ].
eb987ab75c1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
   132
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
        OneInstance := self basicNew.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   135
        DummyClass := Behavior shallowCopy.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
        DummyClass flags:(Behavior flagBehavior bitOr:Behavior flagPointers).
953
e863f0860a7e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 945
diff changeset
   137
        DummyClass setName:#DummyClass.
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   138
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   139
        ReadAccessMethods := (1 to:50)
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   140
                                collect:[:i | |m|
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   141
                                            m := self compiledMethodAt:('i', i printString) asSymbol.
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   142
                                            (m notNil and:[m isLazyMethod]) ifTrue:[m makeRealMethod].
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   143
                                            m
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   144
                                ].
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   145
        WriteAccessMethods := (1 to:50)
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   146
                                collect:[:i | |m|
3403
1ae8bfefe251 class: Structure
Claus Gittinger <cg@exept.de>
parents: 2351
diff changeset
   147
                                            m := self compiledMethodAt:('i', i printString) asMutator.
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   148
                                            (m notNil and:[m isLazyMethod]) ifTrue:[m makeRealMethod].
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   149
                                            m
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   150
                                ].
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   151
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   152
        OtherMethods := OrderedCollection new.
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   153
        OtherMethods
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   154
            add:(self compiledMethodAt:#doesNotUnderstand:);
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   155
            add:(Object compiledMethodAt:#class);
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   156
            add:(Object compiledMethodAt:#identityHash);
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   157
            add:(Object compiledMethodAt:#at:);
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   158
            add:(Object compiledMethodAt:#at:put:);
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   159
            add:(Object compiledMethodAt:#basicAt:);
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   160
            add:(Object compiledMethodAt:#basicAt:put:);
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   161
            add:(Object compiledMethodAt:#printString);
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   162
            add:(Object compiledMethodAt:#printOn:);
2186
7af603c810b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
   163
            add:(Object compiledMethodAt:#basicPrintOn:);
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   164
            add:(Object compiledMethodAt:#addDependent:);
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   165
            add:(Object compiledMethodAt:#removeDependent:);
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   166
            add:(Object compiledMethodAt:#dependents);
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   167
            add:(Object compiledMethodAt:#dependents:);
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   168
            add:(Object compiledMethodAt:#perform:);
2186
7af603c810b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
   169
            add:(Object compiledMethodAt:#perform:with:);
7af603c810b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
   170
            add:(Object compiledMethodAt:#isBoolean).
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   171
        OtherMethods := OtherMethods asArray.
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   172
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   173
        OtherSelectors := #(#doesNotUnderstand:
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   174
                            #class #identityHash
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   175
                            #at: #at:put: #basicAt: #basicAt:put:
2186
7af603c810b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
   176
                            #printString #printOn: #basicPrintOn:
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   177
                            #addDependent: #removeDependent: #dependents #dependents:
2186
7af603c810b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
   178
                            #perform: #perform:with:
7af603c810b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
   179
                            #isBoolean).
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
    "
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   183
     OneInstance := nil.
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   184
     self initialize.
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
    "
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   187
    "Modified: 21.9.1996 / 16:01:48 / cg"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
! !
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   190
!Structure class methodsFor:'instance creation'!
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   192
newWith:names
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
    "return a new structure containing fields as passed in the names collection.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
     The argument must be a sequenceable collection of symbols.
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   195
     The new structures values are all initialized to nil."
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
     ^ self newWith:names values:nil
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
    "
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
     Structure newWith:#(foo bar)
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
    "
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
    "Created: 13.5.1996 / 20:03:42 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   206
newWith:names values:values
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
    "return a new structure containing fields as passed in the names collection.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
     The argument must be a sequenceable collection of symbols.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
     The new structures values are set to corresponding values from the second argument, values."
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
1424
eb987ab75c1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
   211
    |arr sels mthds nInsts behviorsInstSize|
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   212
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   213
    nInsts := names size.
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   215
    sels := names collect:[:nm | nm asSymbol].
3403
1ae8bfefe251 class: Structure
Claus Gittinger <cg@exept.de>
parents: 2351
diff changeset
   216
    sels := sels , (names collect:[:nm | nm asMutator]).
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   217
    sels := sels , OtherSelectors.
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   218
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   219
    mthds := ReadAccessMethods copyTo:nInsts.
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   220
    mthds := mthds , (WriteAccessMethods copyTo:nInsts).
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   221
    mthds := mthds , OtherMethods.
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   223
    "/ create a prototype object as an array ...
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   224
    "/ the object will be its own class, and have the indexable flag bit set;
1424
eb987ab75c1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
   225
    "/ therefore, the first behviorsInstSize instVars must correspond to Behavior instvars,
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   226
    "/ the remaining ones will be the indexed instvars.
1424
eb987ab75c1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
   227
    behviorsInstSize := Behavior instSize.
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   228
1424
eb987ab75c1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
   229
    arr := Array new:(behviorsInstSize + nInsts).
2351
4371af1faf81 changed: #newWith:values:
Stefan Vogel <sv@exept.de>
parents: 2341
diff changeset
   230
"/    arr at:1 put:nil.                                                   "/ superclass
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   231
    arr at:2 put:(Behavior flagBehavior bitOr:Behavior flagPointers).   "/ flags
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   232
    arr at:3 put:(MethodDictionary withKeys:sels andValues:mthds).      "/ selectors & methods
2351
4371af1faf81 changed: #newWith:values:
Stefan Vogel <sv@exept.de>
parents: 2341
diff changeset
   233
"/    arr at:4 put:nil.                                                   "/ lookupObject
4371af1faf81 changed: #newWith:values:
Stefan Vogel <sv@exept.de>
parents: 2341
diff changeset
   234
    arr at:5 put:behviorsInstSize.                                      "/ instSize
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   235
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   236
    "/ now, the big trick ...
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   237
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   238
    arr changeClassTo:DummyClass.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
    arr changeClassTo:arr.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   240
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
    values notNil ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   242
        values keysAndValuesDo:[:i :val |
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   243
            arr at:i put:val
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   244
        ]
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   245
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   246
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   247
    ^ arr.
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   248
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   249
    "
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   250
     Structure newWith:#(foo bar) values:#('foo' 'bar')
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   251
    "
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   252
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
    "Created: 13.5.1996 / 20:03:42 / cg"
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   254
    "Modified: 3.7.1996 / 10:24:43 / cg"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   255
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   256
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   257
with:assoc
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
    "return a new structure with a single field, named to the assocs key,
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
     and initialized with assocs value."
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   260
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   261
     ^ self newWith:(Array with:assoc key) values:(Array with:assoc value)
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   262
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   263
    "
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   264
     Structure with:#foo->'foo'
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   265
    "
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   266
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   267
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   268
with:assoc1 with:assoc2
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   269
    "return a new structure with two fields, named as defined by the arguments'
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   270
     keys, and and initialized with the assocs' values."
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   271
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   272
     ^ self newWith:(Array with:assoc1 key with:assoc2 key)
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   273
             values:(Array with:assoc1 value with:assoc2 value)
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   274
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   275
    "
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   276
     Structure with:#foo->'foo' with:#bar->'bar'
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   277
    "
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   278
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   279
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   280
with:assoc1 with:assoc2 with:assoc3
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   281
    "return a new structure with three fields, named as defined by the arguments'
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   282
     keys, and and initialized with the assocs' values."
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   283
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   284
     ^ self newWith:(Array with:assoc1 key with:assoc2 key with:assoc3 key)
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   285
             values:(Array with:assoc1 value with:assoc2 value with:assoc3 value)
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   286
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   287
    "
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   288
     Structure with:#foo->'foo' with:#bar->'bar' with:#baz->'baz'
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   289
    "
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   290
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   291
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   292
with:assoc1 with:assoc2 with:assoc3 with:assoc4
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   293
    "return a new structure with four fields, named as defined by the arguments'
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   294
     keys, and and initialized with the assocs' values."
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   295
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   296
     ^ self newWith:(Array with:assoc1 key with:assoc2 key
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   297
                           with:assoc3 key with:assoc4 key)
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   298
             values:(Array with:assoc1 value with:assoc2 value
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
   299
                           with:assoc3 value with:assoc4 value)
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   300
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   301
    "
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   302
     Structure with:#foo->'foo' with:#bar->'bar' with:#baz->'baz' with:#hello->'hello'
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   303
    "
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   304
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   305
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   306
with:assoc1 with:assoc2 with:assoc3 with:assoc4 with:assoc5
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
    "return a new structure with five fields, named as defined by the arguments'
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   308
     keys, and and initialized with the assocs' values."
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   309
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   310
     ^ self newWith:(Array with:assoc1 key with:assoc2 key
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   311
                           with:assoc3 key with:assoc4 key
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   312
                           with:assoc5 key)
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   313
             values:(Array with:assoc1 value with:assoc2 value
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   314
                           with:assoc3 value with:assoc4 value
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   315
                           with:assoc5 value)
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   316
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   317
    "
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
     Structure with:#foo->'foo' with:#bar->'bar' with:#baz->'baz' with:#hello->'hello' with:#world->'world'
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   319
    "
1131
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   320
!
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   321
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   322
with:assoc1 with:assoc2 with:assoc3 with:assoc4 with:assoc5 with:assoc6
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   323
    "return a new structure with five fields, named as defined by the arguments'
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   324
     keys, and and initialized with the assocs' values."
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   325
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   326
     ^ self newWith:(Array with:assoc1 key with:assoc2 key
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   327
                           with:assoc3 key with:assoc4 key
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   328
                           with:assoc5 key with:assoc6 key)
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   329
             values:(Array with:assoc1 value with:assoc2 value
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   330
                           with:assoc3 value with:assoc4 value
1131
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   331
                           with:assoc5 value with:assoc6 value)
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   332
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   333
    "
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   334
     Structure with:#foo->'foo' with:#bar->'bar' with:#baz->'baz' with:#hello->'hello' with:#world->'world'
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   335
    "
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   336
!
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   337
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   338
with:assoc1 with:assoc2 with:assoc3 with:assoc4 with:assoc5 with:assoc6 with:assoc7
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   339
    "return a new structure with five fields, named as defined by the arguments'
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   340
     keys, and and initialized with the assocs' values."
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   341
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   342
     ^ self newWith:(Array with:assoc1 key with:assoc2 key
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   343
                           with:assoc3 key with:assoc4 key
1131
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   344
                           with:assoc5 key with:assoc6 key
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   345
                           with:assoc7 key)
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   346
             values:(Array with:assoc1 value with:assoc2 value
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
   347
                           with:assoc3 value with:assoc4 value
1131
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   348
                           with:assoc5 value with:assoc6 value
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   349
                           with:assoc7 value)
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   350
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   351
    "
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   352
     Structure with:#foo->'foo' with:#bar->'bar' with:#baz->'baz' with:#hello->'hello' with:#world->'world'
82b645876f08 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1130
diff changeset
   353
    "
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   354
! !
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   355
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   356
!Structure class methodsFor:'special'!
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   357
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   358
primAddSelector:newSelector withMethod:newMethod
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   359
    "must reinit myself when methods are accepted."
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   360
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   361
    |val|
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   362
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   363
    val := super primAddSelector:newSelector withMethod:newMethod.
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   364
    OneInstance := nil.
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   365
    self initialize.
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   366
    ^ val
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   367
! !
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   368
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   369
!Structure methodsFor:'accessing'!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   370
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   371
flags
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   372
    "return the flags - required class protocol"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   373
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   374
    ^ flags
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   375
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   376
    "Created: 13.5.1996 / 21:19:23 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   377
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   378
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   379
flags:something
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   380
    "set the flags - required class protocol"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   381
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   382
    flags := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   383
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   384
    "Created: 13.5.1996 / 21:19:23 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   385
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   386
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   387
i1
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   388
    "prototype method to return the first instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   389
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   390
    ^ i1
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   391
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   392
    "Created: 13.5.1996 / 21:19:25 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   393
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   394
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   395
i10
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   396
    "prototype method to return the 10th instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   397
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   398
    ^ i10
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   399
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   400
    "Created: 13.5.1996 / 21:19:27 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   401
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   402
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   403
i10:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   404
    "prototype method to set the 10th instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   405
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   406
    i10 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   407
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   408
    "Created: 13.5.1996 / 21:19:27 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   409
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   410
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   411
i11
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   412
    "return i11"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   413
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   414
    ^ i11
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   415
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   416
    "Created: 13.5.1996 / 21:19:27 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   417
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   418
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   419
i11:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   420
    "prototype method to set the 11th instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   421
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   422
    i11 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   423
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   424
    "Created: 13.5.1996 / 21:19:27 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   425
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   426
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   427
i12
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   428
    "return i12"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   429
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   430
    ^ i12
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   431
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   432
    "Created: 13.5.1996 / 21:19:27 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   433
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   434
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   435
i12:something
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   436
    "set i12"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   437
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   438
    i12 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   439
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   440
    "Created: 13.5.1996 / 21:19:27 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   441
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   442
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   443
i13
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   444
    "return i13"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   445
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   446
    ^ i13
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   447
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   448
    "Created: 13.5.1996 / 21:19:28 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   449
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   450
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   451
i13:something
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   452
    "set i13"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   453
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   454
    i13 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   455
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   456
    "Created: 13.5.1996 / 21:19:28 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   457
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   458
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   459
i14
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   460
    "return i14"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   461
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   462
    ^ i14
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   463
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   464
    "Created: 13.5.1996 / 21:19:28 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   465
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   466
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   467
i14:something
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   468
    "set i14"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   469
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   470
    i14 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   471
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   472
    "Created: 13.5.1996 / 21:19:28 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   473
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   474
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   475
i15
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   476
    "return i15"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   477
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   478
    ^ i15
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   479
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   480
    "Created: 13.5.1996 / 21:19:28 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   481
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   482
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   483
i15:something
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   484
    "set i15"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   485
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   486
    i15 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   487
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   488
    "Created: 13.5.1996 / 21:19:28 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   489
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   490
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   491
i16
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   492
    "return i16"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   493
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   494
    ^ i16
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   495
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   496
    "Created: 13.5.1996 / 21:19:28 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   497
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   498
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   499
i16:something
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   500
    "set i16"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   501
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   502
    i16 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   503
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   504
    "Created: 13.5.1996 / 21:19:28 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   505
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   506
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   507
i17
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   508
    "return i17"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   509
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   510
    ^ i17
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   511
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   512
    "Created: 13.5.1996 / 21:19:28 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   513
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   514
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   515
i17:something
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   516
    "set i17"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   517
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   518
    i17 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   519
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   520
    "Created: 13.5.1996 / 21:19:29 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   521
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   522
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   523
i18
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   524
    "return i18"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   525
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   526
    ^ i18
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   527
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   528
    "Created: 13.5.1996 / 21:19:29 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   529
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   530
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   531
i18:something
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   532
    "set i18"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   533
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   534
    i18 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   535
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   536
    "Created: 13.5.1996 / 21:19:29 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   537
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   538
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   539
i19
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   540
    "return i19"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   541
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   542
    ^ i19
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   543
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   544
    "Created: 13.5.1996 / 21:19:29 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   545
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   546
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   547
i19:something
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   548
    "set i19"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   549
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   550
    i19 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   551
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   552
    "Created: 13.5.1996 / 21:19:29 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   553
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   554
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   555
i1:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   556
    "prototype method to set the 1st instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   557
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   558
    i1 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   559
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   560
    "Created: 13.5.1996 / 21:19:25 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   561
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   562
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   563
i2
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   564
    "prototype method to return the 2nd instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   565
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   566
    ^ i2
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   567
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   568
    "Created: 13.5.1996 / 21:19:25 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   569
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   570
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   571
i20
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   572
    "return i20"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   573
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   574
    ^ i20
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   575
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   576
    "Created: 13.5.1996 / 21:19:29 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   577
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   578
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   579
i20:something
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   580
    "set i20"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   581
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   582
    i20 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   583
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   584
    "Created: 13.5.1996 / 21:19:29 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   585
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   586
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   587
i21
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   588
    "return i21"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   589
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   590
    ^ i21
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   591
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   592
    "Created: 21.9.1996 / 16:06:21 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   593
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   594
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   595
i21:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   596
    "set i21"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   597
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   598
    i21 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   599
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   600
    "Created: 21.9.1996 / 16:06:21 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   601
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   602
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   603
i22
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   604
    "return i22"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   605
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   606
    ^ i22
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   607
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   608
    "Created: 21.9.1996 / 16:06:21 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   609
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   610
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   611
i22:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   612
    "set i22"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   613
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   614
    i22 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   615
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   616
    "Created: 21.9.1996 / 16:06:21 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   617
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   618
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   619
i23
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   620
    "return i23"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   621
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   622
    ^ i23
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   623
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   624
    "Created: 21.9.1996 / 16:06:21 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   625
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   626
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   627
i23:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   628
    "set i23"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   629
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   630
    i23 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   631
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   632
    "Created: 21.9.1996 / 16:06:21 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   633
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   634
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   635
i24
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   636
    "return i24"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   637
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   638
    ^ i24
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   639
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   640
    "Created: 21.9.1996 / 16:06:21 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   641
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   642
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   643
i24:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   644
    "set i24"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   645
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   646
    i24 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   647
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   648
    "Created: 21.9.1996 / 16:06:21 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   649
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   650
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   651
i25
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   652
    "return i25"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   653
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   654
    ^ i25
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   655
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   656
    "Created: 21.9.1996 / 16:06:21 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   657
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   658
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   659
i25:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   660
    "set i25"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   661
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   662
    i25 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   663
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   664
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   665
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   666
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   667
i26
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   668
    "return i26"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   669
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   670
    ^ i26
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   671
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   672
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   673
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   674
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   675
i26:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   676
    "set i26"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   677
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   678
    i26 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   679
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   680
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   681
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   682
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   683
i27
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   684
    "return i27"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   685
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   686
    ^ i27
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   687
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   688
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   689
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   690
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   691
i27:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   692
    "set i27"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   693
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   694
    i27 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   695
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   696
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   697
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   698
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   699
i28
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   700
    "return i28"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   701
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   702
    ^ i28
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   703
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   704
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   705
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   706
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   707
i28:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   708
    "set i28"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   709
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   710
    i28 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   711
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   712
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   713
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   714
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   715
i29
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   716
    "return i29"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   717
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   718
    ^ i29
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   719
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   720
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   721
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   722
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   723
i29:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   724
    "set i29"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   725
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   726
    i29 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   727
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   728
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   729
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   730
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   731
i2:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   732
    "prototype method to set the 2nd instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   733
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   734
    i2 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   735
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   736
    "Created: 13.5.1996 / 21:19:25 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   737
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   738
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   739
i3
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   740
    "prototype method to return the 3rd instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   741
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   742
    ^ i3
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   743
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   744
    "Created: 13.5.1996 / 21:19:25 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   745
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   746
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   747
i30:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   748
    "set i30"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   749
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   750
    i30 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   751
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   752
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   753
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   754
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   755
i31
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   756
    "return i31"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   757
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   758
    ^ i31
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   759
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   760
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   761
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   762
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   763
i31:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   764
    "set i31"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   765
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   766
    i31 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   767
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   768
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   769
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   770
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   771
i32
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   772
    "return i32"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   773
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   774
    ^ i32
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   775
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   776
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   777
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   778
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   779
i32:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   780
    "set i32"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   781
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   782
    i32 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   783
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   784
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   785
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   786
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   787
i33
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   788
    "return i33"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   789
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   790
    ^ i33
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   791
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   792
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   793
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   794
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   795
i33:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   796
    "set i33"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   797
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   798
    i33 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   799
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   800
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   801
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   802
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   803
i34
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   804
    "return i34"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   805
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   806
    ^ i34
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   807
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   808
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   809
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   810
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   811
i34:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   812
    "set i34"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   813
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   814
    i34 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   815
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   816
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   817
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   818
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   819
i35
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   820
    "return i35"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   821
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   822
    ^ i35
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   823
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   824
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   825
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   826
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   827
i35:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   828
    "set i35"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   829
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   830
    i35 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   831
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   832
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   833
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   834
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   835
i36
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   836
    "return i36"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   837
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   838
    ^ i36
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   839
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   840
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   841
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   842
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   843
i36:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   844
    "set i36"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   845
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   846
    i36 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   847
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   848
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   849
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   850
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   851
i37
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   852
    "return i37"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   853
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   854
    ^ i37
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   855
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   856
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   857
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   858
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   859
i37:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   860
    "set i37"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   861
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   862
    i37 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   863
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   864
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   865
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   866
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   867
i38
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   868
    "return i38"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   869
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   870
    ^ i38
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   871
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   872
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   873
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   874
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   875
i38:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   876
    "set i38"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   877
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   878
    i38 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   879
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   880
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   881
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   882
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   883
i39
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   884
    "return i39"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   885
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   886
    ^ i39
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   887
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   888
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   889
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   890
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   891
i39:something
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   892
    "set i39"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   893
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   894
    i39 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   895
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   896
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   897
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   898
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   899
i3:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   900
    "prototype method to set the 3rd instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   901
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   902
    i3 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   903
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   904
    "Created: 13.5.1996 / 21:19:25 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   905
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   906
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   907
i4
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   908
    "prototype method to return the 4th instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   909
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   910
    ^ i4
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   911
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   912
    "Created: 13.5.1996 / 21:19:25 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   913
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   914
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   915
i40
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   916
    "return the value of the instance variable 'i40' (automatically generated)"
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   917
1129
4951097b5191 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1037
diff changeset
   918
    ^ i40
4951097b5191 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1037
diff changeset
   919
!
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   920
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   921
i40:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   922
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   923
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   924
    i40 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   925
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   926
    "Created: 21.9.1996 / 16:06:22 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   927
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   928
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   929
i41
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   930
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   931
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   932
    ^ i41
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   933
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   934
    "Created: 21.9.1996 / 16:06:23 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   935
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   936
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   937
i41:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   938
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   939
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   940
    i41 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   941
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   942
    "Created: 21.9.1996 / 16:06:23 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   943
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   944
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   945
i42
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   946
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   947
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   948
    ^ i42
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   949
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   950
    "Created: 21.9.1996 / 16:06:23 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   951
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   952
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   953
i42:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   954
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   955
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   956
    i42 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   957
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   958
    "Created: 21.9.1996 / 16:06:23 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   959
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   960
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   961
i43
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   962
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   963
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   964
    ^ i43
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   965
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   966
    "Created: 21.9.1996 / 16:06:23 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   967
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   968
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   969
i43:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   970
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   971
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   972
    i43 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   973
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   974
    "Created: 21.9.1996 / 16:06:23 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   975
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   976
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   977
i44
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   978
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   979
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   980
    ^ i44
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   981
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   982
    "Created: 21.9.1996 / 16:06:23 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   983
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   984
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   985
i44:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   986
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   987
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   988
    i44 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   989
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   990
    "Created: 21.9.1996 / 16:06:23 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   991
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   992
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   993
i45
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
   994
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   995
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   996
    ^ i45
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   997
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   998
    "Created: 21.9.1996 / 16:06:23 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
   999
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1000
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1001
i45:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1002
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1003
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1004
    i45 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1005
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1006
    "Created: 21.9.1996 / 16:06:23 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1007
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1008
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1009
i46
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1010
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1011
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1012
    ^ i46
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1013
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1014
    "Created: 21.9.1996 / 16:06:23 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1015
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1016
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1017
i46:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1018
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1019
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1020
    i46 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1021
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1022
    "Created: 21.9.1996 / 16:06:23 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1023
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1024
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1025
i47
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1026
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1027
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1028
    ^ i47
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1029
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1030
    "Created: 21.9.1996 / 16:06:23 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1031
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1032
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1033
i47:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1034
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1035
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1036
    i47 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1037
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1038
    "Created: 21.9.1996 / 16:06:23 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1039
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1040
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1041
i48
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1042
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1043
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1044
    ^ i48
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1045
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1046
    "Created: 21.9.1996 / 16:06:23 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1047
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1048
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1049
i48:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1050
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1051
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1052
    i48 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1053
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1054
    "Created: 21.9.1996 / 16:06:23 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1055
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1056
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1057
i49
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1058
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1059
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1060
    ^ i49
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1061
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1062
    "Created: 21.9.1996 / 16:06:23 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1063
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1064
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1065
i49:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1066
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1067
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1068
    i49 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1069
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1070
    "Created: 21.9.1996 / 16:06:24 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1071
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1072
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1073
i4:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1074
    "prototype method to set the 4th instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1075
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1076
    i4 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1077
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1078
    "Created: 13.5.1996 / 21:19:25 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1079
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1080
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1081
i5
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1082
    "prototype method to return the 5th instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1083
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1084
    ^ i5
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1085
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1086
    "Created: 13.5.1996 / 21:19:26 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1087
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1088
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1089
i50
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1090
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1091
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1092
    ^ i50
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1093
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1094
    "Created: 21.9.1996 / 16:06:24 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1095
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1096
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1097
i50:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1098
    "prototype method"
343
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1099
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1100
    i50 := something.
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1101
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1102
    "Created: 21.9.1996 / 16:06:24 / cg"
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1103
!
3232712d4a28 allow up to 50 slots
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  1104
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1105
i5:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1106
    "prototype method to set the 5th instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1107
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1108
    i5 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1109
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1110
    "Created: 13.5.1996 / 21:19:26 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1111
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1112
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1113
i6
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1114
    "prototype method to return the 6th instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1115
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1116
    ^ i6
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1117
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1118
    "Created: 13.5.1996 / 21:19:26 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1119
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1120
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1121
i6:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1122
    "prototype method to set the 6th instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1123
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1124
    i6 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1125
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1126
    "Created: 13.5.1996 / 21:19:26 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1127
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1128
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1129
i7
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1130
    "prototype method to return the 7th instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1131
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1132
    ^ i7
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1133
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1134
    "Created: 13.5.1996 / 21:19:26 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1135
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1136
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1137
i7:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1138
    "prototype method to set the 7th instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1139
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1140
    i7 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1141
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1142
    "Created: 13.5.1996 / 21:19:26 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1143
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1144
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1145
i8
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1146
    "prototype method to return the 8th instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1147
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1148
    ^ i8
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1149
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1150
    "Created: 13.5.1996 / 21:19:26 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1151
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1152
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1153
i8:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1154
    "prototype method to set the 8th instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1155
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1156
    i8 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1157
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1158
    "Created: 13.5.1996 / 21:19:26 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1159
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1160
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1161
i9
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1162
    "prototype method to return the 9th instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1163
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1164
    ^ i9
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1165
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1166
    "Created: 13.5.1996 / 21:19:26 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1167
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1168
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1169
i9:something
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1170
    "prototype method to set the 9th instance variable"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1171
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1172
    i9 := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1173
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1174
    "Created: 13.5.1996 / 21:19:27 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1175
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1176
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1177
instSize
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1178
    "return instSize - required class protocol"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1179
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1180
    ^ instSize
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1181
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1182
    "Created: 13.5.1996 / 21:19:24 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1183
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1184
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1185
instSize:something
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1186
    "set instSize - required class protocol"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1187
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1188
    instSize := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1189
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1190
    "Created: 13.5.1996 / 21:19:25 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1191
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1192
429
ffc4e2ab5581 cleanup
Claus Gittinger <cg@exept.de>
parents: 343
diff changeset
  1193
methodDictionary
ffc4e2ab5581 cleanup
Claus Gittinger <cg@exept.de>
parents: 343
diff changeset
  1194
    "return the methodDictionary - required class protocol"
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1195
429
ffc4e2ab5581 cleanup
Claus Gittinger <cg@exept.de>
parents: 343
diff changeset
  1196
    ^ methodDictionary
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1197
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1198
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1199
superclass
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1200
    "return superclass - required class protocol"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1201
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1202
    ^ superclass
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1203
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1204
    "Created: 13.5.1996 / 21:19:23 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1205
!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1206
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1207
superclass:something
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1208
    "set superclass - required class protocol"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1209
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1210
    superclass := something.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1211
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1212
    "Created: 13.5.1996 / 21:19:23 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1213
! !
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1214
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1215
!Structure methodsFor:'stubs'!
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1216
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1217
doesNotUnderstand:aMessage
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
  1218
    "catch unimplemented messages - pass some to the superclass.
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
  1219
     Notice that although this method calls super messages,
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
  1220
     actual instances will have no valid superClass."
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1221
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1222
    |sel args names sz s idx|
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1223
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1224
    "/ instance protocol
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1225
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1226
    sel := aMessage selector.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1227
    args := aMessage arguments.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1228
2186
7af603c810b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  1229
    (sel == #displayString) ifTrue:[
3626
690681bf1976 class: Structure
Stefan Vogel <sv@exept.de>
parents: 3403
diff changeset
  1230
       s := CharacterWriteStream with:'Structure('.
1130
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1231
       names := self allInstVarNames.
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1232
       names notNil ifTrue:[
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1233
           names keysAndValuesDo:[:idx :nm |
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1234
               s nextPutAll:nm; nextPutAll:'->'.
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1235
               s nextPutAll:(self at:idx) displayString.
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1236
               s space
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1237
           ].
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1238
       ].
3626
690681bf1976 class: Structure
Stefan Vogel <sv@exept.de>
parents: 3403
diff changeset
  1239
       s nextPut:$).
1130
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1240
       ^ s contents
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
  1241
    ].
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
  1242
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1243
    sel == #basicInspect ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1244
        ^ InspectorView openOn:self
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1245
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1246
1424
eb987ab75c1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  1247
    sel == #inspectorClass ifTrue:[
eb987ab75c1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  1248
        ^ InspectorView
eb987ab75c1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  1249
    ].
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1250
    sel == #inspect ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1251
        ^ InspectorView openOn:self
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1252
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1253
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1254
    sel == #instVarAt: ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1255
        |nr|
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1256
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1257
        nr := args at:1.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1258
        nr == 1 ifTrue:[^ i1].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1259
        nr == 2 ifTrue:[^ i2].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1260
        nr == 3 ifTrue:[^ i3].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1261
        nr == 4 ifTrue:[^ i4].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1262
        nr == 5 ifTrue:[^ i5].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1263
        nr == 6 ifTrue:[^ i6].
1481
c6804dfaf78a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1424
diff changeset
  1264
        nr == 7 ifTrue:[^ i7].
c6804dfaf78a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1424
diff changeset
  1265
        nr == 8 ifTrue:[^ i8].
c6804dfaf78a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1424
diff changeset
  1266
        nr == 9 ifTrue:[^ i9].
c6804dfaf78a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1424
diff changeset
  1267
        nr == 10 ifTrue:[^ i10].
c6804dfaf78a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1424
diff changeset
  1268
        nr == 11 ifTrue:[^ i11].
c6804dfaf78a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1424
diff changeset
  1269
        nr == 12 ifTrue:[^ i12].
c6804dfaf78a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1424
diff changeset
  1270
        nr == 13 ifTrue:[^ i13].
c6804dfaf78a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1424
diff changeset
  1271
        nr == 14 ifTrue:[^ i14].
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1272
        ^ nil
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1273
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1274
1129
4951097b5191 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1037
diff changeset
  1275
    (sel == #'perform:') ifTrue:[
4951097b5191 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1037
diff changeset
  1276
         ^ super perform:(args at:1)
4951097b5191 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1037
diff changeset
  1277
    ].
1559
a11c7c231537 *** empty log message ***
penk
parents: 1486
diff changeset
  1278
    (sel == #'perform:with:') ifTrue:[
a11c7c231537 *** empty log message ***
penk
parents: 1486
diff changeset
  1279
         ^ super perform:(args at:1) with:(args at:2)
a11c7c231537 *** empty log message ***
penk
parents: 1486
diff changeset
  1280
    ].
1129
4951097b5191 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1037
diff changeset
  1281
4951097b5191 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1037
diff changeset
  1282
    (sel == #'=') ifTrue:[
1130
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1283
        (args at:1) class == (args at:1) ifFalse:[^ false].    "/ must be another struct
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1284
        names := self allInstVarNames.
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1285
        names notNil ifTrue:[
1377
24f668298ef1 Convert Object>>errorSignal -> Error
Stefan Vogel <sv@exept.de>
parents: 1243
diff changeset
  1286
            Error handle:[:ex |
1130
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1287
                ^ false
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1288
            ] do:[
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1289
                names do:[:slotName |
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1290
                    ((args at:1) perform:slotName asSymbol) = (self perform:slotName asSymbol)
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1291
                    ifFalse:[slotName halt. ^ false]
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1292
                ]
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1293
            ].
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1294
        ].
daa5e54c1a7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1129
diff changeset
  1295
        ^ true.
1129
4951097b5191 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1037
diff changeset
  1296
    ].
4951097b5191 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1037
diff changeset
  1297
    (sel == #'~=') ifTrue:[
4951097b5191 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1037
diff changeset
  1298
         ^ super ~= (args at:1)
4951097b5191 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1037
diff changeset
  1299
    ].
4951097b5191 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1037
diff changeset
  1300
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1301
    (sel == #size
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1302
    or:[sel == #basicSize]) ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1303
         ^ super basicSize
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1304
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1305
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1306
    (sel == #at:
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1307
    or:[sel == #basicAt:]) ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1308
         ^ super basicAt:(args at:1)
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1309
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1310
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1311
    (sel == #at:put:
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1312
    or:[sel == #basicAt:put:]) ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1313
         ^ super basicAt:(args at:1) put:(args at:2)
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1314
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1315
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1316
    sel == #== ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1317
         ^ self == (args at:1)
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1318
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1319
945
a42d24a15c84 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 943
diff changeset
  1320
    sel == #clone ifTrue:[
a42d24a15c84 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 943
diff changeset
  1321
         ^ super clone
a42d24a15c84 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 943
diff changeset
  1322
    ].
a42d24a15c84 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 943
diff changeset
  1323
    sel == #shallowCopy ifTrue:[
a42d24a15c84 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 943
diff changeset
  1324
         ^ super shallowCopy
a42d24a15c84 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 943
diff changeset
  1325
    ].
2215
8ae61b93c7eb changed: #doesNotUnderstand: - hash
Michael Beyl <mb@exept.de>
parents: 2186
diff changeset
  1326
    sel == #identityHash ifTrue:[
8ae61b93c7eb changed: #doesNotUnderstand: - hash
Michael Beyl <mb@exept.de>
parents: 2186
diff changeset
  1327
         ^ super identityHash
8ae61b93c7eb changed: #doesNotUnderstand: - hash
Michael Beyl <mb@exept.de>
parents: 2186
diff changeset
  1328
    ].
2186
7af603c810b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  1329
    (sel == #isException) ifTrue:[
7af603c810b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  1330
         ^ false
7af603c810b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  1331
    ].
945
a42d24a15c84 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 943
diff changeset
  1332
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1333
    "/ class protocol
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1334
2186
7af603c810b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  1335
    sel == #name ifTrue:[
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1336
        ^ 'Structure'
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1337
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1338
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1339
    sel == #isVariable ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1340
         ^ false
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1341
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1342
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1343
    sel == #isClass ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1344
         ^ false
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1345
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1346
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1347
    sel == #isMeta ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1348
         ^ false
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1349
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1350
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1351
    sel == #isBehavior ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1352
         ^ false
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1353
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1354
1243
b05df2fb4d9c checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1131
diff changeset
  1355
    sel == #isKindOf: ifTrue:[
b05df2fb4d9c checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1131
diff changeset
  1356
         ^ false
b05df2fb4d9c checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1131
diff changeset
  1357
    ].
b05df2fb4d9c checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1131
diff changeset
  1358
2006
a5996b7ad0cf *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1559
diff changeset
  1359
    sel == #isString ifTrue:[
a5996b7ad0cf *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1559
diff changeset
  1360
         ^ false
a5996b7ad0cf *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1559
diff changeset
  1361
    ].
a5996b7ad0cf *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1559
diff changeset
  1362
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1363
    sel == #respondsTo: ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1364
         ^ false
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1365
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1366
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1367
    sel == #whichClassIncludesSelector: ifTrue:[
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1368
         ^ nil
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1369
    ].
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1370
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1371
    sel == #evaluatorClass ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1372
        ^ Compiler
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1373
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1374
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1375
    sel == #classNameWithArticle ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1376
         ^ self displayString
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1377
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1378
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1379
    sel == #allSubclasses ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1380
        ^ #()
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1381
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1382
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1383
    sel == #allClassVarNames ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1384
        ^ #()
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1385
    ].
1559
a11c7c231537 *** empty log message ***
penk
parents: 1486
diff changeset
  1386
    sel == #methodDictionary ifTrue:[
a11c7c231537 *** empty log message ***
penk
parents: 1486
diff changeset
  1387
        ^methodDictionary
a11c7c231537 *** empty log message ***
penk
parents: 1486
diff changeset
  1388
    ].
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1389
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1390
    sel == #allInstVarNames ifTrue:[
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1391
        methodDictionary isNil ifTrue:[
1486
c6219885aab4 print -> infoPrint
Claus Gittinger <cg@exept.de>
parents: 1481
diff changeset
  1392
            'Structure [info]: oops - nil methodDict' infoPrintCR.
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1393
            ^ #()
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1394
        ].
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1395
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1396
        sz := super basicSize.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1397
        names := Array new:sz.
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1398
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1399
        methodDictionary keysAndValuesDo:[:sel :mthd|
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1400
            |index mysel|
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1401
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1402
            (sel endsWith:$:) ifFalse:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1403
                (sel ~~ #class) ifTrue:[
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1404
                    "/
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1405
                    "/ which method is it ?
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1406
                    "/
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1407
                    idx := 1.
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1408
                    [idx <= sz] whileTrue:[
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1409
                        mysel := ('i' , idx printString) asSymbol.
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1410
                        mthd == (Structure compiledMethodAt:mysel) ifTrue:[
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1411
                            names at:idx put:sel.
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1412
                            idx := sz.   "/ break
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1413
                        ].
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1414
                        idx := idx + 1.
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1415
                    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1416
                ]
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1417
            ]
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1418
        ].
2341
d05835f10cb8 better check for behavior compatibility
Claus Gittinger <cg@exept.de>
parents: 2215
diff changeset
  1419
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1420
         ^ names
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1421
    ].
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1422
943
5a9699ed4b9b give the dummy class another name, to avoid confusion with
Claus Gittinger <cg@exept.de>
parents: 654
diff changeset
  1423
    (sel == #instSize) ifTrue:[
5a9699ed4b9b give the dummy class another name, to avoid confusion with
Claus Gittinger <cg@exept.de>
parents: 654
diff changeset
  1424
         ^ instSize
5a9699ed4b9b give the dummy class another name, to avoid confusion with
Claus Gittinger <cg@exept.de>
parents: 654
diff changeset
  1425
    ].
1486
c6219885aab4 print -> infoPrint
Claus Gittinger <cg@exept.de>
parents: 1481
diff changeset
  1426
    'Structure [warning]: return nil for: ' infoPrint.
c6219885aab4 print -> infoPrint
Claus Gittinger <cg@exept.de>
parents: 1481
diff changeset
  1427
    aMessage infoPrint.
c6219885aab4 print -> infoPrint
Claus Gittinger <cg@exept.de>
parents: 1481
diff changeset
  1428
    ' args ' infoPrint. args infoPrintCR.
2186
7af603c810b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  1429
"/ Object halt.
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1430
294
6f937c0ba907 fixes for new MethodDictionary
Claus Gittinger <cg@exept.de>
parents: 283
diff changeset
  1431
    ^ nil.
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1432
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1433
    "Created: 13.5.1996 / 20:22:22 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1434
    "Modified: 13.5.1996 / 21:12:54 / cg"
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1435
! !
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1436
616
b5c07da2df11 fixes & class comment
ca
parents: 429
diff changeset
  1437
!Structure class methodsFor:'documentation'!
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1438
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1439
version
3626
690681bf1976 class: Structure
Stefan Vogel <sv@exept.de>
parents: 3403
diff changeset
  1440
    ^ '$Header: /cvs/stx/stx/libcomp/Structure.st,v 1.27 2015-04-22 18:03:50 stefan Exp $'
2215
8ae61b93c7eb changed: #doesNotUnderstand: - hash
Michael Beyl <mb@exept.de>
parents: 2186
diff changeset
  1441
!
8ae61b93c7eb changed: #doesNotUnderstand: - hash
Michael Beyl <mb@exept.de>
parents: 2186
diff changeset
  1442
8ae61b93c7eb changed: #doesNotUnderstand: - hash
Michael Beyl <mb@exept.de>
parents: 2186
diff changeset
  1443
version_CVS
3626
690681bf1976 class: Structure
Stefan Vogel <sv@exept.de>
parents: 3403
diff changeset
  1444
    ^ '$Header: /cvs/stx/stx/libcomp/Structure.st,v 1.27 2015-04-22 18:03:50 stefan Exp $'
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1445
! !
1377
24f668298ef1 Convert Object>>errorSignal -> Error
Stefan Vogel <sv@exept.de>
parents: 1243
diff changeset
  1446
3403
1ae8bfefe251 class: Structure
Claus Gittinger <cg@exept.de>
parents: 2351
diff changeset
  1447
282
7f91d09a768b renamed
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1448
Structure initialize!