eng: Make interface definitions optional

Update #3715.
This commit is contained in:
Sebastian Huber 2021-09-10 16:21:25 +02:00
parent 9dd61353f6
commit 60e08fd84f

View File

@ -3797,24 +3797,28 @@ definition
Interface Compound Member Definition
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
This set of attributes specifies an interface compound member definition. All
explicit attributes shall be specified. The explicit attributes for this type
are:
A value of this type shall be of one of the following variants:
brief
* The value may be a set of attributes. This set of attributes specifies an
interface compound member definition. All explicit attributes shall be
specified. The explicit attributes for this type are:
brief
The attribute value shall be an :ref:`SpecTypeInterfaceBriefDescription`.
description
description
The attribute value shall be an :ref:`SpecTypeInterfaceDescription`.
kind
kind
The attribute value shall be a string. It shall be the interface compound
member kind.
name
name
The attribute value shall be a string. It shall be the interface compound
member name.
* There may by be no value (null).
This type is refined by the following types:
* :ref:`SpecTypeInterfaceCompoundMemberCompound`
@ -4070,34 +4074,39 @@ links.
Interface Function Definition
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
This set of attributes specifies a function definition. All explicit attributes
shall be specified. The explicit attributes for this type are:
A value of this type shall be of one of the following variants:
attributes
* The value may be a set of attributes. This set of attributes specifies a
function definition. All explicit attributes shall be specified. The explicit
attributes for this type are:
attributes
The attribute value shall be an optional string. If the value is present,
then it shall be the function attributes. On the attributes a
context-sensitive substitution of item variables is performed. A function
attribute is for example the indication that the function does not return
to the caller.
context-sensitive substitution of item variables is performed. A
function attribute is for example the indication that the function does
not return to the caller.
body
body
The attribute value shall be an optional string. If the value is present,
then it shall be the definition of a static inline function. On the
function definition a context-sensitive substitution of item variables is
performed. If no value is present, then the function is declared as an
external function.
params
params
The attribute value shall be a list of strings. It shall be the list of
parameter declarations of the function. On the function parameter
declarations a context-sensitive substitution of item variables is
performed.
return
return
The attribute value shall be a string. It shall be the function return
type. On the return type a context-sensitive substitution of item
variables is performed.
* There may by be no value (null).
This type is used by the following types:
* :ref:`SpecTypeInterfaceFunctionDefinitionDirective`