1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
//! `asynUInt64` / `asynUInt64Array` interface traits — **Rust extension**.
//!
//! **Not in upstream asyn C.** As of 2026-05 the upstream tree only
//! ships `asynInt64.h` / `asynInt64Array.h`; the proposed `asynUInt64`
//! addition (upstream issue #231, "asynUInt64 / asynUInt64Array
//! support") is unmerged. `find ~/codes/epics-modules/asyn -iname
//! 'asynUInt64*'` returns nothing.
//!
//! This module exists as a forward-looking Rust extension so drivers
//! that talk to hardware with unsigned 64-bit registers (transfer
//! counters, tick clocks, large bitmaps) avoid casting through the
//! signed `Int64` path and the resulting sign-bit truncation. Use
//! these traits when you control both sides of the wire. **Do not
//! advertise these traits to a C asyn client** — there is no
//! corresponding upstream interface ID, so any client looking up
//! `asynUInt64` against a real C `asynManager` will not find it.
//!
//! Migration plan: if upstream merges issue #231, re-align this
//! module's trait shape to the merged header.
use crateAsynResult;
use crateAsynUser;
/// Unsigned 64-bit integer I/O — Rust extension. See module docs.
/// Unsigned 64-bit integer array I/O — Rust extension. See module docs.