goldsmith/interface.go

27 lines
392 B
Go
Raw Normal View History

2018-12-08 19:18:51 +00:00
package goldsmith
type Initializer interface {
2018-12-09 20:45:06 +00:00
Initialize(ctx *Context) (Filter, error)
2018-12-08 19:18:51 +00:00
}
type Processor interface {
Process(ctx *Context, file *File) error
}
type Finalizer interface {
Finalize(ctx *Context) error
}
type Component interface {
Name() string
}
type Filter interface {
Component
Accept(ctx *Context, file *File) (bool, error)
}
type Plugin interface {
Component
}