package Tools is
type Tool is abstract new Object with private;
type Tool_Context is record func : Function_Type; modifiers : Modifiers_Array; first : Boolean; world : A_World; worldX, worldY, layer : Integer; end record;
type A_Tool is access all Tool'Class;
procedure Apply
( | this | : access Tool; |
context | : Tool_Context ) is abstract; |