package atom
import (
"fmt"
"html"
)
type Text interface {
isText() bool
Check() error
}
// NewText creates a new Text. It returns a Text and an error.
func NewText(textType, content string) (Text, error) {
switch textType {
case "text", "":
return newPlainText(textType, content)
case "html":
return newPlainText(textType, html.UnescapeString(content))
case "xhtml":
return newXHTMLText(textType, content)
default:
return nil, fmt.Errorf("%v is not a valid text type", textType)
}
}