Skip to content

Latest commit

 

History

History
24 lines (16 loc) · 1.5 KB

README.md

File metadata and controls

24 lines (16 loc) · 1.5 KB

ProtoTypes

F# type provider for Google Protocol Buffers

This repository is now part of Froto

Build status:

Windows Linux
Build status Build status

Some links:

  1. Related discussion in FSharpx.Extras repository
  2. FSharpx.Extras branch where attempt to sketch a type provider was made
  3. 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:

  1. Generative type provider with basic support of generating types from single .proto file, serialization and deserialization.
  2. Supports proto2 syntax only. required fields are represented as regular properties, optional fields are mapped to properties of type option<'T>, and repeated fields correspond to list<'T> properties.
  3. Supports embedded messages, and enums. List of supported scalar types includes int32, string, bool and double

As disscussed here, this repository migth eventually become part of Froto.