functionpublic_symbols
The public names of module which in a category: 1 procedures, 2 abstract interfaces, 3 types,
4 variables.
Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
| p | type(project_t) | in | the project | |
| which | integer | in | position in | |
| category | integer | in | the category |
Result
| Name | Type | Attributes | Description |
|---|---|---|---|
| symbols | type(symbol_t) | privateallocatabledimension(:) |
Source
Show the code
function public_symbols(p, which, category) result(symbols)
type(project_t), intent(in) :: p !! the project
integer, intent(in) :: which !! position in `p%modules`
integer, intent(in) :: category !! the category
type(symbol_t), allocatable :: symbols(:)
select case (category)
case (1); symbols = p%pub(which)%procs%s(:p%pub(which)%procs%n)
case (2); symbols = p%pub(which)%absints%s(:p%pub(which)%absints%n)
case (3); symbols = p%pub(which)%types%s(:p%pub(which)%types%n)
case default; symbols = p%pub(which)%vars%s(:p%pub(which)%vars%n)
end select
end function public_symbols