aot_path_dump Subroutine

public subroutine aot_path_dump(path, outputUnit)

Dumps the complete path to the given output unit.

This routine is for debugging purposes. It takes the path and, beginning with the global node, dumps all following nodes to the output unit provided by the caller.

Arguments

Type IntentOptional Attributes Name
type(aot_path_type), intent(in) :: path

The path which information should be printed

integer, intent(in) :: outputUnit

The unit to use to write the path data


Source Code

  subroutine aot_path_dump( path, outputUnit )
    !> The path which information should be printed
    type(aot_path_type), intent(in) :: path
    !> The unit to use to write the path data
    integer, intent(in) :: outputUnit

    type(aot_path_node_type), pointer :: current

    write(outputUnit,*) 'Path:'
    write(outputUnit,*) '  Filename: ', path%LuaFilename
    write(outputUnit,'(A,I10)') '   root handle: ', path%rootHandle
    if (associated(path%globalNode)) then
      current => path%globalNode
      do while(associated(current))
        if(associated(current,path%globalNode)) then
          write(outputUnit,*) '  Global node: '
        else
          write(outputUnit,*) '  next: '
        end if
        write(outputUnit,*) '    NodeType: ', current%NodeType
        write(outputUnit,*) '    ID_Kind: ', current%ID_Kind
        if (trim(current%ID_Kind) == 'key') then
          write(outputUnit,*) '    key: ', current%key
        else
          write(outputUnit,'(A,I10)') '     pos: ', current%pos
        end if
        current => current%child
      end do
    end if

  end subroutine aot_path_dump