45 lines
954 B
Go
45 lines
954 B
Go
// Copyright 2021, Henrik Sölver henrik.solver@gmail.com
|
|
// SPDX-License-Identifier: BSD-3-Clause
|
|
package ipp
|
|
|
|
import "io"
|
|
|
|
type NameWithoutLanguage struct {
|
|
name string
|
|
value string
|
|
}
|
|
|
|
func NewNameWithoutLanguage(name, value string) *NameWithoutLanguage {
|
|
c := new(NameWithoutLanguage)
|
|
c.name = name
|
|
c.value = value
|
|
return c
|
|
}
|
|
|
|
func (n NameWithoutLanguage) Name() string {
|
|
return n.name
|
|
}
|
|
|
|
func (n NameWithoutLanguage) String() string {
|
|
return n.name + ":" + n.value
|
|
}
|
|
func (n *NameWithoutLanguage) valueTag() tag {
|
|
return nameWithoutLanguageValueTag
|
|
}
|
|
|
|
func (n *NameWithoutLanguage) unmarshal(byteStream io.Reader) {
|
|
n.name, n.value = unmarshalSingleValue(byteStream)
|
|
}
|
|
|
|
func (n *NameWithoutLanguage) marshal() []byte {
|
|
l := 5 + len(n.name) + len(n.value)
|
|
b := make([]byte, l)
|
|
b[0] = byte(nameWithoutLanguageValueTag)
|
|
marshalNameValue(n.name, n.value, b[1:])
|
|
return b
|
|
}
|
|
|
|
func (n NameWithoutLanguage) Value() string {
|
|
return n.value
|
|
}
|