-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add extensions and tooling to support transient, invariant and non-pe…
…rsistent GS64 options in Tonel
- Loading branch information
Showing
8 changed files
with
79 additions
and
23 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
Extension { #name : 'TonelWriterV3' } | ||
|
||
{ #category : '*Buoy-Development-Tools' } | ||
TonelWriterV3 >> typeClassDefinitionOf: aClassDefinition [ | ||
|
||
| definition | | ||
definition := OrderedDictionary new. | ||
self | ||
at: #name put: aClassDefinition className in: definition; | ||
at: #superclass put: aClassDefinition superclassName in: definition. | ||
aClassDefinition type = #normal ifFalse: [ self at: #type put: aClassDefinition type in: definition ]. | ||
aClassDefinition hasTraitComposition ifTrue: [ definition at: #traits put: aClassDefinition traitCompositionString ]. | ||
aClassDefinition hasClassTraitComposition ifTrue: [ definition at: #classTraits put: aClassDefinition classTraitCompositionString ]. | ||
aClassDefinition instVarNames ifNotEmpty: [ :vars | definition at: #instVars put: vars asArray ]. | ||
(aClassDefinition variables | ||
select: #isClassVariable | ||
thenCollect: #name) ifNotEmpty: [ :vars | definition at: #classVars put: vars asArray ]. | ||
(aClassDefinition variables | ||
select: #isPoolImport | ||
thenCollect: #name) ifNotEmpty: [ :vars | definition at: #pools put: vars asArray ]. | ||
aClassDefinition classInstVarNames ifNotEmpty: [ :vars | definition at: #classInstVars put: vars asArray ]. | ||
self setPackageInfoOf: aClassDefinition in: definition. | ||
"Write gs_options if available as class properties" | ||
(aClassDefinition actualClass propertyAt: #gs_options) ifNotNil: [ :options | definition at: #gs_options put: options ]. | ||
^ self toSTON: definition | ||
] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
Package { #name : #'Buoy-Development-Tools' } | ||
Package { #name : 'Buoy-Development-Tools' } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
19 changes: 10 additions & 9 deletions
19
source/Buoy-Metaprogramming-Pharo-Extensions/PharoPlatform.class.st
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
4 changes: 2 additions & 2 deletions
4
source/Buoy-Metaprogramming-Pharo-Extensions/Symbol.extension.st
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
Package { #name : #'Buoy-Metaprogramming-Pharo-Extensions' } | ||
Package { #name : 'Buoy-Metaprogramming-Pharo-Extensions' } |