fdoc

subroutineprocedure_bodyprivate

subroutine procedure_body(site, id, b)

Write what is specific to a procedure.

Arguments

NameTypeIntentAttributesDescription
sitetype(site_t)in

the site

idintegerin

the procedure

btype(buffer_t)inout

the HTML

Calls

Source

Show the code
subroutine procedure_body(site, id, b)
    type(site_t), intent(in) :: site        !! the site
    integer, intent(in) :: id               !! the procedure
    type(buffer_t), intent(inout) :: b      !! the HTML

    associate (e => site%p%list%box(id)%e)
        if (allocated(e%more%arg_ids)) then
            if (size(e%more%arg_ids) > 0) then
                call add(b, '<h2 id="arguments">Arguments</h2>'//achar(10))
                call argument_table(site, e%more%arg_ids, .false., b)
            end if
        end if
        if (e%result > 0) then
            call add(b, '<h2 id="result">Result</h2>'//achar(10))
            call argument_table(site, [e%result], .true., b)
        end if
        if (e%implements > 0) then
            call add(b, '<div class="meta"><span>')
            call add(b, merge('implements  ', 'implemented ', e%kind == E_MODPROC))
            call link_to(site, e%implements, site%p%list%box(e%implements)%e%name, b)
            call add(b, '</span></div>'//achar(10))
        end if
        call uses_section(site, id, b)
        call calls_section(site, id, b)
        call source_section(site, id, b)
    end associate
end subroutine procedure_body

Graphs

Calls

Called by