21 lines
354 B
Crystal
21 lines
354 B
Crystal
|
|
abstract class Package::Backend::Packaging
|
|
getter name : String
|
|
|
|
def initialize(@name)
|
|
end
|
|
|
|
abstract def package(context : Context, package : Package) : Bool
|
|
end
|
|
|
|
class Package::Backend::Splitter
|
|
def initialize(&block : Proc(Recipe, Package))
|
|
@callback = block
|
|
end
|
|
|
|
def create_split(recipe : Recipe) : Package
|
|
@callback.call recipe
|
|
end
|
|
end
|
|
|