如何将字典映射到特定类的对象?

时间:2016-02-02 14:51:44

标签: dictionary mapping smalltalk pharo

我有一个给定的字典,并希望将其映射到特定类的对象 字典的所有键都应映射到对象的同名实例变量。

我想这是一个常见的程序?完成它的常用方法是什么?

2 个答案:

答案 0 :(得分:6)

考虑做这样的事情:

dict := { #x -> 5 . #y -> 6 } asDictionary. "dictionary as you described"
basicObj := Point basicNew. "basic instance of your object"

dict keysAndValuesDo: [ :key :val |
    basicObj instVarNamed: key put: val ].

^ basicObj

答案 1 :(得分:3)

这确实是一种常见的模式。它通常用于序列化和物化。你可以在中找到一个实现 STON