Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Source Code
subroutine write_start_tag(self,name,attributes)!< Write `<tag_name...>` start tag.class(xml_writer_abstract),intent(inout)::self!< Writer.character(*),intent(in)::name!< Tag name.character(*),intent(in),optional::attributes!< Tag attributes.self%tag=xml_tag(name=name,attributes_stream=attributes,sanitize_attributes_value=.true.,indent=self%indent)if(.not.self%is_volatile)then call self%tag%write(unit=self%xml,iostat=self%error,is_indented=.true.,end_record=end_rec,only_start=.true.)elseself%xml_volatile=self%xml_volatile//self%tag%stringify(is_indented=.true.,only_start=.true.)//end_recendifself%indent=self%indent+2endsubroutine write_start_tag