ProtoTypes
ProtoTypes copied to clipboard
F# type provider for Google Protocol Buffers
ProtoTypes
F# type provider for Google Protocol Buffers
This repository is now part of Froto
Build status:
Windows | Linux |
---|---|
Some links:
- Related discussion in FSharpx.Extras repository
- FSharpx.Extras branch where attempt to sketch a type provider was made
-
Froto - a tool that parses and generates code from
.proto
files. Parsing files and creating ASTs might be re-used in type provider implementation.
Current project state:
- Generative type provider with basic support of generating types from single
.proto
file, serialization and deserialization. - Supports
proto2
syntax only.required
fields are represented as regular properties,optional
fields are mapped to properties of typeoption<'T>
, andrepeated
fields correspond tolist<'T>
properties. - Supports embedded messages, and enums. List of supported scalar types includes
int32
,string
,bool
anddouble
As disscussed here, this repository migth eventually become part of Froto.