 prolog_edit:locate(+Spec, 
-FullSpec, -Location)Where Spec is the specification provided through edit/1. 
This multifile predicate is used to enumerate locations where an object 
satisfying the given Spec can be found. FullSpec 
is unified with the complete specification for the object. This 
distinction is used to allow for ambiguous specifications. For example, 
if Spec is an atom, which appears as the basename of a loaded 
file and as the name of a predicate, FullSpec will be bound 
to
prolog_edit:locate(+Spec, 
-FullSpec, -Location)Where Spec is the specification provided through edit/1. 
This multifile predicate is used to enumerate locations where an object 
satisfying the given Spec can be found. FullSpec 
is unified with the complete specification for the object. This 
distinction is used to allow for ambiguous specifications. For example, 
if Spec is an atom, which appears as the basename of a loaded 
file and as the name of a predicate, FullSpec will be bound 
to file(Path) or Name/Arity.
Location is a list of attributes of the location. 
Normally, this list will contain the term file(File) and, 
if available, the term line(Line).