class ConstDefaultTest(DataclassMixin): const_bytes: bytes = csfield(cs.Const(b"BMP")) const_int: int = csfield(cs.Const(5, cs.Int8ub)) default_int: int = csfield(cs.Default(cs.Int8ub, 28)) default_lambda: bytes = csfield( cs.Default(cs.Bytes(cs.this.const_int), lambda ctx: bytes(ctx.const_int)))
class Image(DataclassMixin): width: int = csfield(cs.Int8ub) height: int = csfield(cs.Int8ub) pixels: t.Optional[bytes] = csfield( cs.Default( cs.Bytes(cs.this.width * cs.this.height), lambda ctx: bytes(ctx.width * ctx.height), ))
class TestContainer(DataclassMixin): @dataclasses.dataclass class InnerDataclass(DataclassMixin): b: int = csfield(cs.Byte) c: bytes = csfield(cs.Bytes(cs.this._.length)) length: int = csfield(cs.Byte) a: InnerDataclass = csfield(DataclassStruct(InnerDataclass))
class TestContainer(DataclassMixin): a: int = csfield(cs.Int16ub, "This is the documentation of a") b: int = csfield( cs.Int8ub, doc="This is the documentation of b\nwhich is multiline") c: int = csfield( cs.Int8ub, """ This is the documentation of c which is also multiline """, )
class Image(DataclassMixin): signature: t.Optional[bytes] = csfield(cs.Const(b"BMP")) width: int = csfield(cs.Int8ub) height: int = csfield(cs.Int8ub)
class TestContainer(DataclassMixin): a: TestEnum = csfield(cst.TEnum(cs.Int8ub, TestEnum)) b: int = csfield(cs.Int8ub)
class TestContainer(DataclassMixin): a: int = csfield(cs.BitsInteger(7)) b: int = csfield(cs.Bit) c: int = csfield(cs.BitsInteger(8))
class TestTContainer(DataclassMixin): a: t.Optional[int] = csfield(cs.Const(1, cs.Byte)) b: int = csfield(cs.Int8ub)
class TestContainer: a: int = csfield(cs.Int16ub) b: int = csfield(cs.Int8ub)
class InnerDataclass(DataclassMixin): b: int = csfield(cs.Byte) c: bytes = csfield(cs.Bytes(cs.this._.length))
class TestContainer(DataclassMixin): _1: int = csfield(cs.Computed(7)) _2: t.Optional[bytes] = csfield(cs.Const(b"JPEG")) _3: None = csfield(cs.Pass) _4: None = csfield(cs.Terminated)
class TestContainer(DataclassMixin): _1: t.Optional[bytes] = csfield(cs.Const(b"\x00")) _2: None = csfield(cs.Padding(1)) _3: None = csfield(cs.Pass) _4: None = csfield(cs.Terminated)
class TestContainer(DataclassMixin): array_field: t.List[int] = csfield(cs.Array(5, cs.Int8ub))
class TestContainer(DataclassMixin): const_field: t.Optional[bytes] = csfield(cs.Const(b"\x00"))
class Image(DataclassMixin): width: int = csfield(cs.Int8ub) height: int = csfield(cs.Int8ub) pixels: bytes = csfield(cs.Bytes(cs.this.height * cs.this.width))
class TestContainer(DataclassMixin): a: int = csfield(cs.Int16ub) b: int = csfield(cs.Int8ub)
class TestContainer(DataclassMixin): clear: int = csfield(cs.Int8ul) copy: int = csfield(cs.Int8ul) fromkeys: int = csfield(cs.Int8ul) get: int = csfield(cs.Int8ul) items: int = csfield(cs.Int8ul) keys: int = csfield(cs.Int8ul) move_to_end: int = csfield(cs.Int8ul) pop: int = csfield(cs.Int8ul) popitem: int = csfield(cs.Int8ul) search: int = csfield(cs.Int8ul) search_all: int = csfield(cs.Int8ul) setdefault: int = csfield(cs.Int8ul) update: int = csfield(cs.Int8ul) values: int = csfield(cs.Int8ul)