Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // ErrUndefinedFieldRequiredMode if returned when `field_required_mode` is invalid ErrUndefinedFieldRequiredMode = errors.New("`field_required_mode` is invalid") )
Functions ¶
This section is empty.
Types ¶
type Converter ¶
type Converter struct { Flags ConverterFlags // contains filtered or unexported fields }
Converter is everything you need to convert protos to JSONSchemas:
func (*Converter) ConvertFrom ¶
ConvertFrom tells the convert to work on the given input:
type ConverterFlags ¶
type ConverterFlags struct { AllFieldsRequired bool AllowNullValues bool DisallowAdditionalProperties bool DisallowBigIntsAsStrings bool EnforceOneOf bool EnumsAsConstants bool EnumsAsStringsOnly bool EnumsTrimPrefix bool KeepNewLinesInDescription bool PrefixSchemaFilesWithPackage bool UseJSONFieldnamesOnly bool UseProtoAndJSONFieldNames bool FieldRequiredMode FieldRequiredMode DisallowReferences bool NonRequiredNullable bool UseTypesArray bool DisallowEmbeddedEnums bool }
ConverterFlags control the behaviour of the converter:
func DefaultConverterFlags ¶
func DefaultConverterFlags() ConverterFlags
DefaultConverterFlags returns default converter flags
func (ConverterFlags) ValidateFieldRequiredMode ¶
func (f ConverterFlags) ValidateFieldRequiredMode(value string) error
type Definitions ¶ added in v0.5.0
Definitions defines a group of types by key
type FieldRequiredMode ¶
type FieldRequiredMode string
FieldRequiredMode defines the way required fields are driven
const ( // FieldRequiredModeProto ensures required fields are driven by Proto definitions FieldRequiredModeProto FieldRequiredMode = "proto" // FieldRequiredModeFieldOptions ensures required fields are driven by Field Custom Options FieldRequiredModeFieldOptions FieldRequiredMode = "field_options" )
func (FieldRequiredMode) Is ¶
func (m FieldRequiredMode) Is(modeProto FieldRequiredMode) bool
Is returns true if field required mode is equals
type ProtoPackage ¶
type ProtoPackage struct {
// contains filtered or unexported fields
}
ProtoPackage describes a package of Protobuf, which is an container of message types.
type Schema ¶ added in v0.5.0
Schema defines a JSON schema
func (*Schema) MarshalJSON ¶ added in v0.5.0
type Type ¶ added in v0.5.0
type Type struct { jsonschema.Type TypesArray []string `json:"type,omitempty"` }
Type defines a JSON schema type
func (*Type) MarshalJSON ¶ added in v0.5.0
Click to show internal directories.
Click to hide internal directories.