This is an automated email from the ASF dual-hosted git repository.
chaokunyang pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/fory-site.git
The following commit(s) were added to refs/heads/main by this push:
new 39cf02fbd 🔄 synced local 'docs/specification/' with remote
'docs/specification/'
39cf02fbd is described below
commit 39cf02fbd134af8267d08c5525d04ca2ebdf4335
Author: chaokunyang <[email protected]>
AuthorDate: Tue Jan 13 08:52:19 2026 +0000
🔄 synced local 'docs/specification/' with remote 'docs/specification/'
---
docs/specification/xlang_serialization_spec.md | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/docs/specification/xlang_serialization_spec.md
b/docs/specification/xlang_serialization_spec.md
index ef653cd96..49084975d 100644
--- a/docs/specification/xlang_serialization_spec.md
+++ b/docs/specification/xlang_serialization_spec.md
@@ -243,8 +243,7 @@ Here is the overall format:
| fory header | object ref meta | object type meta | object value data |
```
-The data are serialized using little endian byte order overall. If bytes swap
is costly for some object,
-Fory will write the byte order for that object into the data instead of
converting it to little endian.
+The data are serialized using little endian byte order for all types.
## Fory header
@@ -261,18 +260,19 @@ Detailed byte layout:
```
Byte 0: Bitmap flags
- Bit 0: null flag (0x01)
- - Bit 1: endian flag (0x02)
- - Bit 2: xlang flag (0x04)
- - Bit 3: oob flag (0x08)
- - Bits 4-7: reserved
+ - Bit 1: xlang flag (0x02)
+ - Bit 2: oob flag (0x04)
+ - Bits 3-7: reserved
Byte 1: Language ID (only present when xlang flag is set)
Byte 2-5: Meta start offset (only present when meta share mode is enabled)
```
-- **null flag** (bit 0): 1 when object is null, 0 otherwise. If an object is
null, only this flag and endian flag are set.
-- **endian flag** (bit 1): 1 when data is encoded by little endian, 0 for big
endian. Modern implementations always use little endian.
-- **xlang flag** (bit 2): 1 when serialization uses Fory xlang format, 0 when
serialization uses Fory language-native format.
-- **oob flag** (bit 3): 1 when out-of-band serialization is enabled
(BufferCallback is not null), 0 otherwise.
+- **null flag** (bit 0): 1 when object is null, 0 otherwise. If an object is
null, only this flag is set.
+- **xlang flag** (bit 1): 1 when serialization uses Fory xlang format, 0 when
serialization uses Fory language-native format.
+- **oob flag** (bit 2): 1 when out-of-band serialization is enabled
(BufferCallback is not null), 0 otherwise.
+
+All data is encoded in little-endian format.
+
- **language**: 1 byte indicating the source language. This allows
deserializers to optimize for specific language characteristics.
### Language IDs
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]