swap Interface

public interface swap

Swap the values of two variables

Example usage

use variableKind
use m_strings, only: str
use m_swap, only: swap
real(r64) :: a,b
a = 10.d0
b = 100.d0
call swap(a,b)
write(*,'(a)') 'Values were swapped? '//str(a == 100.d0 .and. b == 10.d0)

Called By

interface~~swap~~CalledByGraph interface~swap swap proc~partition3way_d1d partition3way_d1D proc~partition3way_d1d->interface~swap interface~partition3way partition3way interface~partition3way->proc~partition3way_d1d
Help


Module Procedures

private subroutine swap_i1(this, that)

Interfaced with swap()

Arguments

Type IntentOptional AttributesName
integer(kind=i32), intent(inout) :: this
integer(kind=i32), intent(inout) :: that

private subroutine swap_id1(this, that)

Interfaced with swap()

Arguments

Type IntentOptional AttributesName
integer(kind=i64), intent(inout) :: this
integer(kind=i64), intent(inout) :: that

private subroutine swap_r1(this, that)

Interfaced with swap()

Arguments

Type IntentOptional AttributesName
real(kind=r32), intent(inout) :: this
real(kind=r32), intent(inout) :: that

private subroutine swap_d1(this, that)

Interfaced with swap()

Arguments

Type IntentOptional AttributesName
real(kind=r64), intent(inout) :: this
real(kind=r64), intent(inout) :: that

private subroutine swap_c1(this, that)

Interfaced with swap()

Arguments

Type IntentOptional AttributesName
complex(kind=r32) :: this
complex(kind=r32) :: that

private subroutine swap_z1(this, that)

Interfaced with swap()

Arguments

Type IntentOptional AttributesName
complex(kind=r64) :: this
complex(kind=r64) :: that

private subroutine swap_l1(this, that)

Interfaced with swap()

Arguments

Type IntentOptional AttributesName
logical :: this
logical :: that

allocate allocate_test appendString arange argInsertionsort argMedianOf3 argPartition argSelect argSort array1D_test binarySearch checkIsOpen closeFile compact compare compare_d1 copy copy_test countEntries crossproduct cumprod cumsum dArgDynamicArray dArgDynamicArray_test daysInMonth daysInYear dDynamicArray dDynamicArray_test deallocate debug debug_s deleteFile diff eMsg fastTwoDiff fastTwoSum fErr fileExists fileIO_test geometricMean getExtension getFileSize getNFileLines getRandomSeed hasExtension hasNentries iachar1D iArgDynamicArray iArgDynamicArray_test idArgDynamicArray idArgDynamicArray_test idDynamicArray idDynamicArray_test iDynamicArray iDynamicArray_test ind2sub indexing_test insertionsort integerBin intervalSearch isLeapYear isOpen isSorted isString KdTree KdTree_test lowerCase maths_test mean median medianOf3 mErr msg norm1 normI openBinaryFile openFile partition partition3way partition3way_d1D prependString Prng Prng_test ProgressBar project random_test rArgDynamicArray rArgDynamicArray_test rDynamicArray rDynamicArray_test read1Dble read1Integer readline readline reallocate reallocate_test removeComments repeat replacedelim rngExponential rngExponential_d1 rngExponential_d1D rngExponential_d2D rngExponential_d3D rngExponential_unscaled_d1 rngInteger rngInteger_i1 rngInteger_i1D rngInteger_i2D rngInteger_i3D rngNormal rngNormal_d1 rngNormal_d1D rngNormal_d2D rngNormal_d3D rngUniform rngUniform_d1 rngUniform_d1D rngUniform_d2D rngUniform_d3D rngUniform_xorshift rngWeibull rngWeibull_d1 rngWeibull_d1D rngWeibull_d2D rngWeibull_d3D secondsToHMS select select_test setPrng setPrng_withSeed setPrng_WOseed shuffle simpleSearch skipFileLines sort sorting_test std str strings_test sub2ind swap test tester time_test timeInSeconds timeToInteger trimExtension trimmedmean twoDiff twoSum upperCase variance wMsg writeline