Documentation
¶
Index ¶
Constants ¶
const (
// MaxFileSize is the maximum file size we'll load (10MB)
MaxFileSize = 10 * 1024 * 1024
)
Variables ¶
This section is empty.
Functions ¶
func ExtractValue ¶
ExtractValue extracts a value from structured data using dot notation path Supports paths like "info.title" or "servers.0.url" (array access in future)
func GetAvailablePaths ¶
GetAvailablePaths returns available paths from a data structure for error messages
Types ¶
type FileRef ¶
type FileRef struct {
Path string `yaml:"path"` // Path to the file to load
Extract string `yaml:"extract"` // Optional: path to extract value (e.g., "info.title")
}
FileRef represents a file reference with optional value extraction
type FileTagResolver ¶
type FileTagResolver struct {
// contains filtered or unexported fields
}
FileTagResolver handles !file tags for loading external content
func NewFileTagResolver ¶
func NewFileTagResolver(baseDir string) *FileTagResolver
NewFileTagResolver creates a new file tag resolver
func (*FileTagResolver) Resolve ¶
func (f *FileTagResolver) Resolve(node *yaml.Node) (interface{}, error)
Resolve processes a YAML node with the !file tag
func (*FileTagResolver) Tag ¶
func (f *FileTagResolver) Tag() string
Tag returns the YAML tag this resolver handles
type ResolvedValue ¶
type ResolvedValue struct {
Value interface{} // The resolved value
Source string // Source information for error reporting
}
ResolvedValue represents a value that was resolved from a tag
type ResolverRegistry ¶
type ResolverRegistry struct {
// contains filtered or unexported fields
}
ResolverRegistry manages tag resolvers and processes YAML with custom tags
func NewResolverRegistry ¶
func NewResolverRegistry() *ResolverRegistry
NewResolverRegistry creates a new tag resolver registry
func (*ResolverRegistry) HasResolvers ¶
func (r *ResolverRegistry) HasResolvers() bool
HasResolvers returns true if any resolvers are registered
func (*ResolverRegistry) Process ¶
func (r *ResolverRegistry) Process(data []byte) ([]byte, error)
Process takes YAML data with custom tags and returns processed YAML
func (*ResolverRegistry) Register ¶
func (r *ResolverRegistry) Register(resolver TagResolver)
Register adds a tag resolver to the registry