MONC
Private Member Functions | List of all members
collections_mod::c_pop_logical Interface Reference

Pops a logical element off the stack or queue. More...

Private Member Functions

logical function stack_pop_logical (specificstack)
 Pops an element off the stack (LIFO) More...
 
logical function queue_pop_logical (specificqueue)
 Pops the queue element off the head of the queue (FIFO) More...
 

Detailed Description

Pops a logical element off the stack or queue.

This has a time complexity of O(1)

Parameters
collectionThe specific stack or queue involved
Returns
Logical element which has been popped off the collection or raises and error if none is found

Definition at line 194 of file collections.F90.

Member Function/Subroutine Documentation

◆ queue_pop_logical()

logical function collections_mod::c_pop_logical::queue_pop_logical ( type(queue_type), intent(inout)  specificqueue)
private

Pops the queue element off the head of the queue (FIFO)

Do not call directly from external module, this is called via the appropriate interface

Parameters
specificqueueThe specific queue involved
Returns
Logical element at head of the queue or raises an error if there is none

Definition at line 2615 of file collections.F90.

2615  type(queue_type), intent(inout) :: specificqueue
2616  logical :: queue_pop_logical
2617 
2618  class(*), pointer :: generic
2619 
2620  generic=>queue_pop_generic(specificqueue)
2621  if (.not. associated(generic)) call log_log(log_error, "Can not pop logical from queue")
2622  queue_pop_logical=conv_to_logical(generic, .false.)

◆ stack_pop_logical()

logical function collections_mod::c_pop_logical::stack_pop_logical ( type(stack_type), intent(inout)  specificstack)
private

Pops an element off the stack (LIFO)

Do not call directly from external module, this is called via the appropriate interface

Parameters
specificstackThe specific stack involved
Returns
Logical data of the last element added to the stack or raises an error if none is found

Definition at line 2319 of file collections.F90.

2319  type(stack_type), intent(inout) :: specificstack
2320  logical :: stack_pop_logical
2321 
2322  class(*), pointer :: generic
2323 
2324  generic=>stack_pop_generic(specificstack)
2325  if (.not. associated(generic)) call log_log(log_error, "Can not pop logical from stack")
2326  stack_pop_logical=conv_to_logical(generic, .false.)

The documentation for this interface was generated from the following file: