appendUnique Interface

public interface appendUnique

Calls

interface~~appendunique~~CallsGraph interface~appendunique appendUnique proc~tem_appendint1darrayunique tem_appendInt1dArrayUnique interface~appendunique->proc~tem_appendint1darrayunique proc~tem_appendintlistunique tem_appendIntListUnique interface~appendunique->proc~tem_appendintlistunique proc~tem_appendintlong1darrayunique tem_appendIntLong1dArrayUnique interface~appendunique->proc~tem_appendintlong1darrayunique proc~tem_appendlonglistunique tem_appendLongListUnique interface~appendunique->proc~tem_appendlonglistunique

Module Procedures

private subroutine tem_appendIntListUnique(firstEntry, entryPos, nItems, added)

append an entry at the end of the integer list If the first entry is zero, write into that one Check, if the current entry already exists Count, how many elements there are in the list

Arguments

Type IntentOptional Attributes Name
type(tem_intList), pointer :: firstEntry

linked list of resulting elements building the neighbor

integer(kind=int_k), intent(in) :: entryPos

Add that element

integer, intent(inout) :: nItems

how many items are in list

logical, intent(out), optional :: added

has the current item been added?

private subroutine tem_appendLongListUnique(firstEntry, entryPos, nItems, added)

append an entry at the end of the integer list If the first entry is zero, write into that one Check, if the current entry already exists Count, how many elements there are in the list

Arguments

Type IntentOptional Attributes Name
type(tem_longList), pointer :: firstEntry

linked list of resulting elements building the neighbor

integer(kind=long_k), intent(in) :: entryPos

Add that element

integer, intent(inout) :: nItems

how many items are in list

logical, intent(out), optional :: added

has the current item been added?

private subroutine tem_appendInt1dArrayUnique(Array, Value, nElems, Pos, Added)

append an entry to an allocatable array 1d with single integer at the end If the array is too small, reallocate with double size

Arguments

Type IntentOptional Attributes Name
integer(kind=int_k), intent(inout), allocatable :: Array(:)

array to append value to

integer(kind=int_k), intent(in) :: Value

The value to add as an entry in Array

integer, intent(inout) :: nElems

Number of entries in the array (changes, if added = .true.)

integer, intent(out) :: Pos

position the value was appended

logical, intent(out) :: Added

new entry in array added?

private subroutine tem_appendIntLong1dArrayUnique(Array, Value, nElems, Pos, Added)

append an entry to an allocatable array 1d with single integer at the end If the array is too small, reallocate with double size

Arguments

Type IntentOptional Attributes Name
integer(kind=long_k), intent(inout), allocatable :: Array(:)

array to append value to

integer(kind=long_k), intent(in) :: Value

The value to add as an entry in Array

integer, intent(inout) :: nElems

Number of entries in the array (changes, if added = .true.)

integer, intent(out) :: Pos

position the value was appended

logical, intent(out) :: Added

new entry in array added?