Want to play and break your VM today? Try this useless saturday script just for fun:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | | outStream | outStream := FileStream newFileNamed: 'unary_sends.txt' . Smalltalk allClasses reject: [ : cls | (cls basicCategory = # 'Kernel-Processes' ) or: [ cls = HashedCollection ] ] thenDo: [ : cls | cls class methodDictionary select: [: sel | sel selector isUnary ] thenCollect: [ : cm | | result | result := [ cls perform: cm selector ] on: Error do: [ :ex | (ex messageText includes: 'overridden' ) ifTrue: [ ex pass ] ]. [ result asString ] on: Error do: [ : ex2 | result := ex2 messageText ]. outStream nextPutAll: cls asString; nextPutAll: '>>' ; nextPutAll: cm selector asString; tab; nextPutAll: result asString; cr. ] ] . outStream close. |
0 comentarios:
Publicar un comentario