with Io;
with Common;
with Mapping_Context;
with Directory_Tools;
procedure Jump (Abbreviation : in String := "") is
    --
    Abbrev_File : Directory_Tools.Object.Handle :=
       Directory_Tools.Naming.Resolution (Mapping_Context & Abbreviation);
    --
    Object : Directory_Tools.Object.Handle :=
       Directory_Tools.Naming.Resolution
          ("_" & Directory_Tools.Naming.Full_Name (Abbrev_File));
    --
begin  
    if (Directory_Tools.Object.Is_Bad (Abbrev_File)) then
        Io.Put_Line (Io.Current_Error, "Abbreviation not found.");
    elsif (Directory_Tools.Object.Is_Bad (Object)) then
        Io.Put_Line (Io.Current_Error,
                     "Abbreviation maps to non-existent object.");
    else
        Common.Definition (Directory_Tools.Naming.Full_Name (Object));
    end if;
end Jump;  
