The Trunk: Collections-eem.880.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: Collections-eem.880.mcz

commits-2
Eliot Miranda uploaded a new version of Collections to project The Trunk:
http://source.squeak.org/trunk/Collections-eem.880.mcz

==================== Summary ====================

Name: Collections-eem.880
Author: eem
Time: 11 March 2020, 1:13:58.722295 pm
UUID: 927e58eb-1ab6-470a-8eb2-f36065351836
Ancestors: Collections-nice.879

Add the read-only object support to accompany Kernel-eem.1317

=============== Diff against Collections-nice.879 ===============

Item was changed:
  ----- Method: ByteString>>at:put: (in category 'accessing') -----
  at: index put: aCharacter
+ "Primitive. Store the Character in the field of the receiver indicated by the index.
+ Fail if the index is not an Integer or is out of bounds, or if the argument is not a
+ Character, or the Character's code is outside the 0-255 range, or if the receiver
+ is read-only. Essential. See Object documentation whatIsAPrimitive."
- "Primitive. Store the Character in the field of the receiver indicated by
- the index. Fail if the index is not an Integer or is out of bounds, or if
- the argument is not a Character. Essential. See Object documentation
- whatIsAPrimitive."
 
+ <primitive: 64 error: ec>
+ aCharacter isCharacter ifFalse:
+ [^self errorImproperStore].
- <primitive: 64>
- aCharacter isCharacter
- ifFalse:[^self errorImproperStore].
- aCharacter isOctetCharacter ifFalse:[
- "Convert to WideString"
- self becomeForward: (WideString from: self).
- ^self at: index put: aCharacter.
- ].
  index isInteger
+ ifTrue:
+ [ec == #'no modification' ifTrue:
+ [^thisContext modificationForbiddenFor: self at: index putCharacter: aCharacter].
+ aCharacter isOctetCharacter ifFalse: "Convert to WideString"
+ [self becomeForward: (WideString from: self).
+ ^self at: index put: aCharacter].
+ self errorSubscriptBounds: index]
- ifTrue: [self errorSubscriptBounds: index]
  ifFalse: [self errorNonIntegerIndex]!

Item was changed:
  ----- Method: ByteSymbol>>pvtAt:put: (in category 'private') -----
  pvtAt: index put: aCharacter
+ "Primitive. Store the Character in the field of the receiver indicated by the index.
+ Fail if the index is not an Integer or is out of bounds, or if the argument is not a
+ Character, or the Character's code is outside the 0-255 range, or if the receiver
+ is read-only. Essential. See Object documentation whatIsAPrimitive."
- "Primitive. Store the Character in the field of the receiver indicated by
- the index. Fail if the index is not an Integer or is out of bounds, or if
- the argument is not a Character. Essential. See Object documentation
- whatIsAPrimitive."
 
+ <primitive: 64 error: ec>
+ aCharacter isCharacter ifFalse:
+ [^self errorImproperStore].
- <primitive: 64>
- aCharacter isCharacter
- ifFalse:[^self errorImproperStore].
  index isInteger
+ ifTrue:
+ [ec == #'no modification' ifTrue:
+ [^thisContext modificationForbiddenFor: self at: index putCharacter: aCharacter].
+ self errorSubscriptBounds: index]
- ifTrue: [self errorSubscriptBounds: index]
  ifFalse: [self errorNonIntegerIndex]!

Item was changed:
  ----- Method: WideString>>at:put: (in category 'accessing') -----
  at: index put: aCharacter
+ "Primitive. Store the Character in the field of the receiver indicated by
+ the index. Fail if the index is not an Integer or is out of bounds, or if
+ the argument is not a Character, or if the receiver is read-only.
+ Essential. See Object documentation whatIsAPrimitive."
- "Store the Character into the field of the receiver indicated by the index.
- Primitive.  Fail if the index is not an Integer or is out of bounds, or if the
- argument is not a Character.  Essential.  See Object documentation whatIsAPrimitive."
 
+ <primitive: 64 error: ec>
+ aCharacter isCharacter ifFalse:
+ [^self errorImproperStore].
+ index isInteger
- <primitive: 64>
- ^aCharacter isCharacter
  ifTrue:
+ [ec == #'no modification' ifTrue:
+ [^thisContext modificationForbiddenFor: self at: index putCharacter: aCharacter].
+ self errorSubscriptBounds: index]
+ ifFalse: [self errorNonIntegerIndex]!
- [index isInteger
- ifTrue: [self errorSubscriptBounds: index]
- ifFalse: [self errorNonIntegerIndex]]
- ifFalse:
- [self errorImproperStore]!

Item was changed:
  ----- Method: WideSymbol>>pvtAt:put: (in category 'private') -----
  pvtAt: index put: aCharacter
  "Primitive. Store the Character in the field of the receiver indicated by
+ the index. Fail if the index is not an Integer or is out of bounds, or if
+ the argument is not a Character, or if the receiver is read-only.
+ Essential. See Object documentation whatIsAPrimitive."
- the index. Fail if the index is not an Integer or is out of bounds, or if
- the argument is not a Character. Essential. See Object documentation
- whatIsAPrimitive."
 
+ <primitive: 61 error: ec>
+ aCharacter isCharacter ifFalse:
+ [^self errorImproperStore].
- <primitive: 61>
  index isInteger
+ ifTrue:
+ [ec == #'no modification' ifTrue:
+ [^thisContext modificationForbiddenFor: self at: index putCharacter: aCharacter].
+ self errorSubscriptBounds: index]
- ifTrue: [self errorSubscriptBounds: index]
  ifFalse: [self errorNonIntegerIndex]!