Added comments to FeragMessage and TitleEnd

This commit is contained in:
Oliver Jakoubek 2020-05-29 15:01:50 +02:00
parent 5c415c5aac
commit 68cf7ef7db
2 changed files with 13 additions and 2 deletions

View file

@ -5,6 +5,8 @@ import (
"strings" "strings"
) )
// FeragMessage is the struct for the "abstract" message.
// It is meant to be embedded into the real message structs.
type FeragMessage struct { type FeragMessage struct {
messageStart string messageStart string
messageEnd string messageEnd string
@ -18,8 +20,12 @@ func (fm *FeragMessage) getMessageEnd() string {
return fmt.Sprintf("%s", fm.messageEnd) return fmt.Sprintf("%s", fm.messageEnd)
} }
// MessageTemplateFunc is a func type for the generating the
// FERAG-formatted message.
type MessageTemplateFunc func(*FeragMessage, string) string type MessageTemplateFunc func(*FeragMessage, string) string
// MessageTemplate returns a MessageTemplateFunc - to be called
// from within the "real" message structs.
func (fm *FeragMessage) MessageTemplate() MessageTemplateFunc { func (fm *FeragMessage) MessageTemplate() MessageTemplateFunc {
return func(fm *FeragMessage, s string) string { return func(fm *FeragMessage, s string) string {
message := fm.getMessageStart() message := fm.getMessageStart()

View file

@ -2,19 +2,23 @@ package feragstring
import "fmt" import "fmt"
// TitleEnd is the struct for the FERAG title info message (%2441)
type TitleEnd struct { type TitleEnd struct {
FeragMessage FeragMessage
titleName string titleName string
} }
func (ti *TitleEnd) PrintObjectName() string { // TitleName returns the title name segment (+40) FERAG-formatted
func (ti *TitleEnd) TitleName() string {
return fmt.Sprintf("+40%-8s", ti.titleName) return fmt.Sprintf("+40%-8s", ti.titleName)
} }
// SetTitleName sets the title name segment (+40)
func (ti *TitleEnd) SetTitleName(titleName string) { func (ti *TitleEnd) SetTitleName(titleName string) {
ti.titleName = titleName ti.titleName = titleName
} }
// NewTitleEnd returns a new TitleEnd struct
func NewTitleEnd() *TitleEnd { func NewTitleEnd() *TitleEnd {
t := TitleEnd{ t := TitleEnd{
FeragMessage: FeragMessage{ FeragMessage: FeragMessage{
@ -25,8 +29,9 @@ func NewTitleEnd() *TitleEnd {
return &t return &t
} }
// Message returns the complete FERAG-formatted message for title end
func (ti *TitleEnd) Message() string { func (ti *TitleEnd) Message() string {
message := ti.FeragMessage.MessageTemplate() message := ti.FeragMessage.MessageTemplate()
payload := fmt.Sprintf("+40%-8s", ti.titleName) payload := ti.TitleName()
return message(&ti.FeragMessage, payload) return message(&ti.FeragMessage, payload)
} }