Update README supported features list
Move oneof, map, and default value support from unsupported to supported features.
This commit is contained in:
@@ -306,14 +306,13 @@ The goal is to validate roto's implementation against the Proto3 specification.
|
|||||||
- **Messages**: Top-level and nested message definitions.
|
- **Messages**: Top-level and nested message definitions.
|
||||||
- **Enums**: Enum definitions with `from_i32` conversion.
|
- **Enums**: Enum definitions with `from_i32` conversion.
|
||||||
- **Field Labels**: Singular and `repeated` fields.
|
- **Field Labels**: Singular and `repeated` fields.
|
||||||
|
- **Field Presence**: No `has_field()` methods are generated to distinguish between a field being absent and a field being set to its default value.
|
||||||
|
- **`oneof` Fields**: Generates enums that allow checking which field is set.
|
||||||
|
- **`map` Fields**: Iterator over underlying key/value pairs.
|
||||||
|
- **Default Values**: There is an option to select the default value for each field.
|
||||||
|
|
||||||
### Unsupported Features
|
### Unsupported Features
|
||||||
|
|
||||||
- **Default Values**: Missing fields return `RotoError::FieldNotFound` instead of the Proto3 default value (e.g., `0` or `""`).
|
|
||||||
- **Field Presence**: No `has_field()` methods are generated to distinguish between a field being absent and a field being set to its default value.
|
|
||||||
- **`oneof` Fields**: Not currently supported in code generation.
|
|
||||||
- **`map` Fields**: Not currently supported.
|
|
||||||
- **Packed Repeated Fields**: `roto` expects individual tags for all repeated elements; it does not support the packed encoding used for scalar numeric types in Proto3.
|
|
||||||
- **Reserved Fields**: `reserved` statements are ignored.
|
- **Reserved Fields**: `reserved` statements are ignored.
|
||||||
- **Services**: `service` and `rpc` definitions are ignored.
|
- **Services**: `service` and `rpc` definitions are ignored.
|
||||||
- **Options**: Field and message options are ignored.
|
- **Options**: Field and message options are ignored.
|
||||||
|
|||||||
Reference in New Issue
Block a user