Documentation ¶
Index ¶
- Variables
- func GetAllLevelStrings() []string
- func GetUppercaseStringToLevelMap() map[string]Level
- func MockResource(name string) *resource.Instance
- type Level
- type Message
- func (m *Message) AnalysisMessageBase() *v1alpha1.AnalysisMessageBase
- func (m *Message) MarshalJSON() ([]byte, error)
- func (m *Message) Origin() string
- func (m Message) ReplaceLine(l string) string
- func (m *Message) String() string
- func (m *Message) Unstructured(includeOrigin bool) map[string]any
- func (m *Message) UnstructuredAnalysisMessageBase() map[string]any
- type MessageType
- type Messages
Constants ¶
This section is empty.
Variables ¶
var ( // Info level is for informational messages Info = Level{2, "Info"} // Warning level is for warning messages Warning = Level{1, "Warning"} // Error level is for error messages Error = Level{0, "Error"} )
Functions ¶
func GetAllLevelStrings ¶
func GetAllLevelStrings() []string
GetAllLevelStrings returns a list of strings representing the names of all Levels defined. The order is arbitrary but should be the same as GetAllLevels.
func GetUppercaseStringToLevelMap ¶
GetUppercaseStringToLevelMap returns a mapping of uppercase strings to Level structs. This function is intended to be used to convert user input to structs.
func MockResource ¶
Types ¶
type Level ¶
type Level struct {
// contains filtered or unexported fields
}
Level is the severity level of a message.
func GetAllLevels ¶
func GetAllLevels() []Level
GetAllLevels returns an arbitrarily ordered slice of all Levels defined.
func (Level) IsWorseThanOrEqualTo ¶
type Message ¶
type Message struct { Type *MessageType // The Parameters to the message Parameters []any // Resource is the underlying resource instance associated with the // message, or nil if no resource is associated with it. Resource *resource.Instance // DocRef is an optional reference tracker for the documentation URL DocRef string // Line is the line number of the error place in the message Line int }
Message is a specific diagnostic message TODO: Implement using Analysis message API
func NewMessage ¶
func NewMessage(mt *MessageType, r *resource.Instance, p ...any) Message
NewMessage returns a new Message instance from an existing type.
func (*Message) AnalysisMessageBase ¶
func (m *Message) AnalysisMessageBase() *v1alpha1.AnalysisMessageBase
func (*Message) MarshalJSON ¶
MarshalJSON satisfies the Marshaler interface
func (Message) ReplaceLine ¶
ReplaceLine replaces the line number from the input String method of Reference to the line number from Message
func (*Message) Unstructured ¶
Unstructured returns this message as a JSON-style unstructured map
func (*Message) UnstructuredAnalysisMessageBase ¶
UnstructuredAnalysisMessageBase returns this message as a JSON-style unstructured map in AnalaysisMessageBase TODO(jasonwzm): Remove once message implements AnalysisMessageBase
type MessageType ¶
type MessageType struct {
// contains filtered or unexported fields
}
MessageType is a type of diagnostic message
func NewMessageType ¶
func NewMessageType(level Level, code, template string) *MessageType
NewMessageType returns a new MessageType instance.
func (*MessageType) Code ¶
func (m *MessageType) Code() string
Code returns the code of the MessageType
func (*MessageType) Level ¶
func (m *MessageType) Level() Level
Level returns the level of the MessageType
func (*MessageType) Template ¶
func (m *MessageType) Template() string
Template returns the message template used by the MessageType
type Messages ¶
type Messages []Message
Messages is a slice of Message items.
func (*Messages) FilterOutLowerThan ¶
FilterOutLowerThan only keeps messages at or above the specified output level
func (*Messages) Sort ¶
func (ms *Messages) Sort()
Sort the message lexicographically by level, code, resource origin name, then string.
func (*Messages) SortedDedupedCopy ¶
SortedDedupedCopy returns a different sorted (and deduped) Messages struct.