// package label -- текстовая метка для отображения package label import ( "gitp78su.ipnodns.ru/svi/goarch/lev0/alias" "gitp78su.ipnodns.ru/svi/goarch/lev0/types" "gitp78su.ipnodns.ru/svi/goarch/lev1/coord" "gitp78su.ipnodns.ru/svi/goarch/lev1/offset" "gitp78su.ipnodns.ru/svi/kern/v3" ) // Label -- текстовая метка для отображения type Label struct { Val_ alias.Label `yaml:"val"` // Метка для вывода Offset_ *offset.Offset `yaml:"offsetX"` // Смещение метки Coord_ *coord.Coord `yaml:"coord"` // Координаты метки } var ( hassert = kern.GetFnHassert() ) // NewLabel -- возвращает новую метку func NewLabel(label alias.Label, coord *coord.Coord, offset *offset.Offset) *Label { hassert(label != "", "NewLabel(): label is empty") hassert(coord != nil, "NewLabel(): coord is nil") hassert(offset != nil, "NewLabel(): offset is nil") return &Label{ Val_: label, Offset_: offset, Coord_: coord, } } // Get -- возвращает метку func (sf *Label) Get() alias.Label { return sf.Val_ } // Coord -- возвращает координаты метки func (sf *Label) Coord() types.ICoord { return sf.Coord_ } // Offset -- возвращает смещение метки func (sf *Label) Offset() types.IOffset { return sf.Offset_ }