Documentation
¶
Index ¶
- Constants
- func NewInvalidArrayDefinitionError(found yamlmeta.Node, hint string) error
- func NewInvalidSchemaError(found yamlmeta.Node, message, hint string) error
- func NewMismatchedTypeError(foundType yamlmeta.TypeWithValues, expectedType yamlmeta.Type) error
- func NewUnexpectedKeyError(found *yamlmeta.MapItem, definition *filepos.Position) error
- type AnySchema
- type ArrayItemType
- func (a *ArrayItemType) AssignTypeTo(typeable yamlmeta.Typeable) (chk yamlmeta.TypeCheck)
- func (a *ArrayItemType) CheckType(node yamlmeta.TypeWithValues) (chk yamlmeta.TypeCheck)
- func (a ArrayItemType) GetValueType() yamlmeta.Type
- func (a ArrayItemType) PositionOfDefinition() *filepos.Position
- func (a ArrayItemType) String() string
- type ArrayType
- func (a *ArrayType) AssignTypeTo(typeable yamlmeta.Typeable) (chk yamlmeta.TypeCheck)
- func (a *ArrayType) CheckType(node yamlmeta.TypeWithValues) (chk yamlmeta.TypeCheck)
- func (a ArrayType) GetValueType() yamlmeta.Type
- func (a ArrayType) PositionOfDefinition() *filepos.Position
- func (a ArrayType) String() string
- type DocumentSchema
- type DocumentType
- func (t *DocumentType) AssignTypeTo(typeable yamlmeta.Typeable) (chk yamlmeta.TypeCheck)
- func (t *DocumentType) CheckType(_ yamlmeta.TypeWithValues) (chk yamlmeta.TypeCheck)
- func (t *DocumentType) GetValueType() yamlmeta.Type
- func (t *DocumentType) PositionOfDefinition() *filepos.Position
- func (t *DocumentType) String() string
- type MapItemType
- func (t *MapItemType) AssignTypeTo(typeable yamlmeta.Typeable) (chk yamlmeta.TypeCheck)
- func (t *MapItemType) CheckType(node yamlmeta.TypeWithValues) (chk yamlmeta.TypeCheck)
- func (t MapItemType) GetValueType() yamlmeta.Type
- func (t MapItemType) IsNullable() bool
- func (t MapItemType) PositionOfDefinition() *filepos.Position
- func (t MapItemType) String() string
- type MapType
- func (m *MapType) AllowsKey(key interface{}) bool
- func (m *MapType) AssignTypeTo(typeable yamlmeta.Typeable) (chk yamlmeta.TypeCheck)
- func (m *MapType) CheckType(node yamlmeta.TypeWithValues) (chk yamlmeta.TypeCheck)
- func (m MapType) GetValueType() yamlmeta.Type
- func (m MapType) PositionOfDefinition() *filepos.Position
- func (m MapType) String() string
- type NullSchema
- type ScalarType
- func (m *ScalarType) AssignTypeTo(typeable yamlmeta.Typeable) yamlmeta.TypeCheck
- func (m *ScalarType) CheckType(node yamlmeta.TypeWithValues) (chk yamlmeta.TypeCheck)
- func (m ScalarType) GetValueType() yamlmeta.Type
- func (m ScalarType) PositionOfDefinition() *filepos.Position
- func (m ScalarType) String() string
- type TypeAnnotations
Constants ¶
View Source
const (
AnnotationSchemaNullable structmeta.AnnotationName = "schema/nullable"
)
Variables ¶
This section is empty.
Functions ¶
func NewInvalidArrayDefinitionError ¶ added in v0.32.0
func NewInvalidSchemaError ¶ added in v0.32.0
func NewMismatchedTypeError ¶ added in v0.32.0
func NewMismatchedTypeError(foundType yamlmeta.TypeWithValues, expectedType yamlmeta.Type) error
Types ¶
type AnySchema ¶
type AnySchema struct {
}
func (*AnySchema) AssignType ¶
func (*AnySchema) DefaultDataValues ¶ added in v0.32.0
func (*AnySchema) ValidateWithValues ¶ added in v0.32.0
type ArrayItemType ¶
func NewArrayItemType ¶
func NewArrayItemType(item *yamlmeta.ArrayItem) (*ArrayItemType, error)
func (*ArrayItemType) AssignTypeTo ¶
func (a *ArrayItemType) AssignTypeTo(typeable yamlmeta.Typeable) (chk yamlmeta.TypeCheck)
func (*ArrayItemType) CheckType ¶
func (a *ArrayItemType) CheckType(node yamlmeta.TypeWithValues) (chk yamlmeta.TypeCheck)
func (ArrayItemType) GetValueType ¶
func (a ArrayItemType) GetValueType() yamlmeta.Type
func (ArrayItemType) PositionOfDefinition ¶ added in v0.32.0
func (a ArrayItemType) PositionOfDefinition() *filepos.Position
func (ArrayItemType) String ¶ added in v0.32.0
func (a ArrayItemType) String() string
type ArrayType ¶
func (*ArrayType) AssignTypeTo ¶
func (*ArrayType) CheckType ¶
func (a *ArrayType) CheckType(node yamlmeta.TypeWithValues) (chk yamlmeta.TypeCheck)
func (ArrayType) GetValueType ¶
func (ArrayType) PositionOfDefinition ¶ added in v0.32.0
type DocumentSchema ¶
type DocumentSchema struct {
Name string
Source *yamlmeta.Document
Allowed *DocumentType
// contains filtered or unexported fields
}
func NewDocumentSchema ¶
func NewDocumentSchema(doc *yamlmeta.Document) (*DocumentSchema, error)
func (*DocumentSchema) AssignType ¶
func (s *DocumentSchema) AssignType(typeable yamlmeta.Typeable) yamlmeta.TypeCheck
func (*DocumentSchema) DefaultDataValues ¶ added in v0.32.0
func (s *DocumentSchema) DefaultDataValues() *yamlmeta.Document
func (*DocumentSchema) ValidateWithValues ¶ added in v0.32.0
func (s *DocumentSchema) ValidateWithValues(valuesFilesCount int) error
type DocumentType ¶
type DocumentType struct {
Source *yamlmeta.Document
ValueType yamlmeta.Type // typically one of: MapType, ArrayType, ScalarType
Position *filepos.Position
}
func NewDocumentType ¶ added in v0.32.0
func NewDocumentType(doc *yamlmeta.Document) (*DocumentType, error)
func (*DocumentType) AssignTypeTo ¶
func (t *DocumentType) AssignTypeTo(typeable yamlmeta.Typeable) (chk yamlmeta.TypeCheck)
func (*DocumentType) CheckType ¶
func (t *DocumentType) CheckType(_ yamlmeta.TypeWithValues) (chk yamlmeta.TypeCheck)
func (*DocumentType) GetValueType ¶
func (t *DocumentType) GetValueType() yamlmeta.Type
func (*DocumentType) PositionOfDefinition ¶ added in v0.32.0
func (t *DocumentType) PositionOfDefinition() *filepos.Position
func (*DocumentType) String ¶ added in v0.32.0
func (t *DocumentType) String() string
type MapItemType ¶
type MapItemType struct {
Key interface{} // usually a string
ValueType yamlmeta.Type
DefaultValue interface{}
Position *filepos.Position
Annotations TypeAnnotations
}
func NewMapItemType ¶
func NewMapItemType(item *yamlmeta.MapItem) (*MapItemType, error)
func (*MapItemType) AssignTypeTo ¶
func (t *MapItemType) AssignTypeTo(typeable yamlmeta.Typeable) (chk yamlmeta.TypeCheck)
func (*MapItemType) CheckType ¶
func (t *MapItemType) CheckType(node yamlmeta.TypeWithValues) (chk yamlmeta.TypeCheck)
func (MapItemType) GetValueType ¶
func (t MapItemType) GetValueType() yamlmeta.Type
func (MapItemType) IsNullable ¶
func (t MapItemType) IsNullable() bool
func (MapItemType) PositionOfDefinition ¶ added in v0.32.0
func (t MapItemType) PositionOfDefinition() *filepos.Position
func (MapItemType) String ¶ added in v0.32.0
func (t MapItemType) String() string
type MapType ¶
type MapType struct {
Items []*MapItemType
Position *filepos.Position
}
func (*MapType) AssignTypeTo ¶
func (*MapType) CheckType ¶
func (m *MapType) CheckType(node yamlmeta.TypeWithValues) (chk yamlmeta.TypeCheck)
func (MapType) GetValueType ¶
func (MapType) PositionOfDefinition ¶ added in v0.32.0
type NullSchema ¶ added in v0.32.0
type NullSchema struct {
}
func (NullSchema) AssignType ¶ added in v0.32.0
func (n NullSchema) AssignType(typeable yamlmeta.Typeable) yamlmeta.TypeCheck
func (NullSchema) DefaultDataValues ¶ added in v0.32.0
func (n NullSchema) DefaultDataValues() *yamlmeta.Document
func (NullSchema) ValidateWithValues ¶ added in v0.32.0
func (n NullSchema) ValidateWithValues(valuesFilesCount int) error
type ScalarType ¶
func (*ScalarType) AssignTypeTo ¶
func (m *ScalarType) AssignTypeTo(typeable yamlmeta.Typeable) yamlmeta.TypeCheck
func (*ScalarType) CheckType ¶
func (m *ScalarType) CheckType(node yamlmeta.TypeWithValues) (chk yamlmeta.TypeCheck)
func (ScalarType) GetValueType ¶
func (m ScalarType) GetValueType() yamlmeta.Type
func (ScalarType) PositionOfDefinition ¶ added in v0.32.0
func (m ScalarType) PositionOfDefinition() *filepos.Position
func (ScalarType) String ¶ added in v0.32.0
func (m ScalarType) String() string
type TypeAnnotations ¶
type TypeAnnotations map[structmeta.AnnotationName]interface{}
Click to show internal directories.
Click to hide internal directories.