Ergonomic layer over the binary-object codec (see crate::protocol::binary):
the WriteBinary/ReadBinary traits for whole objects, the
FieldWrite/FieldRead traits for individual fields, and newtypes for
Ignite wire types with no direct Rust equivalent (CHAR, DATE, TIME,
TIMESTAMP).
Per-entry lifetime policy: the time-to-live applied when an entry is created,
updated, and accessed. Attach it to a cache handle with
crate::IgniteCache::with_expiry_policy.
Cache ID is the Java hash of the exact cache name, case-sensitive —
mirrors Ignite server-side CU.cacheId(String), which is literally
cacheName.hashCode() with no case transformation.