|
|
@@ -5,23 +5,31 @@ import (
|
|
|
мФорм "fmt"
|
|
|
мЮникод "unicode"
|
|
|
|
|
|
+ мКоорд "p78git.ddns.net/svi/odeft/internal/module/coord"
|
|
|
мАлиас "p78git.ddns.net/svi/odeft/pkg/alias"
|
|
|
мКонст "p78git.ddns.net/svi/odeft/pkg/cons"
|
|
|
+ мТип "p78git.ddns.net/svi/odeft/pkg/types"
|
|
|
)
|
|
|
|
|
|
// Литера -- руна исходника
|
|
|
type Литера struct {
|
|
|
знач мАлиас.Литера // Хранимая руна
|
|
|
тип мАлиас.ЛитераТип // Тип руны
|
|
|
+ коорд мТип.ИКоорд // Координата литеры
|
|
|
}
|
|
|
|
|
|
// НовЛитера -- возвращает новую литеру
|
|
|
-func НовЛитера(литера мАлиас.Литера) (*Литера, error) {
|
|
|
+func НовЛитера(литера мАлиас.Литера, поз мАлиас.КоордПоз, стр мАлиас.КоордСтрока) (*Литера, error) {
|
|
|
if литера == "" {
|
|
|
return nil, мФорм.Errorf("НовЛитера(): литера пустая")
|
|
|
}
|
|
|
+ коорд, ош:=мКоорд.НовКоорд(поз, стр)
|
|
|
+ if ош!=nil{
|
|
|
+ return nil, мФорм.Errorf("НовЛитера(): при создании ИКоорд, ош=\n\t%w", ош)
|
|
|
+ }
|
|
|
сам := &Литера{
|
|
|
знач: литера,
|
|
|
+ коорд: коорд,
|
|
|
}
|
|
|
if ош := сам.типУст(); ош != nil {
|
|
|
return nil, мФорм.Errorf("НовЛитера(): при проверке типа, ош=\n\t%w", ош)
|