SYNOPSIS
        string function_exists(string str, object ob)

DESCRIPTION
        Return the file name of the object that defines the function
        str in object ob. The returned value can be other than
        object_name(ob) if the function is defined in an inherited
        object. In !compat mode, the returned name always begins with a
        '/' (absolute path). 0 is returned if the function was not
        defined, or was defined as static (protected function on the
        other hand are found).

SEE ALSO
        call_other(E), call_resolved(E), functionlist(E)
