Documentation for module array_types

Array objects with reference counting.

source: array_types.F
Loading...

public Types:

array_i1d_obj
...

Generic procedures:

array_data
array_equality
array_exists
array_get
array_hold
array_new
array_nullify
array_release
array_size

public Types:

TYPE :: array_i1d_obj

...


POINTER :: low => NULL() ...


Generic procedure array_data

...

INTENT(in)
:: array ×

Generic procedure array_equality

...

INTEGER,
POINTER
:: array1(:) ×
INTENT(in)
:: array1 ×
INTEGER,
POINTER
:: array2(:) ×
INTENT(in)
:: array2 ×

Generic procedure array_exists

...

INTENT(in)
:: array ×

Generic procedure array_get

...

INTENT(in)
:: array ×
INTEGER,
INTENT(in),
POINTER
:: array(:) ×
INTEGER,
INTENT(in)
:: index1 × ×

Generic procedure array_hold

...

INTENT(inout)
:: array ×

Generic procedure array_new

...

INTENT(out)
:: array × ×
INTEGER,
POINTER
:: data(:) ×
INTEGER,
INTENT(in)
:: data(:) ×
LOGICAL,
INTENT(in),
OPTIONAL
:: gift ×
INTEGER,
INTENT(in)
:: lb ×

Generic procedure array_nullify

...

INTENT(inout)
:: array ×

Generic procedure array_release

...

INTENT(inout)
:: array ×

Generic procedure array_size

...

INTENT(in)
:: array ×

FUNCTIONarray_data_i1d(array)

...

Return Value ::
INTEGER
Arguments:
INTENT(in)
:: array ...

PURE FUNCTIONarray_equality_i1(array1, array2)

...

Return Value ::
LOGICAL
Arguments:
INTEGER,
POINTER
:: array1(:) ...
INTEGER,
POINTER
:: array2(:) ...

PURE FUNCTIONarray_equality_i1d(array1, array2)

...

Return Value ::
LOGICAL
Arguments:
INTENT(in)
:: array1 ...
INTENT(in)
:: array2 ...

PURE FUNCTIONarray_exists_i1d(array)

...

Return Value ::
LOGICAL
Arguments:
INTENT(in)
:: array ...

PURE FUNCTIONarray_get_i1d(array, index1)

...

Return Value ::
INTEGER
Arguments:
INTENT(in)
:: array ...
INTEGER,
INTENT(in)
:: index1 ...

PURE FUNCTIONarray_get_i1(array, index1)

...

Return Value ::
INTEGER
Arguments:
INTEGER,
INTENT(in),
POINTER
:: array(:) ...
INTEGER,
INTENT(in)
:: index1 ...

SUBROUTINEarray_hold_i1d(array)

...

Arguments:
INTENT(inout)
:: array ...

SUBROUTINEarray_new_i1d(array, data, gift)

...

Arguments:
INTENT(out)
:: array ...
INTEGER,
POINTER
:: data(:) ...
LOGICAL,
INTENT(in),
OPTIONAL
:: gift ...

SUBROUTINEarray_new_i1d_lb(array, data, lb)

...

Arguments:
INTENT(out)
:: array ...
INTEGER,
INTENT(in)
:: data(:) ...
INTEGER,
INTENT(in)
:: lb ...

PURE SUBROUTINEarray_nullify_i1d(array)

...

Arguments:
INTENT(inout)
:: array ...

SUBROUTINEarray_release_i1d(array)

...

Arguments:
INTENT(inout)
:: array ...

PURE FUNCTIONarray_size_i1d(array)

...

Return Value ::
INTEGER
Arguments:
INTENT(in)
:: array ...

private Parameters/Types:

private Types:

TYPE :: array_i1d_type

...


INTEGER,
DIMENSION(:), POINTER :: data => NULL() ...
INTEGER
:: refcount = 0 ...