iArgDynamicArray Derived Type

type, public :: iArgDynamicArray

type~~iargdynamicarray~~InheritsGraph type~iargdynamicarray iArgDynamicArray iDynamicArray iDynamicArray iDynamicArray->type~iargdynamicarray i, v
Help


Class that act as stacks, queues, and priority queues. See iArgDynamicArray_Class for more information on how to use this class.



Components

TypeVisibility AttributesNameInitial
type(iDynamicArray), public :: i

Argument of the values.

type(iDynamicArray), public :: v

Values.


Constructor

public interface iArgDynamicArray

  • private function init_iArgDynamicArray_i1(M, sorted, fixed) result(this)

    Overloaded by interface [[iArgDynamicArray(type)]]

    Arguments

    Type IntentOptional AttributesName
    integer(kind=i32), intent(in), optional :: M
    logical, intent(in), optional :: sorted
    logical, intent(in), optional :: fixed

    Return Value type(iArgDynamicArray)

  • private function init_iArgDynamicArray_i1D(i, values, M, sorted, fixed) result(this)

    Overloaded by interface [[iArgDynamicArray(type)]]

    Arguments

    Type IntentOptional AttributesName
    integer(kind=i32), intent(in) :: i(:)
    integer(kind=i32), intent(in) :: values(:)
    integer(kind=i32), intent(in), optional :: M
    logical, intent(in), optional :: sorted
    logical, intent(in), optional :: fixed

    Return Value type(iArgDynamicArray)


Type-Bound Procedures

procedure, public :: append => append_iArgDynamicArray

iArgDynamicArray%append() - Append a value to the end of the dynamic array. Will change a sorted dynamic array to unsorted.

  • private subroutine append_iArgDynamicArray(this, i, val)

    Overloaded type bound procedure iArgDynamicArray%append().

    Arguments

    Type IntentOptional AttributesName
    class(iArgDynamicArray) :: this
    integer(kind=i32) :: i

    Index of value

    integer(kind=i32) :: val

    Value to append

procedure, public :: argOf => argOf_iArgDynamicArray

iArgDynamicArray%argOf() - Get the argument of a value in a sorted dynamic array

  • private function argOf_iArgDynamicArray(this, val) result(i)

    Overloaded type bound procedure iArgDynamicArray%locationOf().

    Arguments

    Type IntentOptional AttributesName
    class(iArgDynamicArray) :: this
    integer(kind=i32) :: val

    Value to get the argument of.

    Return Value integer(kind=i32)

    Argument of the value.

procedure, public :: deallocate => deallocate_iArgDynamicArray

iArgDynamicArray%%deallocate() - Deallocate a dynamic array.

  • private subroutine deallocate_iArgDynamicArray(this)

    Overloaded type bound procedure iArgDynamicArray%deallocate().

    Arguments

    Type IntentOptional AttributesName
    class(iArgDynamicArray) :: this

procedure, public :: insertAt => insertAt_iArgDynamicArray

iArgDynamicArray%insertAt() - Insert a value at a given index.

  • private subroutine insertAt_iArgDynamicArray(this, loc, i, val)

    Overloaded type bound procedure iArgDynamicArray%insertAt().

    Arguments

    Type IntentOptional AttributesName
    class(iArgDynamicArray) :: this
    integer(kind=i32) :: loc

    Insert index and value at this location.

    integer(kind=i32) :: i

    index.

    integer(kind=i32) :: val

    Value.

procedure, public :: insertSorted => insertSorted_iArgDynamicArray

iArgDynamicArray%insertSorted() - Insert a value into a sorted dynamic array.

  • private subroutine insertSorted_iArgDynamicArray(this, i, val)

    Overloaded type bound procedure iArgDynamicArray%insertSorted().

    Arguments

    Type IntentOptional AttributesName
    class(iArgDynamicArray) :: this
    integer(kind=i32) :: i

    Index.

    integer(kind=i32) :: val

    Value.

procedure, public :: insertSortedUnique => insertSortedUnique_iArgDynamicArray

iArgDynamicArray%insertSortedUnique() - Inserts only unique numbers into a dynamic array.

  • private subroutine insertSortedUnique_iArgDynamicArray(this, i, val)

    Overloaded type bound procedure iArgDynamicArray%insertSortedUnique().

    Arguments

    Type IntentOptional AttributesName
    class(iArgDynamicArray) :: this
    integer(kind=i32) :: i

    Index.

    integer(kind=i32) :: val

    Value.

procedure, public :: isEmpty => isEmpty_iArgDynamicArray

iArgDynamicArray%isEmpty() - True if the array is empty.

  • private function isEmpty_iArgDynamicArray(this) result(yes)

    Overloaded type bound procedure iArgDynamicArray%isEmpty()

    Arguments

    Type IntentOptional AttributesName
    class(iArgDynamicArray) :: this

    Return Value logical

    Array is empty

procedure, public :: isFilled => isFilled_iArgDynamicArray

iArgDynamicArray%isFilled() - True if the allocated memory has been filled.

  • private function isFilled_iArgDynamicArray(this) result(yes)

    Overloaded type bound procedure iArgDynamicArray%isFilled()

    Arguments

    Type IntentOptional AttributesName
    class(iArgDynamicArray) :: this

    Return Value logical

    Array is filled

procedure, public :: locationOf => locationOf_iArgDynamicArray

iArgDynamicArray%locationOf() - Get the location of a value in a sorted dynamic array.

  • private function locationOf_iArgDynamicArray(this, val) result(i)

    Overloaded type bound procedure iArgDynamicArray%locationOf().

    Arguments

    Type IntentOptional AttributesName
    class(iArgDynamicArray) :: this
    integer(kind=i32) :: val

    Value to get the argument of.

    Return Value integer(kind=i32)

    Index of the value.

procedure, public :: prepend => prepend_iArgDynamicArray

iArgDynamicArray%prepend() - Prepend a value to the start of the dynamic array. Only for unsorted dynamic arrays

  • private subroutine prepend_iArgDynamicArray(this, i, val)

    Overloaded type bound procedure iArgDynamicArray%prepend().

    Arguments

    Type IntentOptional AttributesName
    class(iArgDynamicArray) :: this
    integer(kind=i32) :: i

    Prepend indices with this index.

    integer(kind=i32) :: val

    Prepend values with this value.

procedure, public :: remove => remove_iArgDynamicArray

iArgDynamicArray%remove() - Remove an element from the array.

  • private subroutine remove_iArgDynamicArray(this, i)

    Overloaded type bound procedure iArgDynamicArray%remove().

    Arguments

    Type IntentOptional AttributesName
    class(iArgDynamicArray) :: this
    integer(kind=i32) :: i

    Remove the elements at this location.

procedure, public :: tighten => tighten_iArgDynamicArray

iArgDynamicArray%tighten() - Removes excess buffer memory and trims it to the current length.

  • private subroutine tighten_iArgDynamicArray(this)

    Overloaded type bound procedure iArgDynamicArray%tighten().

    Arguments

    Type IntentOptional AttributesName
    class(iArgDynamicArray) :: this