Documentation
¶
Index ¶
- func Context(message string, err error) error
- func Report(r Reporter, d Diagnostic)
- func WithDiagnostics(err error, diagnostics ...Diagnostic) error
- func WriteText(out io.Writer, d Diagnostic) error
- type Collector
- type ConvertOptions
- type Diagnostic
- type LibraryCompatibilityDetails
- type LibraryRequirementStep
- type PathMapper
- type PathMapping
- type Position
- type Reporter
- type Severity
- type Span
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Report ¶
func Report(r Reporter, d Diagnostic)
func WithDiagnostics ¶
func WithDiagnostics(err error, diagnostics ...Diagnostic) error
Types ¶
type Collector ¶
type Collector struct {
// contains filtered or unexported fields
}
func (*Collector) Diagnostics ¶
func (c *Collector) Diagnostics() []Diagnostic
func (*Collector) Report ¶
func (c *Collector) Report(d Diagnostic)
type ConvertOptions ¶
type Diagnostic ¶
type Diagnostic struct {
Code string `json:"code" ub:"code"`
Severity Severity `json:"severity" ub:"severity"`
Message string `json:"message" ub:"message"`
Hint string `json:"hint,omitempty" ub:"hint,omitempty"`
Path string `json:"path,omitempty" ub:"path,omitempty"`
Span *Span `json:"span,omitempty" ub:"span,omitempty"`
LibraryCompatibility *LibraryCompatibilityDetails `json:"library-compatibility,omitempty" ub:"library-compatibility,omitempty"`
}
func FromError ¶
func FromError(err error, opts ConvertOptions) []Diagnostic
func Merge ¶
func Merge(groups ...[]Diagnostic) []Diagnostic
func Normalize ¶
func Normalize(ds []Diagnostic) []Diagnostic
type LibraryCompatibilityDetails ¶
type LibraryCompatibilityDetails struct {
Dependency string `json:"dependency,omitempty" ub:"dependency,omitempty"`
Package string `json:"package,omitempty" ub:"package,omitempty"`
ModulePath string `json:"module-path,omitempty" ub:"module-path,omitempty"`
Version string `json:"version,omitempty" ub:"version,omitempty"`
Commit string `json:"commit,omitempty" ub:"commit,omitempty"`
ActualVersion string `json:"actual-version,omitempty" ub:"actual-version,omitempty"`
ActualRequiredAPI string `json:"actual-required-api,omitempty" ub:"actual-required-api,omitempty"`
CandidateVersion string `json:"candidate-version,omitempty" ub:"candidate-version,omitempty"`
Query string `json:"query,omitempty" ub:"query,omitempty"`
Floor string `json:"floor,omitempty" ub:"floor,omitempty"`
RequiredAPI string `json:"required-api,omitempty" ub:"required-api,omitempty"`
ImplementedAPIs []string `json:"implemented-apis,omitempty" ub:"implemented-apis,omitempty"`
UnobinVersion string `json:"unobin-version,omitempty" ub:"unobin-version,omitempty"`
SuggestedUnobinVersion string `json:"suggested-unobin-version,omitempty" ub:"suggested-unobin-version,omitempty"`
RequiredCoreVersion string `json:"required-core-version,omitempty" ub:"required-core-version,omitempty"`
MinimumGoVersion string `json:"minimum-go-version,omitempty" ub:"minimum-go-version,omitempty"`
Replacement string `json:"replacement,omitempty" ub:"replacement,omitempty"`
ActualReplacement string `json:"actual-replacement,omitempty" ub:"actual-replacement,omitempty"`
RequirementChain []LibraryRequirementStep `json:"requirement-chain,omitempty" ub:"requirement-chain,omitempty"`
}
type LibraryRequirementStep ¶
type PathMapper ¶
type PathMapper struct {
WorkingDir string
ProjectDir string
Mappings []PathMapping
HiddenRoots []string
}
func (PathMapper) Display ¶
func (m PathMapper) Display(path string) string
func (PathMapper) ReplaceKnownPrefixes ¶
func (m PathMapper) ReplaceKnownPrefixes(message string) string
type PathMapping ¶
type Reporter ¶
type Reporter interface {
Report(Diagnostic)
}
Click to show internal directories.
Click to hide internal directories.