mirror of
https://github.com/kjanat/articulate-parser.git
synced 2026-10-13 03:35:27 +02:00
refactor: extract base exporter, add sentinel errors, document unused fields
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
package exporters
|
||||
|
||||
import "github.com/kjanat/articulate-parser/internal/interfaces"
|
||||
|
||||
// baseExporter contains common fields shared by all exporter implementations.
|
||||
// Embed this struct in concrete exporters to inherit HTMLCleaner and Logger.
|
||||
type baseExporter struct {
|
||||
// htmlCleaner is used to convert HTML content to plain text.
|
||||
htmlCleaner interfaces.HTMLCleaner
|
||||
// logger is used for logging warnings and errors.
|
||||
logger interfaces.Logger
|
||||
}
|
||||
|
||||
// newBaseExporter creates a new baseExporter with the given dependencies.
|
||||
func newBaseExporter(htmlCleaner interfaces.HTMLCleaner, logger interfaces.Logger) baseExporter {
|
||||
return baseExporter{
|
||||
htmlCleaner: htmlCleaner,
|
||||
logger: logger,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user