subroutinetype_bodyprivate
subroutine type_body(site, id, variables, bindings, finals, b)
Write what is specific to a derived type.
Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
| site | type(site_t) | in | the site | |
| id | integer | in | the type | |
| variables | integer | in | dimension(:) | its components |
| bindings | integer | in | dimension(:) | its bindings |
| finals | integer | in | dimension(:) | its final procedures |
| b | type(buffer_t) | inout | the HTML |
Calls
Source
Show the code
subroutine type_body(site, id, variables, bindings, finals, b)
type(site_t), intent(in) :: site !! the site
integer, intent(in) :: id !! the type
integer, intent(in) :: variables(:) !! its components
integer, intent(in) :: bindings(:) !! its bindings
integer, intent(in) :: finals(:) !! its final procedures
type(buffer_t), intent(inout) :: b !! the HTML
integer :: k
associate (e => site%p%list%box(id)%e)
if (allocated(e%more%extends)) then
call add(b, '<div class="meta"><span>extends ')
call link_to(site, e%extends_id, e%more%extends, b)
call add(b, '</span></div>'//achar(10))
end if
if (size(e%attribs) > 0) then
call add(b, '<ul class="chips">')
call add_words(e%attribs, b)
call add(b, '</ul>'//achar(10))
end if
if (size(variables) > 0) then
call add(b, '<h2 id="components">Components</h2>'//achar(10))
call argument_table(site, variables, .true., b)
end if
if (e%constructor > 0) then
call add(b, '<h2 id="constructor">Constructor</h2>'//achar(10))
call summary_item(site, e%constructor, b)
end if
if (size(bindings) > 0) then
call add(b, '<h2 id="bindings">Type-bound procedures</h2>'//achar(10))
call binding_table(site, bindings, b)
end if
if (size(finals) > 0) then
call add(b, '<h2 id="final">Final procedures</h2>'//achar(10)//'<ul class="chips">')
do k = 1, size(finals)
call add(b, '<li>')
call link_to(site, site%p%list%box(finals(k))%e%proto_id, site%p%list%box(finals(k))%e%name, b)
call add(b, '</li>')
end do
call add(b, '</ul>'//achar(10))
end if
call source_section(site, id, b)
end associate
end subroutine type_body