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/fury-site.git
commit f872a775c6f5c031008453b4f4ee214e6f3cbe53 Author: chaokunyang <[email protected]> AuthorDate: Mon Dec 30 13:52:47 2024 +0000 🔄 synced local 'docs/guide/' with remote 'docs/guide/' --- docs/guide/xlang_serialization_guide.md | 6 +-- docs/guide/xlang_type_mapping.md | 82 +++++++++++++++++++-------------- 2 files changed, 50 insertions(+), 38 deletions(-) diff --git a/docs/guide/xlang_serialization_guide.md b/docs/guide/xlang_serialization_guide.md index 59d5f3f9..60fb7290 100644 --- a/docs/guide/xlang_serialization_guide.md +++ b/docs/guide/xlang_serialization_guide.md @@ -225,8 +225,8 @@ class SomeClass2: if __name__ == "__main__": f = pyfury.Fury() - f.register_class(SomeClass1, type_tag="example.SomeClass1") - f.register_class(SomeClass2, type_tag="example.SomeClass2") + f.register_type(SomeClass1, typename="example.SomeClass1") + f.register_type(SomeClass2, typename="example.SomeClass2") obj1 = SomeClass1(f1=True, f2={-1: 2}) obj = SomeClass2( f1=obj1, @@ -444,7 +444,7 @@ class SomeClass: f3: Dict[str, str] fury = pyfury.Fury(ref_tracking=True) -fury.register_class(SomeClass, type_tag="example.SomeClass") +fury.register_type(SomeClass, typename="example.SomeClass") obj = SomeClass() obj.f2 = {"k1": "v1", "k2": "v2"} obj.f1, obj.f3 = obj, obj.f2 diff --git a/docs/guide/xlang_type_mapping.md b/docs/guide/xlang_type_mapping.md index 43c7e3c9..13a6d05c 100644 --- a/docs/guide/xlang_type_mapping.md +++ b/docs/guide/xlang_type_mapping.md @@ -12,41 +12,53 @@ Note: ## Type Mapping -| Fury Type | Fury Type ID | Java | Python | Javascript | C++ | Golang | Rust | -|--------------------|--------------|-----------------|----------------------|-----------------|--------------------------------|------------------|------------------| -| bool | 1 | bool/Boolean | bool | Boolean | bool | bool | bool | -| int8 | 2 | byte/Byte | int/pyfury.Int8 | Type.int8() | int8_t | int8 | i8 | -| int16 | 3 | short/Short | int/pyfury.Int16 | Type.int16() | int16_t | int16 | i6 | -| int32 | 4 | int/Integer | int/pyfury.Int32 | Type.int32() | int32_t | int32 | i32 | -| var_int32 | 5 | int/Integer | int/pyfury.VarInt32 | Type.varint32() | fury::varint32_t | fury.varint32 | fury::varint32 | -| int64 | 6 | long/Long | int/pyfury.Int64 | Type.int64() | int64_t | int64 | i64 | -| var_int64 | 7 | long/Long | int/pyfury.VarInt64 | Type.varint64() | fury::varint64_t | fury.varint64 | fury::varint64 | -| sli_int64 | 8 | long/Long | int/pyfury.SliInt64 | Type.sliint64() | fury::sliint64_t | fury.sliint64 | fury::sliint64 | -| float16 | 9 | float/Float | float/pyfury.Float16 | Type.float16() | fury::float16_t | fury.float16 | fury::f16 | -| float32 | 10 | float/Float | float/pyfury.Float32 | Type.float32() | float | float32 | f32 | -| float64 | 11 | double/Double | float/pyfury.Float64 | Type.float64() | double | float64 | f64 | -| string | 12 | String | str | String | string | string | String/str | -| enum | 13 | Enum subclasses | enum subclasses | / | enum | / | enum | -| list | 14 | List/Collection | list/tuple | array | vector | slice | Vec | -| set | 15 | Set | set | / | set | fury.Set | Set | -| map | 16 | Map | dict | Map | unordered_map | map | HashMap | -| duration | 17 | Duration | timedelta | Number | duration | Duration | Duration | -| timestamp | 18 | Instant | datetime | Number | std::chrono::nanoseconds | Time | DateTime | -| decimal | 19 | BigDecimal | Decimal | bigint | / | / | / | -| binary | 20 | byte[] | bytes | / | `uint8_t[n]/vector<T>` | `[n]uint8/[]T` | `Vec<uint8_t>` | -| array | 21 | array | np.ndarray | / | / | array/slice | Vec | -| bool_array | 22 | bool[] | ndarray(np.bool_) | / | `bool[n]` | `[n]bool/[]T` | `Vec<bool>` | -| int8_array | 23 | byte[] | ndarray(int8) | / | `int8_t[n]/vector<T>` | `[n]int8/[]T` | `Vec<i18>` | -| int16_array | 24 | short[] | ndarray(int16) | / | `int16_t[n]/vector<T>` | `[n]int16/[]T` | `Vec<i16>` | -| int32_array | 25 | int[] | ndarray(int32) | / | `int32_t[n]/vector<T>` | `[n]int32/[]T` | `Vec<i32>` | -| int64_array | 26 | long[] | ndarray(int64) | / | `int64_t[n]/vector<T>` | `[n]int64/[]T` | `Vec<i64>` | -| float16_array | 27 | float[] | ndarray(float16) | / | `fury::float16_t[n]/vector<T>` | `[n]float16/[]T` | `Vec<fury::f16>` | -| float32_array | 28 | float[] | ndarray(float32) | / | `float[n]/vector<T>` | `[n]float32/[]T` | `Vec<f32>` | -| float64_array | 29 | double[] | ndarray(float64) | / | `double[n]/vector<T>` | `[n]float64/[]T` | `Vec<f64>` | -| tensor | 30 | / | / | / | / | / | / | -| sparse tensor | 31 | / | / | / | / | / | / | -| arrow record batch | 32 | / | / | / | / | / | / | -| arrow table | 33 | / | / | / | / | / | / | +| Fury Type | Fury Type ID | Java | Python | Javascript | C++ | Golang | Rust | +|-------------------------------------|--------------|-----------------|-----------------------------------|-----------------|--------------------------------|------------------|------------------| +| bool | 1 | bool/Boolean | bool | Boolean | bool | bool | bool | +| int8 | 2 | byte/Byte | int/pyfury.Int8 | Type.int8() | int8_t | int8 | i8 | +| int16 | 3 | short/Short | int/pyfury.Int16 | Type.int16() | int16_t | int16 | i6 | +| int32 | 4 | int/Integer | int/pyfury.Int32 | Type.int32() | int32_t | int32 | i32 | +| var_int32 | 5 | int/Integer | int/pyfury.VarInt32 | Type.varint32() | fury::varint32_t | fury.varint32 | fury::varint32 | +| int64 | 6 | long/Long | int/pyfury.Int64 | Type.int64() | int64_t | int64 | i64 | +| var_int64 | 7 | long/Long | int/pyfury.VarInt64 | Type.varint64() | fury::varint64_t | fury.varint64 | fury::varint64 | +| sli_int64 | 8 | long/Long | int/pyfury.SliInt64 | Type.sliint64() | fury::sliint64_t | fury.sliint64 | fury::sliint64 | +| float16 | 9 | float/Float | float/pyfury.Float16 | Type.float16() | fury::float16_t | fury.float16 | fury::f16 | +| float32 | 10 | float/Float | float/pyfury.Float32 | Type.float32() | float | float32 | f32 | +| float64 | 11 | double/Double | float/pyfury.Float64 | Type.float64() | double | float64 | f64 | +| string | 12 | String | str | String | string | string | String/str | +| enum | 13 | Enum subclasses | enum subclasses | / | enum | / | enum | +| named_enum | 14 | Enum subclasses | enum subclasses | / | enum | / | enum | +| struct | 15 | pojo/record | data class / type with type hints | object | struct/class | struct | struct | +| polymorphic_struct | 16 | pojo/record | data class / type with type hints | object | struct/class | struct | struct | +| compatible_struct | 17 | pojo/record | data class / type with type hints | object | struct/class | struct | struct | +| polymorphic_compatible_struct | 18 | pojo/record | data class / type with type hints | object | struct/class | struct | struct | +| named_struct | 19 | pojo/record | data class / type with type hints | object | struct/class | struct | struct | +| named_polymorphic_struct | 20 | pojo/record | data class / type with type hints | object | struct/class | struct | struct | +| named_compatible_struct | 21 | pojo/record | data class / type with type hints | object | struct/class | struct | struct | +| named_polymorphic_compatible_struct | 22 | pojo/record | data class / type with type hints | object | struct/class | struct | struct | +| ext | 23 | pojo/record | data class / type with type hints | object | struct/class | struct | struct | +| polymorphic_ext | 24 | pojo/record | data class / type with type hints | object | struct/class | struct | struct | +| named_ext | 25 | pojo/record | data class / type with type hints | object | struct/class | struct | struct | +| named_polymorphic_ext | 26 | pojo/record | data class / type with type hints | object | struct/class | struct | struct | +| list | 27 | List/Collection | list/tuple | array | vector | slice | Vec | +| set | 28 | Set | set | / | set | fury.Set | Set | +| map | 29 | Map | dict | Map | unordered_map | map | HashMap | +| duration | 30 | Duration | timedelta | Number | duration | Duration | Duration | +| timestamp | 31 | Instant | datetime | Number | std::chrono::nanoseconds | Time | DateTime | +| local_date | 32 | Date | datetime | Number | std::chrono::nanoseconds | Time | DateTime | +| decimal | 33 | BigDecimal | Decimal | bigint | / | / | / | +| binary | 34 | byte[] | bytes | / | `uint8_t[n]/vector<T>` | `[n]uint8/[]T` | `Vec<uint8_t>` | +| array | 35 | array | np.ndarray | / | / | array/slice | Vec | +| bool_array | 36 | bool[] | ndarray(np.bool_) | / | `bool[n]` | `[n]bool/[]T` | `Vec<bool>` | +| int8_array | 37 | byte[] | ndarray(int8) | / | `int8_t[n]/vector<T>` | `[n]int8/[]T` | `Vec<i18>` | +| int16_array | 38 | short[] | ndarray(int16) | / | `int16_t[n]/vector<T>` | `[n]int16/[]T` | `Vec<i16>` | +| int32_array | 39 | int[] | ndarray(int32) | / | `int32_t[n]/vector<T>` | `[n]int32/[]T` | `Vec<i32>` | +| int64_array | 40 | long[] | ndarray(int64) | / | `int64_t[n]/vector<T>` | `[n]int64/[]T` | `Vec<i64>` | +| float16_array | 41 | float[] | ndarray(float16) | / | `fury::float16_t[n]/vector<T>` | `[n]float16/[]T` | `Vec<fury::f16>` | +| float32_array | 42 | float[] | ndarray(float32) | / | `float[n]/vector<T>` | `[n]float32/[]T` | `Vec<f32>` | +| float64_array | 43 | double[] | ndarray(float64) | / | `double[n]/vector<T>` | `[n]float64/[]T` | `Vec<f64>` | +| arrow record batch | 44 | / | / | / | / | / | / | +| arrow table | 45 | / | / | / | / | / | / | ## Type info(not implemented currently) --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
