Versions in this module Expand all Collapse all v0 v0.2.0 May 9, 2024 Changes in this version + func UserTypeNamesFromEachTypeConstraint(node ischema.Node) []string + func UserTypeNamesFromTypeConstraint(node ischema.Node) []string + func UserTypeNamesFromTypesListConstraint(node ischema.Node) []string type JSchema + UserTypeCollection map[string]schema.Schema + UserTypesNamesUsed *StringSet + func FromRSchema(s *regex.RSchema) (*JSchema, error) v0.1.1 Nov 16, 2022 Changes in this version + type JSchema struct + ASTNode schema.ASTNode + AreKeysOptionalByDefault bool + CompileOnce sync.ErrOnce + File *fs.File + Inner *ischema.ISchema + LenOnce sync.ErrOnceWithValue[uint] + LoadOnce sync.ErrOnce + Rules map[string]schema.Rule + UsedUserTypes_ *StringSet + func FromFile(f *fs.File, oo ...Option) *JSchema + func New(name string, content T, oo ...Option) *JSchema + func (s *JSchema) AddRule(n string, r schema.Rule) error + func (s *JSchema) AddType(name string, sc schema.Schema) (err error) + func (s *JSchema) AddUserTypeName(name string) + func (s *JSchema) BuildASTNode() schema.ASTNode + func (s *JSchema) Check() (err error) + func (s *JSchema) CollectUserTypes() + func (s *JSchema) Compile() error + func (s *JSchema) Example() (b []byte, err error) + func (s *JSchema) GetAST() (an schema.ASTNode, err error) + func (s *JSchema) InnerTypesList() map[string]ischema.Type + func (s *JSchema) Len() (uint, error) + func (s *JSchema) UsedUserTypes() ([]string, error) + type Option func(s *JSchema) + type StringSet struct + func NewStringSet(vv ...string) *StringSet + func (m *StringSet) Add(v string) + func (m *StringSet) Data() []string + func (m *StringSet) Has(v string) bool + func (m *StringSet) Len() int