MG
Size: a a a
MG
MG
(s/def ::frame (s/cat ::version ::payload))
(s/def ::version byte?) (s/def ::payload (s/* byte?))
, например, и в зависимости от прочитанной ::version
выбирать спеку для парсинга ::payload
.MG
MG
IP
MG
IP
(def defined-hero
(codec/cond-codec
:expirience? codec/byte->bool
:expirience #(when (:expirience? %1) :int-le)
:secondary-skills? codec/byte->bool
:secondary-skills #(when (:secondary-skills? %1) (b/repeated secondary-skill :prefix :int-le)))
IG
IG
MG
MG
MG
MG
MG
MG
IG
MG
VL