$ public :: foreach
$ ! ======================= $ ! insert $ ! ======================= $ subroutine vector_insert_size_kind( & $ & this, index, value, unused, rc) $ class(GeomFactoryVector), target, intent(inout) :: this $ $ integer(kind=GFTL_SIZE_KIND), intent(in) :: index $ $ class(GeomFactory), intent(in) :: value $ type (KeywordEnforcer), optional, intent(in) :: unused $ integer, optional, intent(out) :: rc $ $ class(GeomFactory), allocatable :: temp $ integer(kind=GFTL_SIZE_KIND) :: i, n $ $ if (.false.) print*,shape(unused) $ $ n = this%vsize $ if (index==n+1) then $ call this%push_back(value) $ ! Workaround for NAG -6221 - temp needs some status $ allocate(temp, source=value) $ return $ endif $ call this%grow_to(this%vsize+1) $ allocate(temp, source=this%elements(n)%item) $ call this%resize(n+1, temp, rc=rc) $ $ do i = n, index, -1 $ call move_alloc(from=this%elements(index-1)%item,to=this%elements(index)%item) $ end do $ $ allocate(this%elements(index)%item, source=value) $ $ return $ end subroutine vector_insert_size_kind $ $ $ subroutine vector_insert_default(this, index, value) $ class(GeomFactoryVector), intent(inout) :: this $ integer, intent(in) :: index $ class(GeomFactory), intent(in) :: value $ $ call this%insert(int(index,kind=GFTL_SIZE_KIND), value) $ end subroutine vector_insert_default
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | public, | parameter | :: | BAD_ALLOC | = | 2 | |
integer, | public, | parameter | :: | GFTL_SIZE_KIND | = | selected_int_kind(18) | |
integer, | public, | parameter | :: | ILLEGAL_INPUT | = | 3 | |
integer, | public, | parameter | :: | LENGTH_ERROR | = | 4 | |
integer, | public, | parameter | :: | OUT_OF_RANGE | = | 1 | |
integer, | public, | parameter | :: | SUCCESS | = | 0 | |
integer, | public, | parameter | :: | TYPE_HAS_NO_DEFAULT_VALUE | = | 5 | |
type(NO_TYPE_), | public, | parameter | :: | NO_TYPE__ | = | NO_TYPE_() |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=GFTL_SIZE_KIND), | intent(in) | :: | n | |||
class(GeomFactory), | intent(in), | optional | :: | value |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | n | |||
class(GeomFactory), | intent(in), | optional | :: | value |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(in) | :: | first | |||
type(GeomFactoryVectorIterator), | intent(in) | :: | last |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVector) | :: | x |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(inout) | :: | it | |||
integer(kind=selected_int_kind(18)), | intent(in) | :: | n |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(inout) | :: | it | |||
integer, | intent(in) | :: | n |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVector), | intent(in), | target | :: | cont |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(GeomFactoryVectorIterator), | intent(in) | :: | a | |||
type(GeomFactoryVectorIterator), | intent(in) | :: | b |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVector), | intent(in), | target | :: | cont |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(in) | :: | do_not_use | |||
type(KeywordEnforcer), | intent(in) | :: | unused |
Type | Intent | Optional | Attributes | Name | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(in) | :: | first | |||||||||||||||||
type(GeomFactoryVectorIterator), | intent(in) | :: | last | |||||||||||||||||
private function p(item)Arguments
Return Value logical |
Type | Intent | Optional | Attributes | Name | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(in) | :: | first | |||||||||||||||||
type(GeomFactoryVectorIterator), | intent(in) | :: | last | |||||||||||||||||
private function q(item)Arguments
Return Value logical |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVector), | intent(in), | target | :: | cont |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVector), | intent(in), | target | :: | cont |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(in) | :: | it |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(in) | :: | it | |||
integer(kind=selected_int_kind(18)), | intent(in) | :: | n |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(in) | :: | it | |||
integer, | intent(in) | :: | n |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(in) | :: | a | |||
integer(kind=selected_int_kind(18)), | intent(in) | :: | n |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=selected_int_kind(18)), | intent(in) | :: | n | |||
type(GeomFactoryVectorIterator), | intent(in) | :: | a |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | n | |||
type(GeomFactoryVectorIterator), | intent(in) | :: | a |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(in) | :: | a | |||
integer, | intent(in) | :: | n |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(in) | :: | a | |||
integer(kind=selected_int_kind(18)), | intent(in) | :: | n |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(in) | :: | a | |||
integer, | intent(in) | :: | n |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(in) | :: | a | |||
type(GeomFactoryVectorIterator), | intent(in) | :: | b |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(in) | :: | a | |||
type(GeomFactoryVectorIterator), | intent(in) | :: | b |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(in) | :: | a | |||
type(GeomFactoryVectorIterator), | intent(in) | :: | b |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(in) | :: | it |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(in) | :: | it | |||
integer(kind=selected_int_kind(18)), | intent(in) | :: | n |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(GeomFactoryVectorIterator), | intent(in) | :: | it | |||
integer, | intent(in) | :: | n |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(GeomFactoryVector), | intent(inout), | target | :: | this | ||
type(GeomFactoryVector), | intent(inout), | target | :: | x |
private function vector_new_vector_empty () | |
private function vector_new_vector_fill_size_kind (n, value) | |
private function vector_new_vector_fill_default (n, value) | |
private function vector_new_vector_range (first, last) | |
private function vector_new_vector_copy (x) |
generic, public :: at => at_default | |
generic, public :: at => of_default | |
generic, public :: at => at_size_kind | |
generic, public :: at => of_size_kind | |
procedure, public :: at_default => vector_at_default | |
procedure, public :: at_size_kind => vector_at_size_kind | |
procedure, public :: back => vector_back | |
procedure, public :: begin => vector_begin | |
procedure, public :: capacity => vector_capacity | |
procedure, public :: clear => vector_clear | |
procedure, public :: empty => vector_empty | |
procedure, public :: end => vector_end | |
generic, public :: erase => erase_one | |
generic, public :: erase => erase_range | |
procedure, public :: erase_one => vector_erase_one | |
procedure, public :: erase_range => vector_erase_range | |
procedure, public :: front => vector_front | |
procedure, public :: ftn_begin => vector_ftn_begin | |
procedure, public :: ftn_end => vector_ftn_end | |
generic, public :: insert => vector_insert_one | |
generic, public :: insert => vector_insert_count_size_kind | |
generic, public :: insert => vector_insert_count_default | |
generic, public :: insert => vector_insert_range | |
procedure, public, nopass :: max_size => vector_max_size | |
generic, public :: of => of_default | |
generic, public :: of => of_size_kind | |
procedure, public :: of_default => vector_of_default | |
procedure, public :: of_size_kind => vector_of_size_kind | |
procedure, public :: pop_back => vector_pop_back | |
procedure, public :: push_back => vector_push_back | |
procedure, public :: rbegin => vector_rbegin | |
procedure, public :: rend => vector_rend | |
generic, public :: reserve => reserve_default | |
generic, public :: reserve => reserve_size_kind | |
procedure, public :: reserve_default => vector_reserve_default | |
procedure, public :: reserve_size_kind => vector_reserve_size_kind | |
procedure, public :: reset => vector_reset | |
generic, public :: resize => resize_default | |
generic, public :: resize => resize_size_kind | |
procedure, public :: resize_default => vector_resize_default | |
procedure, public :: resize_size_kind => vector_resize_size_kind | |
generic, public :: set => set_default | |
generic, public :: set => set_size_kind | |
procedure, public :: set_default => vector_set_default | |
procedure, public :: set_size_kind => vector_set_size_kind | |
procedure, public :: shrink_to_fit => vector_shrink_to_fit | |
procedure, public :: size => vector_size | |
procedure, public :: swap => vector_swap | |
procedure, public :: vector_insert_count_default | |
procedure, public :: vector_insert_count_size_kind | |
procedure, public :: vector_insert_one | |
procedure, public :: vector_insert_range | |
generic, public :: write(formatted) => write_formatted | |
procedure, public :: write_formatted => vector_write_formatted |
generic, public :: add => vector_iter_add_n_default | |
generic, public :: add => vector_iter_add_n_size_kind | |
procedure, public :: next => vector_iter_next | |
generic, public :: of => vector_iter_of | |
generic, public :: of => vector_iter_of_offset_default | |
generic, public :: of => vector_iter_of_offset_size_kind | |
procedure, public :: prev => vector_iter_prev | $ procedure :: back_inserter => vector_back_inserter $ procedure :: front_inserter => vector_front_inserter $ procedure :: inserter => vector_inserter $ procedure :: make_move_iterator => vector_make_move_iterator |
generic, public :: sub => vector_iter_sub_n_default | |
generic, public :: sub => vector_iter_sub_n_size_kind | |
procedure, public :: vector_iter_add_n_default | |
procedure, public :: vector_iter_add_n_size_kind | |
procedure, public :: vector_iter_of | |
procedure, public :: vector_iter_of_offset_default | |
procedure, public :: vector_iter_of_offset_size_kind | |
procedure, public :: vector_iter_sub_n_default | |
procedure, public :: vector_iter_sub_n_size_kind |
$ procedure :: back_inserter => vector_back_inserter $ procedure :: front_inserter => vector_front_inserter $ procedure :: inserter => vector_inserter $ procedure :: make_move_iterator => vector_make_move_iterator
generic, public :: add => vector_riter_add_n_default | |
generic, public :: add => vector_riter_add_n_size_kind | |
procedure, public :: next => vector_riter_next | |
generic, public :: of => vector_riter_of | |
generic, public :: of => vector_riter_of_offset_size_kind | |
generic, public :: of => vector_riter_of_offset_default | |
procedure, public :: prev => vector_riter_prev | |
generic, public :: sub => vector_riter_sub_n_default | |
generic, public :: sub => vector_riter_sub_n_size_kind | |
procedure, public :: vector_riter_add_n_default | |
procedure, public :: vector_riter_add_n_size_kind | |
procedure, public :: vector_riter_of | |
procedure, public :: vector_riter_of_offset_default | |
procedure, public :: vector_riter_of_offset_size_kind | |
procedure, public :: vector_riter_sub_n_default | |
procedure, public :: vector_riter_sub_n_size_kind |