# Supported Features

## proto3
### Scalar Value Types

The mapping type is same as the official implementation.

| .proto Type | Support |
|-------------|---------|
| double      | ✅       |
| float       | ✅       |
| int32       | ✅       |
| int64       | ✅       |
| uint32      | ✅       |
| uint64      | ✅       |
| sint32      | ✅       |
| sint64      | ✅       |
| fixed32     | ✅       |
| fixed64     | ✅       |
| sfixed32    | ✅       |
| sfixed64    | ✅       |
| bool        | ✅       |
| string      | ✅       |
| bytes       | ✅       |

### Advance
| .proto Type  | Support |
|--------------|---------|
| Groups       | ❌       |
| Oneof        | ✅       |
| Maps         | ✅       |
| JSON Mapping | ❌       |
| Reflection   | ❌       |

## proto2
### Scalar Value Types

The mapping type is same as the official implementation.

| .proto Type | Support |
|-------------|---------|
| double      | ✅       |
| float       | ✅       |
| int32       | ✅       |
| int64       | ✅       |
| uint32      | ✅       |
| uint64      | ✅       |
| sint32      | ✅       |
| sint64      | ✅       |
| fixed32     | ✅       |
| fixed64     | ✅       |
| sfixed32    | ✅       |
| sfixed64    | ✅       |
| bool        | ✅       |
| string      | ✅       |
| bytes       | ✅       |


### Advance
| .proto Type  | Support |
|--------------|---------|
| Groups       | ❌       |
| Extensions   | ❌       |
| Oneof        | ✅       |
| Maps         | ✅       |
| JSON Mapping | ❌       |
| Reflection   | ❌       |
