Entry
One node in a bencoded hierarchy: the owning variant type, the port of libtorrent's entry (entry.hpp). Use this to build structures (a torrent file, a DHT message, resume data) and hand them to Bencode.encode.
A bencode string is a raw byte buffer, not text (BEP 3). The pieces field of a torrent, for example, is a run of concatenated 20-byte SHA-1 hashes. So Str holds a ByteArray. The text and str helpers cover the common case of UTF-8 keys and values.
Dictionary keys are byte strings too, but in practice always ASCII. Dict keeps them as String; Bencode.encode sorts them by raw byte order (required by the spec, and required for info-hashes to match other clients).