eng: Add proxy item type

Update #3715.
This commit is contained in:
Sebastian Huber 2023-05-05 08:42:23 +02:00
parent 2a5e59d34f
commit 8bc24e5f54

View File

@ -99,6 +99,8 @@ The specification item types have the following hierarchy:
* :ref:`SpecTypeInterfaceVariableItemType`
* :ref:`SpecTypeProxyItemTypes`
* :ref:`SpecTypeRequirementItemType`
* :ref:`SpecTypeFunctionalRequirementItemType`
@ -193,6 +195,8 @@ This type is refined by the following types:
* :ref:`SpecTypeInterfaceItemType`
* :ref:`SpecTypeProxyItemTypes`
* :ref:`SpecTypeRequirementItemType`
* :ref:`SpecTypeRequirementValidationItemType`
@ -1607,6 +1611,20 @@ name
notes
The attribute value shall be an :ref:`SpecTypeInterfaceNotes`.
.. _SpecTypeProxyItemTypes:
Proxy Item Types
^^^^^^^^^^^^^^^^
This type refines the :ref:`SpecTypeRootItemType` through the ``type``
attribute if the value is ``proxy``. Items of similar characteristics may link
to a proxy item through links with the :ref:`SpecTypeProxyMemberLinkRole`. A
proxy item resolves to the first member item which is enabled. Proxies may be
used to provide an interface with a common name and implementations which
depend on configuration options. For example, in one configuration a constant
could be a compile time constant and in another configuration it could be a
read-only object.
.. _SpecTypeRequirementItemType:
Requirement Item Type
@ -4575,6 +4593,8 @@ This type is refined by the following types:
* :ref:`SpecTypePlacementOrderLinkRole`
* :ref:`SpecTypeProxyMemberLinkRole`
* :ref:`SpecTypeRequirementRefinementLinkRole`
* :ref:`SpecTypeRequirementValidationLinkRole`
@ -4689,6 +4709,15 @@ value is ``placement-order``. This link role defines the placement order of
items in a container item (for example an interface function in a header file
or a documentation section).
.. _SpecTypeProxyMemberLinkRole:
Proxy Member Link Role
^^^^^^^^^^^^^^^^^^^^^^
This type refines the :ref:`SpecTypeLink` through the ``role`` attribute if the
value is ``proxy-member``. It defines the proxy member role of links. Items
may use this role to link to :ref:`SpecTypeProxyItemTypes` items.
.. _SpecTypeRequirementRefinementLinkRole:
Requirement Refinement Link Role