Documentation
¶
Index ¶
- Variables
- func BinarySearchFunc(low, high int, f func(int) bool) int
- func GenKey(repoType string, name string) string
- func GetTypeName(key string) (repoType string, name string, err error)
- func Solve(ps *prefabservice.PrefabService, repoType string, name string, version string, ...) (map[string]SolvedItem, *dcontext.DeployContext, error)
- type Incompatibility
- type IncompatibilityStringer
- type SolvedItem
- type SolvingError
- type SolvingErrorWriter
- type StandardCauseStrings
- type StandardErrorWriter
- func (w *StandardErrorWriter) GetTag(incompatibility *Incompatibility) (int, bool)
- func (w *StandardErrorWriter) IsRoot(incompatibility *Incompatibility) bool
- func (w *StandardErrorWriter) Separate()
- func (w *StandardErrorWriter) String() string
- func (w *StandardErrorWriter) TagLastLine(incompatibility *Incompatibility) int
- func (w *StandardErrorWriter) WithIncompatibilityStringer(s IncompatibilityStringer) *StandardErrorWriter
- func (w *StandardErrorWriter) WithStrings(s StandardCauseStrings) *StandardErrorWriter
- func (w *StandardErrorWriter) WriteLine(line string)
- func (w *StandardErrorWriter) WriteLineNoCause(incompatibility *Incompatibility)
- func (w *StandardErrorWriter) WriteLineOneCause(cause, incompatibility *Incompatibility)
- func (w *StandardErrorWriter) WriteLineOneCauseOneTag(cause, incompatibility *Incompatibility, line int)
- func (w *StandardErrorWriter) WriteLineTwoCauses(cause1, cause2, incompatibility *Incompatibility)
- func (w *StandardErrorWriter) WriteLineTwoCausesOneTag(cause1, cause2, incompatibility *Incompatibility, line2 int)
- func (w *StandardErrorWriter) WriteLineTwoCausesTwoTags(cause1, cause2, incompatibility *Incompatibility, line1, line2 int)
- type StandardIncompatibilityStringer
- func (w StandardIncompatibilityStringer) IncompatibilityString(c *Incompatibility, rootPkg string) string
- func (w StandardIncompatibilityStringer) IsRoot(incompatibility *Incompatibility, rootPkg string) bool
- func (w StandardIncompatibilityStringer) WithStrings(strings StandardIncompatibilityStrings) StandardIncompatibilityStringer
- func (w StandardIncompatibilityStringer) WithTermStringer(termStringer TermStringer) StandardIncompatibilityStringer
- type StandardIncompatibilityStrings
- type StandardTermStringer
- type Term
- type TermStringer
Constants ¶
This section is empty.
Variables ¶
View Source
var DefaultCauseStrings = StandardCauseStrings{
TwoCauses: "Because %s and %s, %s.",
TwoCausesFinal: "So, because %s and %s, %s.",
TwoCausesOneTag: "Because %s and %s (%d), %s.",
TwoCausesOneTagFinal: "So, because %s and %s (%d), %s.",
TwoCausesTwoTags: "Because %s (%d) and %s (%d), %s.",
TwoCausesTwoTagsFinal: "So, because %s (%d) and %s (%d), %s.",
OneCause: "And because %s, %s.",
OneCauseFinal: "So, because %s, %s.",
OneCauseOneTag: "And because %s (%d), %s.",
OneCauseOneTagFinal: "So, because %s (%d), %s.",
NoCause: "Thus, %s.",
}
View Source
var DefaultIncompatibilityStrings = StandardIncompatibilityStrings{
ResolvingFailed: "version solving failed",
DependsOn: "%s depends on %s",
Installing: "installing %s",
Forbids: "%s forbids %s",
IsForbidden: "%s is forbidden",
}
Functions ¶
func BinarySearchFunc ¶
BinarySearchFunc returns the smallest index i in [low, high) at which f(i) is true, assuming that on the range [low, high), f(i) == true implies f(i+1) == true.
func Solve ¶
func Solve(ps *prefabservice.PrefabService, repoType string, name string, version string, deps [][]*prefab.Prefab, ctx *dcontext.DeployContext) (map[string]SolvedItem, *dcontext.DeployContext, error)
Types ¶
type Incompatibility ¶
type Incompatibility struct {
// contains filtered or unexported fields
}
func (Incompatibility) Causes ¶
func (in Incompatibility) Causes() []*Incompatibility
func (Incompatibility) String ¶
func (in Incompatibility) String() string
func (Incompatibility) Terms ¶
func (in Incompatibility) Terms() []Term
type IncompatibilityStringer ¶
type IncompatibilityStringer interface {
IncompatibilityString(incompatibility *Incompatibility, rootPkg string) string
}
type SolvedItem ¶
type SolvingError ¶
type SolvingError struct {
// contains filtered or unexported fields
}
func (SolvingError) Cause ¶
func (e SolvingError) Cause() *Incompatibility
func (SolvingError) Error ¶
func (e SolvingError) Error() string
func (SolvingError) WriteTo ¶
func (e SolvingError) WriteTo(writer SolvingErrorWriter)
type SolvingErrorWriter ¶
type SolvingErrorWriter interface {
TagLastLine(incompatibility *Incompatibility) int
GetTag(incompatibility *Incompatibility) (int, bool)
WriteLineTwoCauses(cause1, cause2, incompatibility *Incompatibility)
WriteLineTwoCausesOneTag(cause1, cause2, incompatibility *Incompatibility, line2 int)
WriteLineTwoCausesTwoTags(cause1, cause2, incompatibility *Incompatibility, line1, line2 int)
WriteLineOneCause(cause, incompatibility *Incompatibility)
WriteLineOneCauseOneTag(cause, incompatibility *Incompatibility, line int)
WriteLineNoCause(incompatibility *Incompatibility)
Separate()
}
type StandardCauseStrings ¶
type StandardErrorWriter ¶
type StandardErrorWriter struct {
// contains filtered or unexported fields
}
func NewStandardErrorWriter ¶
func NewStandardErrorWriter(rootPkg string) *StandardErrorWriter
func (*StandardErrorWriter) GetTag ¶
func (w *StandardErrorWriter) GetTag(incompatibility *Incompatibility) (int, bool)
func (*StandardErrorWriter) IsRoot ¶
func (w *StandardErrorWriter) IsRoot(incompatibility *Incompatibility) bool
func (*StandardErrorWriter) Separate ¶
func (w *StandardErrorWriter) Separate()
func (*StandardErrorWriter) String ¶
func (w *StandardErrorWriter) String() string
func (*StandardErrorWriter) TagLastLine ¶
func (w *StandardErrorWriter) TagLastLine(incompatibility *Incompatibility) int
func (*StandardErrorWriter) WithIncompatibilityStringer ¶
func (w *StandardErrorWriter) WithIncompatibilityStringer(s IncompatibilityStringer) *StandardErrorWriter
func (*StandardErrorWriter) WithStrings ¶
func (w *StandardErrorWriter) WithStrings(s StandardCauseStrings) *StandardErrorWriter
func (*StandardErrorWriter) WriteLine ¶
func (w *StandardErrorWriter) WriteLine(line string)
func (*StandardErrorWriter) WriteLineNoCause ¶
func (w *StandardErrorWriter) WriteLineNoCause(incompatibility *Incompatibility)
func (*StandardErrorWriter) WriteLineOneCause ¶
func (w *StandardErrorWriter) WriteLineOneCause(cause, incompatibility *Incompatibility)
func (*StandardErrorWriter) WriteLineOneCauseOneTag ¶
func (w *StandardErrorWriter) WriteLineOneCauseOneTag(cause, incompatibility *Incompatibility, line int)
func (*StandardErrorWriter) WriteLineTwoCauses ¶
func (w *StandardErrorWriter) WriteLineTwoCauses(cause1, cause2, incompatibility *Incompatibility)
func (*StandardErrorWriter) WriteLineTwoCausesOneTag ¶
func (w *StandardErrorWriter) WriteLineTwoCausesOneTag(cause1, cause2, incompatibility *Incompatibility, line2 int)
func (*StandardErrorWriter) WriteLineTwoCausesTwoTags ¶
func (w *StandardErrorWriter) WriteLineTwoCausesTwoTags(cause1, cause2, incompatibility *Incompatibility, line1, line2 int)
type StandardIncompatibilityStringer ¶
type StandardIncompatibilityStringer struct {
// contains filtered or unexported fields
}
func NewStandardIncompatibilityStringer ¶
func NewStandardIncompatibilityStringer() StandardIncompatibilityStringer
func (StandardIncompatibilityStringer) IncompatibilityString ¶
func (w StandardIncompatibilityStringer) IncompatibilityString(c *Incompatibility, rootPkg string) string
func (StandardIncompatibilityStringer) IsRoot ¶
func (w StandardIncompatibilityStringer) IsRoot(incompatibility *Incompatibility, rootPkg string) bool
func (StandardIncompatibilityStringer) WithStrings ¶
func (w StandardIncompatibilityStringer) WithStrings(strings StandardIncompatibilityStrings) StandardIncompatibilityStringer
func (StandardIncompatibilityStringer) WithTermStringer ¶
func (w StandardIncompatibilityStringer) WithTermStringer(termStringer TermStringer) StandardIncompatibilityStringer
type StandardTermStringer ¶
type StandardTermStringer struct{}
type Term ¶
type Term struct {
// contains filtered or unexported fields
}
func (Term) Constraint ¶
func (t Term) Constraint() repointerface.Constraint
func (Term) Dependency ¶
type TermStringer ¶
Click to show internal directories.
Click to hide internal directories.