[squeak-dev] The Trunk: Multilingual-pre.223.mcz

Rein, Patrick Patrick.Rein at hpi.de
Fri Apr 21 11:04:32 UTC 2017


The initialize methods are somewhat "necessary" as it turns out (after a discussion with Tobias Pape). 

When loading a new class with Monticello, the initialize method is only executed if initialize is defined
on the class (see MCMethodDefinition>>#postLoad). It is also only executed if the package actually 
contains a MCMethodDefinition for an initialize method, but that is not relevant in this case (although
that means that changing the initializeDecodeTable alone will not suffice in the future to update the tables).

I have also found this thread: http://forum.world.st/class-initialization-and-class-side-variables-tp4822869p4822901.html
which describes the same behavior.
________________________________________
From: Squeak-dev <squeak-dev-bounces at lists.squeakfoundation.org> on behalf of Levente Uzonyi <leves at caesar.elte.hu>
Sent: Friday, April 21, 2017 12:22
To: squeak-dev at lists.squeakfoundation.org
Cc: packages at lists.squeakfoundation.org
Subject: Re: [squeak-dev] The Trunk: Multilingual-pre.223.mcz

On Fri, 21 Apr 2017, commits at source.squeak.org wrote:

> Patrick Rein uploaded a new version of Multilingual to project The Trunk:
> http://source.squeak.org/trunk/Multilingual-pre.223.mcz
>
> ==================== Summary ====================
>
> Name: Multilingual-pre.223
> Author: pre
> Time: 21 April 2017, 12:11:40.94494 pm
> UUID: 184ff1ba-857b-8847-8de2-7bb0a2eb9f5a
> Ancestors: Multilingual-pre.222
>
> Undoes the previous refactoring after a discussion with topa on class initializers... Also reformats decoding table source and adds a latin9 converter
>
> =============== Diff against Multilingual-pre.222 ===============
>
> Item was added:
> + ----- Method: CP1250TextConverter class>>initialize (in category 'class initialization') -----
> + initialize
> +
> +     super initialize!

What's the point of these methods?

Levente

>
> Item was added:
> + ----- Method: CP1252TextConverter class>>initialize (in category 'class initialization') -----
> + initialize
> +
> +     super initialize!
>
> Item was changed:
>  ----- Method: CP1252TextConverter class>>initializeDecodeTable (in category 'class initialization') -----
>  initializeDecodeTable
>       decodeTable := (0 to: 127) , #(
> +             16r20AC -1                      16r201A 16r0192 16r201E 16r2026 16r2020 16r2021
> +             16r02C6 16r2030 16r0160 16r2039 16r0152 -1                      16r017D -1
> +             -1                      16r2018 16r2019 16r201C 16r201D 16r2022 16r2013 16r2014
> +             16r02DC 16r2122 16r0161 16r203A 16r0153 -1                      16r017E 16r0178
> +             16r00A0 16r00A1 16r00A2 16r00A3 16r00A4 16r00A5 16r00A6 16r00A7
> +             16r00A8 16r00A9 16r00AA 16r00AB 16r00AC 16r00AD 16r00AE 16r00AF
> +             16r00B0 16r00B1 16r00B2 16r00B3 16r00B4 16r00B5 16r00B6 16r00B7
> +             16r00B8 16r00B9 16r00BA 16r00BB 16r00BC 16r00BD 16r00BE 16r00BF
> +             16r00C0 16r00C1 16r00C2 16r00C3 16r00C4 16r00C5 16r00C6 16r00C7
> +             16r00C8 16r00C9 16r00CA 16r00CB 16r00CC 16r00CD 16r00CE 16r00CF
> +             16r00D0 16r00D1 16r00D2 16r00D3 16r00D4 16r00D5 16r00D6 16r00D7
> +             16r00D8 16r00D9 16r00DA 16r00DB 16r00DC 16r00DD 16r00DE 16r00DF
> +             16r00E0 16r00E1 16r00E2 16r00E3 16r00E4 16r00E5 16r00E6 16r00E7
> +             16r00E8 16r00E9 16r00EA 16r00EB 16r00EC 16r00ED 16r00EE 16r00EF
> +             16r00F0 16r00F1 16r00F2 16r00F3 16r00F4 16r00F5 16r00F6 16r00F7
> +             16r00F8 16r00F9 16r00FA 16r00FB 16r00FC 16r00FD 16r00FE 16r00FF ).!
> - 16r20AC
> - -1
> - 16r201A
> - 16r0192
> - 16r201E
> - 16r2026
> - 16r2020
> - 16r2021
> - 16r02C6
> - 16r2030
> - 16r0160
> - 16r2039
> - 16r0152
> - -1
> - 16r017D
> - -1
> - -1
> - 16r2018
> - 16r2019
> - 16r201C
> - 16r201D
> - 16r2022
> - 16r2013
> - 16r2014
> - 16r02DC
> - 16r2122
> - 16r0161
> - 16r203A
> - 16r0153
> - -1
> - 16r017E
> - 16r0178
> - 16r00A0
> - 16r00A1
> - 16r00A2
> - 16r00A3
> - 16r00A4
> - 16r00A5
> - 16r00A6
> - 16r00A7
> - 16r00A8
> - 16r00A9
> - 16r00AA
> - 16r00AB
> - 16r00AC
> - 16r00AD
> - 16r00AE
> - 16r00AF
> - 16r00B0
> - 16r00B1
> - 16r00B2
> - 16r00B3
> - 16r00B4
> - 16r00B5
> - 16r00B6
> - 16r00B7
> - 16r00B8
> - 16r00B9
> - 16r00BA
> - 16r00BB
> - 16r00BC
> - 16r00BD
> - 16r00BE
> - 16r00BF
> - 16r00C0
> - 16r00C1
> - 16r00C2
> - 16r00C3
> - 16r00C4
> - 16r00C5
> - 16r00C6
> - 16r00C7
> - 16r00C8
> - 16r00C9
> - 16r00CA
> - 16r00CB
> - 16r00CC
> - 16r00CD
> - 16r00CE
> - 16r00CF
> - 16r00D0
> - 16r00D1
> - 16r00D2
> - 16r00D3
> - 16r00D4
> - 16r00D5
> - 16r00D6
> - 16r00D7
> - 16r00D8
> - 16r00D9
> - 16r00DA
> - 16r00DB
> - 16r00DC
> - 16r00DD
> - 16r00DE
> - 16r00DF
> - 16r00E0
> - 16r00E1
> - 16r00E2
> - 16r00E3
> - 16r00E4
> - 16r00E5
> - 16r00E6
> - 16r00E7
> - 16r00E8
> - 16r00E9
> - 16r00EA
> - 16r00EB
> - 16r00EC
> - 16r00ED
> - 16r00EE
> - 16r00EF
> - 16r00F0
> - 16r00F1
> - 16r00F2
> - 16r00F3
> - 16r00F4
> - 16r00F5
> - 16r00F6
> - 16r00F7
> - 16r00F8
> - 16r00F9
> - 16r00FA
> - 16r00FB
> - 16r00FC
> - 16r00FD
> - 16r00FE
> - 16r00FF).!
>
> Item was added:
> + ----- Method: CP1253TextConverter class>>initialize (in category 'class initialization') -----
> + initialize
> +
> +     super initialize!
>
> Item was added:
> + ByteTextConverter subclass: #CP1256TextConverter
> +     instanceVariableNames: ''
> +     classVariableNames: ''
> +     poolDictionaries: ''
> +     category: 'Multilingual-TextConversion'!
> +
> + !CP1256TextConverter commentStamp: 'pre 4/20/2017 14:49' prior: 0!
> + Text converter for CP1256.  Windows code page used for Maghrib states.!
>
> Item was added:
> + ----- Method: CP1256TextConverter class>>encodingNames (in category 'utilities') -----
> + encodingNames
> +
> +     ^ #('cp-1256' 'windows-1256') copy
> + !
>
> Item was added:
> + ----- Method: CP1256TextConverter class>>initialize (in category 'class initialization') -----
> + initialize
> +
> +     super initialize!
>
> Item was added:
> + ----- Method: CP1256TextConverter class>>initializeDecodeTable (in category 'class initialization') -----
> + initializeDecodeTable
> +     decodeTable :=  (0 to: 127) , #(
> +             16r20AC 16r067E 16r201A 16r0192 16r201E 16r2026 16r2020 16r2021
> +             16r02C6 16r2030 16r0679 16r2039 16r0152 16r0686 16r0698 16r0688
> +             16r06AF 16r2018 16r2019 16r201C 16r201D 16r2022 16r2013 16r2014
> +             16r06A9 16r2122 16r0691 16r203A 16r0153 16r200C 16r200D 16r06BA
> +             16r00A0 16r060C 16r00A2 16r00A3 16r00A4 16r00A5 16r00A6 16r00A7
> +             16r00A8 16r00A9 16r06BE 16r00AB 16r00AC 16r00AD 16r00AE 16r00AF
> +             16r00B0 16r00B1 16r00B2 16r00B3 16r00B4 16r00B5 16r00B6 16r00B7
> +             16r00B8 16r00B9 16r061B 16r00BB 16r00BC 16r00BD 16r00BE 16r061F
> +             16r06C1 16r0621 16r0622 16r0623 16r0624 16r0625 16r0626 16r0627
> +             16r0628 16r0629 16r062A 16r062B 16r062C 16r062D 16r062E 16r062F
> +             16r0630 16r0631 16r0632 16r0633 16r0634 16r0635 16r0636 16r00D7
> +             16r0637 16r0638 16r0639 16r063A 16r0640 16r0641 16r0642 16r0643
> +             16r00E0 16r0644 16r00E2 16r0645 16r0646 16r0647 16r0648 16r00E7
> +             16r00E8 16r00E9 16r00EA 16r00EB 16r0649 16r064A 16r00EE 16r00EF
> +             16r064B 16r064C 16r064D 16r064E 16r00F4 16r064F 16r0650 16r00F7
> +             16r0651 16r00F9 16r0652 16r00FB 16r00FC 16r200E 16r200F 16r06D2).!
>
> Item was added:
> + ----- Method: ISO88592TextConverter class>>initialize (in category 'class initialization') -----
> + initialize
> +
> +     super initialize!
>
> Item was added:
> + ----- Method: ISO88597TextConverter class>>initialize (in category 'class initialization') -----
> + initialize
> +
> +     super initialize!
>
> Item was added:
> + ----- Method: Latin1TextConverter class>>initialize (in category 'class initialization') -----
> + initialize
> +
> +     super initialize!
>
> Item was added:
> + Latin1TextConverter subclass: #Latin9TextConverter
> +     instanceVariableNames: ''
> +     classVariableNames: ''
> +     poolDictionaries: ''
> +     category: 'Multilingual-TextConversion'!
> +
> + !Latin9TextConverter commentStamp: 'pre 4/21/2017 11:40' prior: 0!
> + Text converter for ISO 8859-15.  An international encoding also used in Western Europe.!
>
> Item was added:
> + ----- Method: Latin9TextConverter class>>encodingNames (in category 'as yet unclassified') -----
> + encodingNames
> +
> +     ^ #('latin-9' 'latin9' 'iso-8859-15') copy.
> + !
>
> Item was added:
> + ----- Method: Latin9TextConverter class>>initialize (in category 'as yet unclassified') -----
> + initialize
> +
> +     self initializeDecodeTable; initializeEncodeTable; initializeLatin1MapAndEncodings!
>
> Item was added:
> + ----- Method: Latin9TextConverter class>>initializeDecodeTable (in category 'as yet unclassified') -----
> + initializeDecodeTable
> +     super initializeDecodeTable.
> +     decodeTable := (decodeTable copyFrom: 1 to: 128) , #(
> +             16r0080 16r0081 16r0082 16r0083 16r0084 16r0085 16r0086 16r0087
> +             16r0088 16r0089 16r008A 16r008B 16r008C 16r008D 16r008E 16r008F
> +             16r0090 16r0091 16r0092 16r0093 16r0094 16r0095 16r0096 16r0097
> +             16r0098 16r0099 16r009A 16r009B 16r009C 16r009D 16r009E 16r009F
> +             16r00A0 16r00A1 16r00A2 16r00A3 16r20AC 16r00A5 16r0160 16r00A7
> +             16r0161 16r00A9 16r00AA 16r00AB 16r00AC 16r00AD 16r00AE 16r00AF
> +             16r00B0 16r00B1 16r00B2 16r00B3 16r017D 16r00B5 16r00B6 16r00B7
> +             16r017E 16r00B9 16r00BA 16r00BB 16r0152 16r0153 16r0178 16r00BF
> +             16r00C0 16r00C1 16r00C2 16r00C3 16r00C4 16r00C5 16r00C6 16r00C7
> +             16r00C8 16r00C9 16r00CA 16r00CB 16r00CC 16r00CD 16r00CE 16r00CF
> +             16r00D0 16r00D1 16r00D2 16r00D3 16r00D4 16r00D5 16r00D6 16r00D7
> +             16r00D8 16r00D9 16r00DA 16r00DB 16r00DC 16r00DD 16r00DE 16r00DF
> +             16r00E0 16r00E1 16r00E2 16r00E3 16r00E4 16r00E5 16r00E6 16r00E7
> +             16r00E8 16r00E9 16r00EA 16r00EB 16r00EC 16r00ED 16r00EE 16r00EF
> +             16r00F0 16r00F1 16r00F2 16r00F3 16r00F4 16r00F5 16r00F6 16r00F7
> +             16r00F8 16r00F9 16r00FA 16r00FB 16r00FC 16r00FD 16r00FE 16r00FF).!
>
> Item was added:
> + ----- Method: MacRomanTextConverter class>>initialize (in category 'class initialization') -----
> + initialize
> +
> +     super initialize!
>
> Item was changed:
>  ----- Method: ShiftJISTextConverter class>>encodingNames (in category 'utilities') -----
>  encodingNames
>
> +     ^ #('shift-jis' 'shift_jis' 'sjis' 'cp932') copy
> -     ^ #('shift-jis' 'shift_jis' 'sjis') copy
>  !



More information about the Squeak-dev mailing list