Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(structure_type), | intent(out) | :: | self |
Instance of the molecular structure data |
||
integer, | intent(in) | :: | unit |
File handle |
||
type(error_type), | intent(out), | allocatable | :: | error |
Error handling |
subroutine read_sdf(self, unit, error) !> Instance of the molecular structure data type(structure_type), intent(out) :: self !> File handle integer, intent(in) :: unit !> Error handling type(error_type), allocatable, intent(out) :: error character(len=:), allocatable :: line integer :: stat, lnum, pos call read_molfile(self, unit, error) if (allocated(error)) return lnum = 0 stat = 0 do while(stat == 0) call next_line(unit, line, pos, lnum, stat) if (index(line, '$$$$') == 1) exit end do if (stat /= 0) then call fatal_error(error, "Failed while reading SDF key-value pairs") return end if end subroutine read_sdf