// package archive_combo -- архивная пара значений package archive_combo import ( "fmt" "gitp78su.ipnodns.ru/svi/packer/lev0/alias" ) // ArchiveCombo -- архивная пара значений type ArchiveCombo struct { hi, low alias.ArchVal combo alias.ArchCombo count int } // NewArchiveCombo -- создаёт новую архивную пару func NewArchiveCombo(hi, low alias.ArchVal) *ArchiveCombo { sf := &ArchiveCombo{ hi: hi, low: low, combo: alias.ArchCombo(hi*65536 + low), } return sf } // Count -- возвращает число встреч комбо в архивных значениях func (sf *ArchiveCombo) Count() int { return sf.count } // Inc -- увелтчивает числ окомбо в архивных данных func (sf *ArchiveCombo) Inc() { sf.count++ } // Low -- возвращает младшее значение архивной пары func (sf *ArchiveCombo) Low() alias.ArchVal { return sf.low } // Combo -- возвращает комбинацию func (sf *ArchiveCombo) Combo() alias.ArchCombo { return sf.combo } // String -- возвращает строковое представление func (sf *ArchiveCombo) String() string { return fmt.Sprintf("{hi=%v, low=%v, combo=%v}", sf.hi, sf.low, sf.combo) }