- Lisp Scheme Part39
836 :デフォルトの名無しさん[sage]:2015/02/25(水) 07:31:20.02 ID:L9ZJ97nO - >>835
質問の仕方が悪くてすみません ここでの特定のクラスというのはメタクラスのインスタンスとしてのクラス(つまり通常の文脈でのクラス)なので、 (defmethod make-instance :before ((class 特定のクラス) &rest initargs) では引っかからないです >>818で個人的に問題だと感じているのは、基本的にすべてのクラスはstandard-classのインスタンスとして作られてるので、 1. すべてのインスタンス生成時の処理に割り込んでしまうことと(大体6倍くらい遅くなる)、 2. 他にmake-instance :aroundを書き換えるようなライブラリなり何かと競合する点 だったのですが、とりあえず1.は適当なメタクラスを用意してcloser-mopでdefclassに介入することで解決できたので大丈夫です 今後はstackoverflowを検討することにします
|
- Lisp Scheme Part39
837 :デフォルトの名無しさん[sage]:2015/02/25(水) 07:34:41.96 ID:L9ZJ97nO - > すべてのクラスはstandard-classの...
すべてのクラスは間違いです 普段使うようなクラスと読み替えてください、すんません
|
- Lisp Scheme Part39
839 :デフォルトの名無しさん[sage]:2015/02/25(水) 08:09:11.12 ID:L9ZJ97nO - >>838
metaclassでやるとdefclass時にいちいち指定しないといけないのが嫌だったので、>>818みたいなことになってました c2mop:ensure-class-using-classをいじれば > 逆にstandard-classと同じように書け るようになったので、今度はこの部分の競合がちょっと心配ではあります stackoverflowはいいところそうなのでそのうち移ろうと思います どうもありがとうございました
|