dpi_function_proto ::= function named_function_proto
named_function_proto
| [ signing
] function_data_type function_identifier
( list_of_dpi_proto_formals )
list_of_dpi_proto_formals ::=
[ { attribute_instance } dpi_proto_formal
{ , { attribute_instance } dpi_proto_formal
} ]
dpi_proto_formal ::=
data_type [ port_identifier
dpi_dimension { , port_identifier dpi_dimension } ]