package atomfeed import ( "fmt" ) const ( InlineText = iota InlineXHTML InlineOther OutOfLine ) type Content interface { isContent() bool hasSRC() bool getType() string Check() error } func NewContent(contentType int, mediaType string, content any) (Content, error) { switch contentType { case 0: return newInlineTextContent(mediaType, content) case 1: return newInlineXHTMLContent(mediaType, content) case 2: return newInlineOtherContent(mediaType, content) case 3: return newOutOfLineContent(mediaType, content) default: return nil, fmt.Errorf("%v is not a valid text type", contentType) } }