- live browsing of Self object memory -

lobby traitssending

CopyDowns: vector

CreatorPath: traits sending

Module: sending

resending

howToPerformUndirectedResends =
( 
    "The _PerformResend: primitives do a resend starting from
     the holder of the method that the primitive is called
     from (just like how an ordinary resend starts from the
     holder of the method that the resend is in). If you
     wish to perform an undirected resend, you can use one
     of the following primitives directly in the method
     that you wish to resend from:"

    [ _PerformResend: aSelector ].
    [ _PerformResend: aSelector With: a1 ].
    [ _PerformResend: aSelector With: a1 With: a2 ].
    [ _PerformResend: aSelector With: a1 With: a2 With: a3 ].
    [ _PerformResend: aSelector With: a1 With: a2 With: a3 With: a4 ].
    [ _PerformResend: aSelector With: a1 With: a2 With: a3 With: a4 With: a5 ].
    [ _PerformResend: aSelector With: a1 With: a2 With: a3 With: a4 With: a5 With: a6 ].
    [ _PerformResend: aSelector With: a1 With: a2 With: a3 With: a4 With: a5 With: a6 With: a7 ].
    [ _PerformResend: aSelector With: a1 With: a2 With: a3 With: a4 With: a5 With: a6 With: a7 With: a8 ].
    [ _PerformResend: aSelector With: a1 With: a2 With: a3 With: a4 With: a5 With: a6 With: a7 With: a8 With: a9 ])

sending

sendTo: = ( receiver _Perform: canonicalize)
sendTo:With: = ( receiver _Perform: canonicalize With: a1)
sendTo:With:With: = ( receiver _Perform: canonicalize With: a1 With: a2)
sendTo:With:With:With: = ( receiver _Perform: canonicalize With: a1 With: a2 With: a3)
sendTo:With:With:With:With: = ( receiver _Perform: canonicalize With: a1 With: a2 With: a3 With: a4)
sendTo:With:With:With:With:With: =
( 
    receiver _Perform: canonicalize 
        With: a1 With: a2 With: a3 With: a4 With: a5)
sendTo:With:With:With:With:With:With: =
( 
    receiver _Perform: canonicalize
        With: a1 With: a2 With: a3 With: a4 With: a5 With: a6)
sendTo:With:With:With:With:With:With:With: =
( 
    receiver _Perform: canonicalize
        With: a1 With: a2 With: a3 With: a4 With: a5 With: a6 With: a7)
sendTo:With:With:With:With:With:With:With:With: =
( 
    receiver _Perform: canonicalize
        With: a1 With: a2 With: a3 With: a4 With: a5 With: a6 With: a7
        With: a8)
sendTo:With:With:With:With:With:With:With:With:With: =
( 
    receiver _Perform: canonicalize
        With: a1 With: a2 With: a3 With: a4 With: a5 With: a6 With: a7
        With: a8 With: a9)
sendTo:With:With:With:With:With:With:With:With:With:With: =
( 
    receiver _Perform: canonicalize
        With: a1 With: a2 With: a3 With: a4 With: a5 With: a6 With: a7
        With: a8 With: a9 With: a10)
sendTo:With:With:With:With:With:With:With:With:With:With:With: =
( 
    receiver _Perform: canonicalize
        With: a1 With: a2 With: a3 With: a4 With: a5 With: a6 With: a7
        With: a8 With: a9 With: a10 With: a11)
sendTo:With:With:With:With:With:With:With:With:With:With:With:With: =
( 
    receiver _Perform: canonicalize
        With: a1 With: a2 With: a3 With: a4 With: a5 With: a6 With: a7
        With: a8 With: a9 With: a10 With: a11 With: a12)
sendTo:With:With:With:With:With:With:With:With:With:With:With:With:With: =
( 
    receiver _Perform: canonicalize
        With: a1 With: a2 With: a3 With: a4 With: a5 With: a6 With: a7
        With: a8 With: a9 With: a10 With: a11 With: a12
        With: a13)
sendTo:WithArguments: =
( 
    0 = a size ifTrue: [ ^ sendTo: receiver ].
    1 = a size ifTrue: [ ^ sendTo: receiver 
      With: a at: 0 ].
    2 = a size ifTrue: [ ^ sendTo: receiver 
      With: (a at: 0) With: (a at: 1) ].
    3 = a size ifTrue: [ ^ sendTo: receiver 
      With: (a at: 0) With: (a at: 1) With: (a at: 2) ].
    4 = a size ifTrue: [ ^ sendTo: receiver 
      With: (a at: 0) With: (a at: 1) With: (a at: 2) With: (a at: 3) ].
    5 = a size ifTrue: [ ^ sendTo: receiver 
      With: (a at: 0) With: (a at: 1) With: (a at: 2) With: (a at: 3)
      With: (a at: 4) ].
    6 = a size ifTrue: [ ^ sendTo: receiver 
      With: (a at: 0) With: (a at: 1) With: (a at: 2) With: (a at: 3)
      With: (a at: 4) With: (a at: 5) ].
    7 = a size ifTrue: [ ^ sendTo: receiver 
      With: (a at: 0) With: (a at: 1) With: (a at: 2) With: (a at: 3)
      With: (a at: 4) With: (a at: 5) With: (a at: 6) ].
    8 = a size ifTrue: [ ^ sendTo: receiver 
      With: (a at: 0) With: (a at: 1) With: (a at: 2) With: (a at: 3)
      With: (a at: 4) With: (a at: 5) With: (a at: 6) With: (a at: 7) ].
    9 = a size ifTrue: [ ^ sendTo: receiver 
      With: (a at: 0) With: (a at: 1) With: (a at: 2) With: (a at: 3)
      With: (a at: 4) With: (a at: 5) With: (a at: 6) With: (a at: 7)
      With: (a at: 8) ].
    10 = a size ifTrue: [ ^ sendTo: receiver 
      With: (a at: 0) With: (a at: 1) With: (a at: 2) With: (a at: 3)
      With: (a at: 4) With: (a at: 5) With: (a at: 6) With: (a at: 7)
      With: (a at: 8) With: (a at: 9) ].
    11 = a size ifTrue: [ ^ sendTo: receiver 
      With: (a at: 0) With: (a at: 1) With: (a at: 2) With: (a at: 3)
      With: (a at: 4) With: (a at: 5) With: (a at: 6) With: (a at: 7)
      With: (a at: 8) With: (a at: 9) With: (a at: 10)].
    12 = a size ifTrue: [ ^ sendTo: receiver 
      With: (a at: 0) With: (a at: 1) With: (a at: 2) With: (a at: 3)
      With: (a at: 4) With: (a at: 5) With: (a at: 6) With: (a at: 7)
      With: (a at: 8) With: (a at: 9) With: (a at: 10) With: (a at: 11) ].
    error: 'need more cases')

