.. index:: single: xref_diagram(Format)
.. _xref_diagram/1:

.. rst-class:: right

**object**

``xref_diagram(Format)``
========================

* ``Format`` - Graph language file format.


Predicates for generating predicate call cross-referencing diagrams.

| **Availability:** 
|    ``logtalk_load(diagrams(loader))``

| **Author:** Paulo Moura
| **Version:** 2:86:0
| **Date:** 2026-03-12

| **Compilation flags:**
|    ``static, context_switching_calls``


| **Extends:**
|    ``public`` :ref:`entity_diagram(Format) <entity_diagram/1>`
| **Uses:**
|    :ref:`atom <atom/0>`
|    :ref:`list <list/0>`
|    :ref:`logtalk <logtalk/0>`
|    :ref:`modules_diagram_support <modules_diagram_support/0>`
|    :ref:`os <os/0>`
|    :ref:`user <user/0>`

| **Remarks:**
|    (none)

| **Inherited public predicates:**
|     :ref:`diagram/1::all_files/0`  :ref:`diagram/1::all_files/1`  :ref:`diagram/1::all_libraries/0`  :ref:`diagram/1::all_libraries/1`  :ref:`options_protocol/0::check_option/1`  :ref:`options_protocol/0::check_options/1`  :ref:`options_protocol/0::default_option/1`  :ref:`options_protocol/0::default_options/1`  :ref:`diagram/1::diagram_description/1`  :ref:`diagram/1::diagram_name_suffix/1`  :ref:`diagram/1::directories/2`  :ref:`diagram/1::directories/3`  :ref:`diagram/1::directory/1`  :ref:`diagram/1::directory/2`  :ref:`diagram/1::directory/3`  :ref:`entity_diagram/1::file/1`  :ref:`entity_diagram/1::file/2`  :ref:`diagram/1::files/1`  :ref:`diagram/1::files/2`  :ref:`diagram/1::files/3`  :ref:`diagram/1::format_object/1`  :ref:`diagram/1::libraries/1`  :ref:`diagram/1::libraries/2`  :ref:`diagram/1::libraries/3`  :ref:`diagram/1::library/1`  :ref:`diagram/1::library/2`  :ref:`options_protocol/0::option/2`  :ref:`options_protocol/0::option/3`  :ref:`diagram/1::rdirectory/1`  :ref:`diagram/1::rdirectory/2`  :ref:`diagram/1::rdirectory/3`  :ref:`diagram/1::rlibrary/1`  :ref:`diagram/1::rlibrary/2`  :ref:`options_protocol/0::valid_option/1`  :ref:`options_protocol/0::valid_options/1`  

.. contents::
   :local:
   :backlinks: top

Public predicates
-----------------

.. index:: entity/2
.. _xref_diagram/1::entity/2:

``entity/2``
^^^^^^^^^^^^

Creates a diagram for a single entity using the specified options.

| **Compilation flags:**
|    ``static``

| **Template:**
|    ``entity(Entity,Options)``
| **Mode and number of proofs:**
|    ``entity(+entity_identifier,+list(compound))`` - ``one``


------------

.. index:: entity/1
.. _xref_diagram/1::entity/1:

``entity/1``
^^^^^^^^^^^^

Creates a diagram for a single entity using default options.

| **Compilation flags:**
|    ``static``

| **Template:**
|    ``entity(Entity)``
| **Mode and number of proofs:**
|    ``entity(+entity_identifier)`` - ``one``


------------

Protected predicates
--------------------

(no local declarations; see entity ancestors if any)

Private predicates
------------------

.. index:: included_predicate_/1
.. _xref_diagram/1::included_predicate_/1:

``included_predicate_/1``
^^^^^^^^^^^^^^^^^^^^^^^^^

Table of predicates already included in the diagram for the entity under processing.

| **Compilation flags:**
|    ``dynamic``

| **Template:**
|    ``included_predicate_(Predicate)``
| **Mode and number of proofs:**
|    ``included_predicate_(?predicate_indicator)`` - ``zero_or_more``


------------

.. index:: referenced_predicate_/1
.. _xref_diagram/1::referenced_predicate_/1:

``referenced_predicate_/1``
^^^^^^^^^^^^^^^^^^^^^^^^^^^

Table of referenced predicates for the entity under processing.

| **Compilation flags:**
|    ``dynamic``

| **Template:**
|    ``referenced_predicate_(Predicate)``
| **Mode and number of proofs:**
|    ``referenced_predicate_(?predicate_indicator)`` - ``zero_or_more``


------------

.. index:: external_predicate_/1
.. _xref_diagram/1::external_predicate_/1:

``external_predicate_/1``
^^^^^^^^^^^^^^^^^^^^^^^^^

Table of external predicate references for all the entities under processing.

| **Compilation flags:**
|    ``dynamic``

| **Template:**
|    ``external_predicate_(Reference)``
| **Mode and number of proofs:**
|    ``external_predicate_(?compound)`` - ``zero_or_more``


------------

Operators
---------

(none)

.. seealso::

   :ref:`caller_diagram(Format) <caller_diagram/1>`, :ref:`entity_diagram(Format) <entity_diagram/1>`, :ref:`inheritance_diagram(Format) <inheritance_diagram/1>`, :ref:`uses_diagram(Format) <uses_diagram/1>`

