type LargeFlatByteList struct { indexes List parts List } type ByteLinkArray struct { indexes List parts List } type BytesUnion union { | Bytes "bytes" | &Bytes "bytesLink" | ByteLinkArray "byteLinkArray" | LargeFlatByteList "lfbl" } representation keyed type DataLayout struct { bytes BytesUnion size Int } type Files union { | Map "map" | Hamt "hamt" } representation keyed type FileUnion union { | File "file" | &File "fileLink" } representation keyed type Directory struct { name optional String size optional Int files Files } advanced DataLayout type Data bytes representation advanced DataLayout type Permissions struct { uid Int gid Int posix Int # The standard 0777 bitpacking masks sticky Bool (implicit "false") setuid Bool (implicit "false") setgid Bool (implicit "false") } type Attributes struct { mtime optional Int atime optional Int ctime optional Int mtime64 optional Int atime64 optional Int ctime64 optional Int permissions optional Permissions devMajor optional Int devMinor optional Int } type File struct { name optional String data optional Data size optional Int }