transforms/Xtreams__ASCIIEncoder.st
author Martin Kobetic
Sun, 17 Nov 2013 00:23:18 -0500
changeset 147 bd6be28aa924
parent 111 44ac233b2f83
permissions -rw-r--r--
merging

"{ Package: 'stx:goodies/xtreams/transforms' }"

"{ NameSpace: Xtreams }"

Encoder subclass:#ASCIIEncoder
	instanceVariableNames:''
	classVariableNames:''
	poolDictionaries:''
	category:'Xtreams-Transforms'
!

ASCIIEncoder comment:'Implements ASCII encoding.

'
!


!ASCIIEncoder class methodsFor:'class initialization'!

initialize

	self encoders
		at: #ascii put: self new;
		at: #ASCII put: self new
! !

!ASCIIEncoder methodsFor:'accessing'!

decodeFrom: aReadStream

	| value |
	^(value := aReadStream get) < 128
		ifTrue: [ Character value: value ]
		ifFalse: [ self error: 'Illegal value!!' ]
!

encode: aCharacter on: aWriteStream

	| value |
	(value := aCharacter asInteger) < 128
		ifTrue: [ aWriteStream put: value ]
		ifFalse: [ self error: 'Illegal character!!' ]
! !

!ASCIIEncoder class methodsFor:'documentation'!

version_HG

    ^ '$Changeset: <not expanded> $'
!

version_SVN
    ^ '$Id$'
! !


ASCIIEncoder initialize!