aot_out_val_string Subroutine

private subroutine aot_out_val_string(put_conf, val, vname, advance_previous)

Put string variables into the Lua script.

The value is passed in with val, optionally you can assign a name to it with the vname argument. If it should be put on the same line as the previous entry, you have to set advance_previous=.false.

Arguments

Type IntentOptional AttributesName
type(aot_out_type), intent(inout) :: put_conf
character(len=*), intent(in) :: val
character(len=*), intent(in), optional :: vname
logical, intent(in), optional :: advance_previous

Calls

proc~~aot_out_val_string~~CallsGraph proc~aot_out_val_string aot_out_val_string proc~aot_out_breakline aot_out_breakline proc~aot_out_val_string->proc~aot_out_breakline

Called by

proc~~aot_out_val_string~~CalledByGraph proc~aot_out_val_string aot_out_val_string interface~aot_out_val aot_out_val interface~aot_out_val->proc~aot_out_val_string

Contents

Source Code


Source Code

  subroutine aot_out_val_string(put_conf, val, vname, advance_previous)
    !------------------------------------------------------------------------
    type(aot_out_type), intent(inout)  :: put_conf
    character(len=*), optional, intent(in) :: vname
    character(len=*), intent(in) :: val
    logical, optional, intent(in) :: advance_previous
    !------------------------------------------------------------------------
    character(len=3) :: adv_string
    !------------------------------------------------------------------------

    if (put_conf%level > 0) then
      ! Leave the advancing to the next entry in the table.
      adv_string = 'no'
    else
      ! Not within a table, finalize the global definition with a newline.
      adv_string = 'yes'
    end if

    call aot_out_breakline(put_conf, advance_previous)

    if (present(vname)) then
      write(put_conf%outunit, fmt="(a)", advance=adv_string) &
        & trim(vname)//" = '"//trim(val)//"'"
    else
      write(put_conf%outunit, fmt="(a)", advance=adv_string) &
        &  "'"//trim(val)//"'"
    end if

  end subroutine aot_out_val_string