blog.bouzuya.net

2026-02-04 serde-firestore-value に FieldReference を追加している

bouzuya/serde-firestore-value のアップデートをしようとしている。

2026-01-17 に書いたとおり ValueType に FieldReferenceValue と FunctionValue と PipelineValue が追加されている。このあたりのドキュメントが追加されていたので、「じゃあ対応しようか」といったところ。

とりあえず FieldReferenceValue を追加した。

/// * Not allowed to be used when writing documents. というコメントを受けて Serialize はなくていいかと思いこんでいたのだけど、ドキュメントを書くときに使えないだけでクエリには使えるってことかも。まだこれらの機能を試しても使ってもいないので、よく分かっていないのだけど、クエリに関数を指定できるっぽいのに (serialize する) リクエストにこれが使えないのでは困りそうだから。

あとは FunctionValue も考えていたのだけど、 Value がでてくるのでどう扱うべきか迷っている。 Vec<Value> が出てくるけど、さすがに Functon の args がすべて同じ型とは思えない。任意の型の値の seq なんだろうなと。じゃあ Value を外から取るのか……? そこをなんとかするための crate なのに……? みたいな状態。 vec![to_value(&x)] してくれってだけではあるんだけど……。


今日のコミット。