sending and delegating

sendTo:DelegatingTo: = ( receiver _Perform: canonicalize DelegatingTo: delegatee)
sendTo:DelegatingTo:With: = ( receiver _Perform: canonicalize DelegatingTo: delegatee With: a1)
sendTo:DelegatingTo:With:With: =
( 
    receiver _Perform: canonicalize DelegatingTo: delegatee
        With: a1 With: a2)
sendTo:DelegatingTo:With:With:With: =
( 
    receiver _Perform: canonicalize DelegatingTo: delegatee
        With: a1 With: a2 With: a3)
sendTo:DelegatingTo:With:With:With:With: =
( 
    receiver _Perform: canonicalize DelegatingTo: delegatee
        With: a1 With: a2 With: a3 With: a4)
sendTo:DelegatingTo:With:With:With:With:With: =
( 
    receiver _Perform: canonicalize DelegatingTo: delegatee
        With: a1 With: a2 With: a3 With: a4 With: a5)
sendTo:DelegatingTo:With:With:With:With:With:With: =
( 
    receiver _Perform: canonicalize DelegatingTo: delegatee
        With: a1 With: a2 With: a3 With: a4 With: a5 With: a6)
sendTo:DelegatingTo:With:With:With:With:With:With:With: =
( 
    receiver _Perform: canonicalize DelegatingTo: delegatee
        With: a1 With: a2 With: a3 With: a4 With: a5 With: a6 With: a7)
sendTo:DelegatingTo:With:With:With:With:With:With:With:With: =
( 
    receiver _Perform: canonicalize DelegatingTo: delegatee
        With: a1 With: a2 With: a3 With: a4 With: a5 With: a6 With: a7
        With: a8)
sendTo:DelegatingTo:With:With:With:With:With:With:With:With:With: =
( 
    receiver _Perform: canonicalize DelegatingTo: delegatee
        With: a1 With: a2 With: a3 With: a4 With: a5 With: a6 With: a7
        With: a8 With: a9)
sendTo:DelegatingTo:WithArguments: =
( 
    0 = a size ifTrue: [ ^ sendTo: receiver 
      DelegatingTo: delegatee ].
    1 = a size ifTrue: [ ^ sendTo: receiver 
      DelegatingTo: delegatee
      With: a at: 0 ].
    2 = a size ifTrue: [ ^ sendTo: receiver 
      DelegatingTo: delegatee
      With: (a at: 0) With: (a at: 1) ].
    3 = a size ifTrue: [ ^ sendTo: receiver 
      DelegatingTo: delegatee
      With: (a at: 0) With: (a at: 1) With: (a at: 2) ].
    4 = a size ifTrue: [ ^ sendTo: receiver 
      DelegatingTo: delegatee
      With: (a at: 0) With: (a at: 1) With: (a at: 2) With: (a at: 3) ].
    5 = a size ifTrue: [ ^ sendTo: receiver 
      DelegatingTo: delegatee
      With: (a at: 0) With: (a at: 1) With: (a at: 2) With: (a at: 3)
      With: (a at: 4) ].
    6 = a size ifTrue: [ ^ sendTo: receiver 
      DelegatingTo: delegatee
      With: (a at: 0) With: (a at: 1) With: (a at: 2) With: (a at: 3)
      With: (a at: 4) With: (a at: 5) ].
    7 = a size ifTrue: [ ^ sendTo: receiver 
      DelegatingTo: delegatee
      With: (a at: 0) With: (a at: 1) With: (a at: 2) With: (a at: 3)
      With: (a at: 4) With: (a at: 5) With: (a at: 6) ].
    8 = a size ifTrue: [ ^ sendTo: receiver 
      DelegatingTo: delegatee
      With: (a at: 0) With: (a at: 1) With: (a at: 2) With: (a at: 3)
      With: (a at: 4) With: (a at: 5) With: (a at: 6) With: (a at: 7) ].
    9 = a size ifTrue: [ ^ sendTo: receiver 
      DelegatingTo: delegatee
      With: (a at: 0) With: (a at: 1) With: (a at: 2) With: (a at: 3)
      With: (a at: 4) With: (a at: 5) With: (a at: 6) With: (a at: 7)
      With: (a at: 8) ].
    error: 'need more cases')