write_parallel_open_block Function

private function write_parallel_open_block(self, name) result(error)

Arguments

TypeIntentOptionalAttributesName
class(xml_writer_abstract), intent(inout) :: self
character, intent(in), optional :: name

Return Value integer(kind=I4P)


Calls

proc~~write_parallel_open_block~~CallsGraph proc~write_parallel_open_block write_parallel_open_block interface~str str proc~write_parallel_open_block->interface~str proc~str_i8p str_I8P interface~str->proc~str_i8p proc~str_a_r8p str_a_R8P interface~str->proc~str_a_r8p proc~str_r8p str_R8P interface~str->proc~str_r8p proc~str_a_i4p str_a_I4P interface~str->proc~str_a_i4p proc~strf_i2p strf_I2P interface~str->proc~strf_i2p proc~str_r4p str_R4P interface~str->proc~str_r4p proc~str_i1p str_I1P interface~str->proc~str_i1p proc~strf_i4p strf_I4P interface~str->proc~strf_i4p proc~str_a_r4p str_a_R4P interface~str->proc~str_a_r4p proc~strf_r4p strf_R4P interface~str->proc~strf_r4p proc~str_i2p str_I2P interface~str->proc~str_i2p proc~str_a_i2p str_a_I2P interface~str->proc~str_a_i2p proc~strf_i8p strf_I8P interface~str->proc~strf_i8p proc~str_bol str_bol interface~str->proc~str_bol proc~strf_r8p strf_R8P interface~str->proc~strf_r8p proc~str_i4p str_I4P interface~str->proc~str_i4p proc~str_a_i8p str_a_I8P interface~str->proc~str_a_i8p proc~strf_i1p strf_I1P interface~str->proc~strf_i1p proc~str_a_i1p str_a_I1P interface~str->proc~str_a_i1p proc~str_a_r8p->proc~str_r8p proc~compact_real_string compact_real_string proc~str_r8p->proc~compact_real_string proc~str_a_i4p->proc~str_i4p proc~str_r4p->proc~compact_real_string proc~str_a_r4p->proc~str_r4p proc~str_a_i2p->proc~str_i2p proc~str_a_i8p->proc~str_i8p proc~str_a_i1p->proc~str_i1p

Contents


Source Code

   function write_parallel_open_block(self, name) result(error)
   !< Write a block (open) container.
   class(xml_writer_abstract), intent(inout)        :: self   !< Writer.
   character(*),               intent(in), optional :: name   !< Block name.
   integer(I4P)                                     :: error  !< Error status.
   type(string)                                     :: buffer !< Buffer string.

   self%vtm_block = self%vtm_block + 1
   if (present(name)) then
      buffer = 'index="'//trim(str((self%vtm_block(1) + self%vtm_block(2)),.true.))//'" name="'//trim(adjustl(name))//'"'
   else
      buffer = 'index="'//trim(str((self%vtm_block(1) + self%vtm_block(2)),.true.))//'"'
   endif
   call self%write_start_tag(name='Block', attributes=buffer%chars())
   error = self%error
   endfunction write_parallel_open_block