class Package::Package getter recipe : Recipe def initialize(@recipe) end macro inherit(attribute) @{{attribute.var.id}} : {{attribute.type.id}}? def {{attribute.var.id}} : {{attribute.type.id}} @{{attribute.var.id}} || @recipe.{{attribute.var.id}} end def {{attribute.var.id}}=(new_value : {{attribute.type.id}}) @{{attribute.var.id}} = new_value end end inherit name : String inherit version : String inherit release : Int32 inherit url : String? inherit description : String inherit dependencies : Array(String) inherit conflicts : Array(String) inherit provides : Array(String) # Internals inherit fake_root_directory : String def to_s "" end end