Safe Haskell | None |
---|---|
Language | Haskell2010 |
This module provides types and functions to generate .proto files.
Synopsis
- renderDotProto :: RenderingOptions -> DotProto -> Doc
- defRenderingOptions :: RenderingOptions
- defSelectorName :: DotProtoIdentifier -> DotProtoIdentifier -> FieldNumber -> Doc
- defEnumMemberName :: DotProtoIdentifier -> DotProtoIdentifier -> Doc
- packageFromDefs :: String -> [DotProtoDefinition] -> DotProto
- toProtoFile :: RenderingOptions -> DotProto -> String
- toProtoFileDef :: DotProto -> String
- data RenderingOptions = RenderingOptions {}
- class Pretty a where
- pPrintPrec :: PrettyLevel -> Rational -> a -> Doc
- pPrint :: a -> Doc
- pPrintList :: PrettyLevel -> [a] -> Doc
Documentation
renderDotProto :: RenderingOptions -> DotProto -> Doc Source #
Traverses a DotProto AST and generates a .proto file from it
defRenderingOptions :: RenderingOptions Source #
Default rendering options.
defSelectorName :: DotProtoIdentifier -> DotProtoIdentifier -> FieldNumber -> Doc Source #
The default choice of field name for a selector.
defEnumMemberName :: DotProtoIdentifier -> DotProtoIdentifier -> Doc Source #
The default choice of enum member name for an enum
packageFromDefs :: String -> [DotProtoDefinition] -> DotProto Source #
toProtoFile :: RenderingOptions -> DotProto -> String Source #
Render protobufs metadata as a .proto file stringy
toProtoFileDef :: DotProto -> String Source #
Render protobufs metadata as a .proto file string, using the default rendering options.
data RenderingOptions Source #
Options for rendering a .proto
file.
RenderingOptions | |
|
Pretty printing class. The precedence level is used in a similar way as in
the Show
class. Minimal complete definition is either pPrintPrec
or
pPrint
.
pPrintPrec :: PrettyLevel -> Rational -> a -> Doc #
pPrintList :: PrettyLevel -> [a] -> Doc #