質問編集履歴

1

ご指摘の部分の補足情報を追記しました

2020/08/04 23:57

投稿

yuya556223
yuya556223

スコア9

test CHANGED
File without changes
test CHANGED
@@ -129,3 +129,17 @@
129
129
  何かアイディアがある方、こういうの知っているぞという方、是非ご教授願いたく思います。
130
130
 
131
131
  よろしくお願いいたします。
132
+
133
+
134
+
135
+ ### 追記
136
+
137
+ #### なぜ実現したいのか?
138
+
139
+ 独自汎用シリアライザを作るためです(ライブラリを作成している)。多くのシリアライザはネストしたクラスや多次元配列、複雑なgenerics、独自定義クラスなどを自由度高くシリアライズできるライブラリはない(と認識している)ので作ってみようと思った。しかしネストしたクラスの構造を動的に取得する以上、動的に変数を取得する必要があり、(boxingコストを気にしなければ実現は可能なのですが)パフォーマンス向上のために(boxingコストが大きいことがデバッグでわかったので)なるべく不要なboxingを無くしたいと考えた。
140
+
141
+
142
+
143
+ #### unsafeによるアクセス
144
+
145
+ unsafeを用いる場合、ポインタがわかっているのであれば取得できるのだが、「動的にFieldやPropertyのポインタを取得する」方法が思いつかない。