typeprocedure_header_t
The parts of a subroutine or function statement.
Components
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
| args | type(string_t) | allocatabledimension(:) | the dummy arguments | |
| attribs | type(string_t) | allocatabledimension(:) | the prefix attributes ( | |
| bind_c | character(len=:) | allocatable | the text in | |
| is_function | logical | .false. | true for a function | |
| name | character(len=:) | allocatable | the name | |
| ok | logical | .false. | false if this is no such statement | |
| prefix | character(len=:) | allocatable | what comes before the keyword, without attributes | |
| result_name | character(len=:) | allocatable | the name in |
Source
Show the code
type, public :: procedure_header_t
!! The parts of a `subroutine` or `function` statement.
character(len=:), allocatable :: name !! the name
character(len=:), allocatable :: prefix !! what comes before the keyword, without attributes
type(string_t), allocatable :: attribs(:) !! the prefix attributes (`pure`, `module`, ...)
type(string_t), allocatable :: args(:) !! the dummy arguments
character(len=:), allocatable :: result_name !! the name in `result(...)`, if any
character(len=:), allocatable :: bind_c !! the text in `bind(...)`, if any
logical :: is_function = .false. !! true for a function
logical :: ok = .false. !! false if this is no such statement
end type procedure_header_t