Pops a double precision real element off the stack or queue.
More...
|
real(kind=default_precision) function | stack_pop_real (specificstack) |
| Pops an element off the stack (LIFO). Converts between precision and from int. More...
|
|
real(kind=default_precision) function | queue_pop_real (specificqueue) |
| Pops the queue element off the head of the queue (FIFO). Converts between precision and from int. More...
|
|
Pops a double precision real element off the stack or queue.
This has a time complexity of O(1)
- Parameters
-
collection | The specific stack or queue involved |
- Returns
- Double precision real element which has been popped off the collection or raises and error if none is found
Definition at line 185 of file collections.F90.
◆ queue_pop_real()
real(kind=default_precision) function collections_mod::c_pop_real::queue_pop_real |
( |
type(queue_type), intent(inout) |
specificqueue | ) |
|
|
private |
Pops the queue element off the head of the queue (FIFO). Converts between precision and from int.
Do not call directly from external module, this is called via the appropriate interface
- Parameters
-
specificqueue | The specific queue involved |
- Returns
- Double precision real element at head of the queue or raises an error if there is none
Definition at line 2592 of file collections.F90.
2592 type(queue_type),
intent(inout) :: specificqueue
2593 real(kind=DEFAULT_PRECISION) :: queue_pop_real
2595 class(*),
pointer :: generic
2597 generic=>queue_pop_generic(specificqueue)
2598 if (.not.
associated(generic))
call log_log(log_error,
"Can not pop real from queue")
2599 select type(vr=>generic)
2600 type is (
real(kind=default_precision))
2603 queue_pop_real=conv_single_real_to_double(vr)
2605 queue_pop_real=conv_single_real_to_double(conv_to_real(vr))
◆ stack_pop_real()
real(kind=default_precision) function collections_mod::c_pop_real::stack_pop_real |
( |
type(stack_type), intent(inout) |
specificstack | ) |
|
|
private |
Pops an element off the stack (LIFO). Converts between precision and from int.
Do not call directly from external module, this is called via the appropriate interface
- Parameters
-
specificstack | The specific stack involved |
- Returns
- Double precision real data of the last element added to the stack or raises an error if none is found
Definition at line 2296 of file collections.F90.
2296 type(stack_type),
intent(inout) :: specificstack
2297 real(kind=DEFAULT_PRECISION) :: stack_pop_real
2299 class(*),
pointer :: generic
2301 generic=>stack_pop_generic(specificstack)
2302 if (.not.
associated(generic))
call log_log(log_error,
"Can not pop real from stack")
2303 select type(vr=>generic)
2304 type is (
real(kind=default_precision))
2307 stack_pop_real=conv_single_real_to_double(vr)
2309 stack_pop_real=conv_single_real_to_double(conv_to_real(vr))
The documentation for this interface was generated from the following file:
- /nfs/a277/earlcd/dev/monc/svn-git/monc/model_core/src/utils/collections.F90