Add private sequence-item placement
This commit is contained in:
@@ -9,6 +9,17 @@ func selectOptions[T any](source Source, supplied []Options[T]) (Options[T], []D
|
||||
options = supplied[0]
|
||||
}
|
||||
var diagnostics []Diagnostic
|
||||
if options.placementMode != placementModeMapping && options.placementMode != placementModeSequenceItem {
|
||||
diagnostics = append(diagnostics, optionDiagnostic(CodeOptionsInvalid, "input placement mode is invalid"))
|
||||
}
|
||||
if normalized, err := normalizeDestination(options.destination); err != nil {
|
||||
diagnostics = append(diagnostics, invalidDestinationDiagnostic(options.destination))
|
||||
} else {
|
||||
options.destination = normalized
|
||||
}
|
||||
if options.placementMode == placementModeSequenceItem && len(options.destination.segments) == 0 {
|
||||
diagnostics = append(diagnostics, optionDiagnostic(CodeOptionsInvalid, "sequence-item placement requires a nonempty destination"))
|
||||
}
|
||||
definition := options.Definition
|
||||
if !validOverlayName(options.Overlay) {
|
||||
diagnostics = append(diagnostics, optionDiagnostic(CodeOptionsInvalid, "overlay name must contain only ASCII letters, digits, underscore, or hyphen"))
|
||||
|
||||
Reference in New Issue
Block a user