diff -r aa2498ef6470 -r a27a279701f8 UIBytes.st --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/UIBytes.st Fri Jul 16 11:39:45 1993 +0200 @@ -0,0 +1,63 @@ +" + COPYRIGHT (c) 1993 by Claus Gittinger + All Rights Reserved + + This software is furnished under a license and may be used + only in accordance with the terms of that license and with the + inclusion of the above copyright notice. This software may not + be provided or otherwise made available to, or used by, any + other person. No title to or ownership of the software is + hereby transferred. +" + +ByteArray subclass:#UninterpretedBytes + instanceVariableNames:'' + classVariableNames:'' + poolDictionaries:'' + category:'System-Support' +! + +UninterpretedBytes comment:' + +COPYRIGHT (c) 1993 by Claus Gittinger + All Rights Reserved + +this class has been added for ST-80 compatibility. + +%W% %E% +'! + +!UninterpretedBytes class methodsFor:'queries'! + +isBigEndian + "return true, if words/shorts store the most-significant + byte last. I.e. true if LSB-first (vax, intel), + false if MSB-first (m68k, sun)." + +%{ /* NOCONTEXT */ + + /* + * I dont like ifdefs - you always forget some ... + * therefore we look into a structure at run-time + */ + union { + unsigned int u_l; + char u_c[sizeof(int)]; + } u; + + u.u_l = 0x87654321; + if (u.u_c[0] == 0x21) RETURN (true); + RETURN (false ); +%} + "UninterpretedBytes isBigEndian" +! ! + +!UninterpretedBytes methodsFor:'accessing'! + +byteAt:index + ^ self basicAt:index +! + +byteAt:index put:value + ^ self basicAt:index put:value +! !