dbcsr_btree Module

B-tree


Variables

Type Visibility Attributes Name Initial
integer, private, parameter :: keyt = SELECTED_INT_KIND(10)
integer, private, parameter :: valt = SELECTED_INT_KIND(5)
integer, private, parameter :: sp = KIND(0.0)
integer, private, parameter :: dp = KIND(0.0d0)

Interfaces

public interface btree_new

  • private subroutine btree_new_i8_sp2d(tree, order)

    Arguments

    Type IntentOptional Attributes Name
    type(btree_i8_sp2d), intent(out) :: tree
    integer, intent(in), optional :: order
  • private subroutine btree_new_i8_dp2d(tree, order)

    Arguments

    Type IntentOptional Attributes Name
    type(btree_i8_dp2d), intent(out) :: tree
    integer, intent(in), optional :: order
  • private subroutine btree_new_i8_cp2d(tree, order)

    Arguments

    Type IntentOptional Attributes Name
    type(btree_i8_cp2d), intent(out) :: tree
    integer, intent(in), optional :: order
  • private subroutine btree_new_i8_zp2d(tree, order)

    Arguments

    Type IntentOptional Attributes Name
    type(btree_i8_zp2d), intent(out) :: tree
    integer, intent(in), optional :: order

public interface btree_add

  • private subroutine btree_add_i8_sp2d(tree, key, value, exists, existing_value, replace)

    Arguments

    Type IntentOptional Attributes Name
    type(btree_i8_sp2d), intent(inout) :: tree
    integer(kind=keyt), intent(in) :: key
    type(btree_data_sp2d), intent(in) :: value
    logical, intent(out), optional :: exists
    type(btree_data_sp2d), intent(out), optional :: existing_value
    logical, intent(in), optional :: replace
  • private subroutine btree_add_i8_dp2d(tree, key, value, exists, existing_value, replace)

    Arguments

    Type IntentOptional Attributes Name
    type(btree_i8_dp2d), intent(inout) :: tree
    integer(kind=keyt), intent(in) :: key
    type(btree_data_dp2d), intent(in) :: value
    logical, intent(out), optional :: exists
    type(btree_data_dp2d), intent(out), optional :: existing_value
    logical, intent(in), optional :: replace
  • private subroutine btree_add_i8_cp2d(tree, key, value, exists, existing_value, replace)

    Arguments

    Type IntentOptional Attributes Name
    type(btree_i8_cp2d), intent(inout) :: tree
    integer(kind=keyt), intent(in) :: key
    type(btree_data_cp2d), intent(in) :: value
    logical, intent(out), optional :: exists
    type(btree_data_cp2d), intent(out), optional :: existing_value
    logical, intent(in), optional :: replace
  • private subroutine btree_add_i8_zp2d(tree, key, value, exists, existing_value, replace)

    Arguments

    Type IntentOptional Attributes Name
    type(btree_i8_zp2d), intent(inout) :: tree
    integer(kind=keyt), intent(in) :: key
    type(btree_data_zp2d), intent(in) :: value
    logical, intent(out), optional :: exists
    type(btree_data_zp2d), intent(out), optional :: existing_value
    logical, intent(in), optional :: replace

public interface btree_find

  • private subroutine btree_find_i8_sp2d(tree, key, value, exists)

    Arguments

    Type IntentOptional Attributes Name
    type(btree_i8_sp2d), intent(in) :: tree
    integer(kind=keyt), intent(in) :: key
    type(btree_data_sp2d), intent(out) :: value
    logical, intent(out), optional :: exists
  • private subroutine btree_find_i8_dp2d(tree, key, value, exists)

    Arguments

    Type IntentOptional Attributes Name
    type(btree_i8_dp2d), intent(in) :: tree
    integer(kind=keyt), intent(in) :: key
    type(btree_data_dp2d), intent(out) :: value
    logical, intent(out), optional :: exists
  • private subroutine btree_find_i8_cp2d(tree, key, value, exists)

    Arguments

    Type IntentOptional Attributes Name
    type(btree_i8_cp2d), intent(in) :: tree
    integer(kind=keyt), intent(in) :: key
    type(btree_data_cp2d), intent(out) :: value
    logical, intent(out), optional :: exists
  • private subroutine btree_find_i8_zp2d(tree, key, value, exists)

    Arguments

    Type IntentOptional Attributes Name
    type(btree_i8_zp2d), intent(in) :: tree
    integer(kind=keyt), intent(in) :: key
    type(btree_data_zp2d), intent(out) :: value
    logical, intent(out), optional :: exists

public interface btree_delete

  • private subroutine btree_delete_i8_sp2d(tree, keys, values)

    Arguments

    Type IntentOptional Attributes Name
    type(btree_i8_sp2d), intent(inout) :: tree
    integer(kind=keyt), intent(out), optional, DIMENSION(:) :: keys
    type(btree_data_sp2d), intent(out), optional, DIMENSION(:) :: values
  • private subroutine btree_delete_i8_dp2d(tree, keys, values)

    Arguments

    Type IntentOptional Attributes Name
    type(btree_i8_dp2d), intent(inout) :: tree
    integer(kind=keyt), intent(out), optional, DIMENSION(:) :: keys
    type(btree_data_dp2d), intent(out), optional, DIMENSION(:) :: values
  • private subroutine btree_delete_i8_cp2d(tree, keys, values)

    Arguments

    Type IntentOptional Attributes Name
    type(btree_i8_cp2d), intent(inout) :: tree
    integer(kind=keyt), intent(out), optional, DIMENSION(:) :: keys
    type(btree_data_cp2d), intent(out), optional, DIMENSION(:) :: values
  • private subroutine btree_delete_i8_zp2d(tree, keys, values)

    Arguments

    Type IntentOptional Attributes Name
    type(btree_i8_zp2d), intent(inout) :: tree
    integer(kind=keyt), intent(out), optional, DIMENSION(:) :: keys
    type(btree_data_zp2d), intent(out), optional, DIMENSION(:) :: values

public interface btree_get_entries


Derived Types

type, public ::  btree_data_sp2d

Components

Type Visibility Attributes Name Initial
real(kind=sp), public, DIMENSION(:,:), POINTER :: p
logical, public :: tr

type, public ::  btree_data_dp2d

Components

Type Visibility Attributes Name Initial
real(kind=dp), public, DIMENSION(:,:), POINTER :: p
logical, public :: tr

type, public ::  btree_data_cp2d

Components

Type Visibility Attributes Name Initial
complex(kind=sp), public, DIMENSION(:,:), POINTER :: p
logical, public :: tr

type, public ::  btree_data_zp2d

Components

Type Visibility Attributes Name Initial
complex(kind=dp), public, DIMENSION(:,:), POINTER :: p
logical, public :: tr

type, private ::  btree_node_i8_sp2d

Components

Type Visibility Attributes Name Initial
integer, public :: id
integer, public :: filled
integer(kind=keyt), public, DIMENSION(:), POINTER :: keys
type(btree_data_sp2d), public, DIMENSION(:), POINTER :: values
type(btree_node_p_i8_sp2d), public, DIMENSION(:), POINTER :: subtrees
type(btree_node_i8_sp2d), public, POINTER :: parent

type, private ::  btree_node_p_i8_sp2d

Components

Type Visibility Attributes Name Initial
type(btree_node_i8_sp2d), public, POINTER :: node

type, private ::  btree_node_structure_i8_sp2d

Components

Type Visibility Attributes Name Initial
integer, public :: min_fill
integer, public :: max_fill
integer, public :: n
integer, public :: lastid
integer, public :: refcount
type(btree_node_i8_sp2d), public, POINTER :: root

type, public ::  btree_i8_sp2d

Components

Type Visibility Attributes Name Initial
type(btree_node_structure_i8_sp2d), public :: b

type, private ::  btree_node_i8_dp2d

Components

Type Visibility Attributes Name Initial
integer, public :: id
integer, public :: filled
integer(kind=keyt), public, DIMENSION(:), POINTER :: keys
type(btree_data_dp2d), public, DIMENSION(:), POINTER :: values
type(btree_node_p_i8_dp2d), public, DIMENSION(:), POINTER :: subtrees
type(btree_node_i8_dp2d), public, POINTER :: parent

type, private ::  btree_node_p_i8_dp2d

Components

Type Visibility Attributes Name Initial
type(btree_node_i8_dp2d), public, POINTER :: node

type, private ::  btree_node_structure_i8_dp2d

Components

Type Visibility Attributes Name Initial
integer, public :: min_fill
integer, public :: max_fill
integer, public :: n
integer, public :: lastid
integer, public :: refcount
type(btree_node_i8_dp2d), public, POINTER :: root

type, public ::  btree_i8_dp2d

Components

Type Visibility Attributes Name Initial
type(btree_node_structure_i8_dp2d), public :: b

type, private ::  btree_node_i8_cp2d

Components

Type Visibility Attributes Name Initial
integer, public :: id
integer, public :: filled
integer(kind=keyt), public, DIMENSION(:), POINTER :: keys
type(btree_data_cp2d), public, DIMENSION(:), POINTER :: values
type(btree_node_p_i8_cp2d), public, DIMENSION(:), POINTER :: subtrees
type(btree_node_i8_cp2d), public, POINTER :: parent

type, private ::  btree_node_p_i8_cp2d

Components

Type Visibility Attributes Name Initial
type(btree_node_i8_cp2d), public, POINTER :: node

type, private ::  btree_node_structure_i8_cp2d

Components

Type Visibility Attributes Name Initial
integer, public :: min_fill
integer, public :: max_fill
integer, public :: n
integer, public :: lastid
integer, public :: refcount
type(btree_node_i8_cp2d), public, POINTER :: root

type, public ::  btree_i8_cp2d

Components

Type Visibility Attributes Name Initial
type(btree_node_structure_i8_cp2d), public :: b

type, private ::  btree_node_i8_zp2d

Components

Type Visibility Attributes Name Initial
integer, public :: id
integer, public :: filled
integer(kind=keyt), public, DIMENSION(:), POINTER :: keys
type(btree_data_zp2d), public, DIMENSION(:), POINTER :: values
type(btree_node_p_i8_zp2d), public, DIMENSION(:), POINTER :: subtrees
type(btree_node_i8_zp2d), public, POINTER :: parent

type, private ::  btree_node_p_i8_zp2d

Components

Type Visibility Attributes Name Initial
type(btree_node_i8_zp2d), public, POINTER :: node

type, private ::  btree_node_structure_i8_zp2d

Components

Type Visibility Attributes Name Initial
integer, public :: min_fill
integer, public :: max_fill
integer, public :: n
integer, public :: lastid
integer, public :: refcount
type(btree_node_i8_zp2d), public, POINTER :: root

type, public ::  btree_i8_zp2d

Components

Type Visibility Attributes Name Initial
type(btree_node_structure_i8_zp2d), public :: b

Functions

private function btree_get_entries_i8_sp2d(tree) result(num_entries)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_sp2d), intent(inout) :: tree

Return Value integer

private function btree_get_entries_i8_dp2d(tree) result(num_entries)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_dp2d), intent(inout) :: tree

Return Value integer

private function btree_get_entries_i8_cp2d(tree) result(num_entries)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_cp2d), intent(inout) :: tree

Return Value integer

private function btree_get_entries_i8_zp2d(tree) result(num_entries)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_zp2d), intent(inout) :: tree

Return Value integer


Subroutines

private subroutine btree_new_i8_sp2d(tree, order)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_sp2d), intent(out) :: tree
integer, intent(in), optional :: order

private subroutine btree_adopt_subtrees_i8_sp2d(node)

Arguments

Type IntentOptional Attributes Name
type(btree_node_i8_sp2d), POINTER :: node

private subroutine btree_delete_i8_sp2d(tree, keys, values)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_sp2d), intent(inout) :: tree
integer(kind=keyt), intent(out), optional, DIMENSION(:) :: keys
type(btree_data_sp2d), intent(out), optional, DIMENSION(:) :: values

private recursive subroutine btree_delete_node_i8_sp2d(node, pos, keys, values)

Arguments

Type IntentOptional Attributes Name
type(btree_node_i8_sp2d), POINTER :: node
integer, intent(inout), optional :: pos
integer(kind=keyt), intent(inout), optional, DIMENSION(:) :: keys
type(btree_data_sp2d), intent(inout), optional, DIMENSION(:) :: values

private subroutine btree_add_i8_sp2d(tree, key, value, exists, existing_value, replace)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_sp2d), intent(inout) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_data_sp2d), intent(in) :: value
logical, intent(out), optional :: exists
type(btree_data_sp2d), intent(out), optional :: existing_value
logical, intent(in), optional :: replace

private recursive subroutine btree_add_into_i8_sp2d(tree, node, key, value, before, subtree)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_sp2d), intent(inout) :: tree
type(btree_node_i8_sp2d), POINTER :: node
integer(kind=keyt), intent(in) :: key
type(btree_data_sp2d), intent(in) :: value
integer, intent(in), optional :: before
type(btree_node_i8_sp2d), optional, POINTER :: subtree

private subroutine btree_simple_insertion_i8_sp2d(node, key, value, before, subtree)

Arguments

Type IntentOptional Attributes Name
type(btree_node_i8_sp2d), intent(inout) :: node
integer(kind=keyt), intent(in) :: key
type(btree_data_sp2d), intent(in) :: value
integer, intent(in) :: before
type(btree_node_i8_sp2d), optional, POINTER :: subtree

private subroutine btree_left_insertion_i8_sp2d(tree, node, new_node, key, value, before, split_pos, subtree)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_sp2d), intent(in) :: tree
type(btree_node_i8_sp2d), intent(inout) :: node
type(btree_node_i8_sp2d), intent(inout) :: new_node
integer(kind=keyt), intent(in) :: key
type(btree_data_sp2d), intent(in) :: value
integer, intent(in) :: before
integer, intent(in) :: split_pos
type(btree_node_i8_sp2d), optional, POINTER :: subtree

private subroutine btree_right_insertion_i8_sp2d(tree, node, new_node, key, value, before, split_pos, subtree)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_sp2d), intent(in) :: tree
type(btree_node_i8_sp2d), intent(inout) :: node
type(btree_node_i8_sp2d), intent(inout) :: new_node
integer(kind=keyt), intent(in) :: key
type(btree_data_sp2d), intent(in) :: value
integer, intent(in) :: before
integer, intent(in) :: split_pos
type(btree_node_i8_sp2d), optional, POINTER :: subtree

private subroutine btree_new_root_i8_sp2d(tree, key, value)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_sp2d), intent(inout) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_data_sp2d), intent(in) :: value

private subroutine btree_new_node_i8_sp2d(tree, node)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_sp2d), intent(inout) :: tree
type(btree_node_i8_sp2d), POINTER :: node

private subroutine btree_free_node_i8_sp2d(node)

Arguments

Type IntentOptional Attributes Name
type(btree_node_i8_sp2d), POINTER :: node

private subroutine btree_find_i8_sp2d(tree, key, value, exists)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_sp2d), intent(in) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_data_sp2d), intent(out) :: value
logical, intent(out), optional :: exists

private subroutine btree_node_find_ge_pos_i8_sp2d(keys, key, position, filled)

Arguments

Type IntentOptional Attributes Name
integer(kind=keyt), DIMENSION(:) :: keys
integer(kind=keyt), intent(in) :: key
integer, intent(out) :: position
integer, intent(in) :: filled

private subroutine btree_node_find_gt_pos_i8_sp2d(keys, key, position, filled)

Arguments

Type IntentOptional Attributes Name
integer(kind=keyt), DIMENSION(:) :: keys
integer(kind=keyt), intent(in) :: key
integer, intent(out) :: position
integer, intent(in) :: filled

private subroutine btree_node_find_gte_pos_i8_sp2d(keys, key, position, filled, first)

Arguments

Type IntentOptional Attributes Name
integer(kind=keyt), DIMENSION(:) :: keys
integer(kind=keyt), intent(in) :: key
integer, intent(out) :: position
integer, intent(in) :: filled
integer, intent(in), optional :: first

private subroutine btree_find_full_i8_sp2d(tree, key, node, position, ge_position, short)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_sp2d), intent(in) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_node_i8_sp2d), POINTER :: node
integer, intent(out) :: position
integer, intent(out), optional :: ge_position
logical, intent(in), optional :: short

private subroutine btree_find_leaf_i8_sp2d(tree, key, node, gti)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_sp2d), intent(in) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_node_i8_sp2d), POINTER :: node
integer, intent(out) :: gti

private subroutine btree_new_i8_dp2d(tree, order)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_dp2d), intent(out) :: tree
integer, intent(in), optional :: order

private subroutine btree_adopt_subtrees_i8_dp2d(node)

Arguments

Type IntentOptional Attributes Name
type(btree_node_i8_dp2d), POINTER :: node

private subroutine btree_delete_i8_dp2d(tree, keys, values)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_dp2d), intent(inout) :: tree
integer(kind=keyt), intent(out), optional, DIMENSION(:) :: keys
type(btree_data_dp2d), intent(out), optional, DIMENSION(:) :: values

private recursive subroutine btree_delete_node_i8_dp2d(node, pos, keys, values)

Arguments

Type IntentOptional Attributes Name
type(btree_node_i8_dp2d), POINTER :: node
integer, intent(inout), optional :: pos
integer(kind=keyt), intent(inout), optional, DIMENSION(:) :: keys
type(btree_data_dp2d), intent(inout), optional, DIMENSION(:) :: values

private subroutine btree_add_i8_dp2d(tree, key, value, exists, existing_value, replace)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_dp2d), intent(inout) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_data_dp2d), intent(in) :: value
logical, intent(out), optional :: exists
type(btree_data_dp2d), intent(out), optional :: existing_value
logical, intent(in), optional :: replace

private recursive subroutine btree_add_into_i8_dp2d(tree, node, key, value, before, subtree)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_dp2d), intent(inout) :: tree
type(btree_node_i8_dp2d), POINTER :: node
integer(kind=keyt), intent(in) :: key
type(btree_data_dp2d), intent(in) :: value
integer, intent(in), optional :: before
type(btree_node_i8_dp2d), optional, POINTER :: subtree

private subroutine btree_simple_insertion_i8_dp2d(node, key, value, before, subtree)

Arguments

Type IntentOptional Attributes Name
type(btree_node_i8_dp2d), intent(inout) :: node
integer(kind=keyt), intent(in) :: key
type(btree_data_dp2d), intent(in) :: value
integer, intent(in) :: before
type(btree_node_i8_dp2d), optional, POINTER :: subtree

private subroutine btree_left_insertion_i8_dp2d(tree, node, new_node, key, value, before, split_pos, subtree)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_dp2d), intent(in) :: tree
type(btree_node_i8_dp2d), intent(inout) :: node
type(btree_node_i8_dp2d), intent(inout) :: new_node
integer(kind=keyt), intent(in) :: key
type(btree_data_dp2d), intent(in) :: value
integer, intent(in) :: before
integer, intent(in) :: split_pos
type(btree_node_i8_dp2d), optional, POINTER :: subtree

private subroutine btree_right_insertion_i8_dp2d(tree, node, new_node, key, value, before, split_pos, subtree)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_dp2d), intent(in) :: tree
type(btree_node_i8_dp2d), intent(inout) :: node
type(btree_node_i8_dp2d), intent(inout) :: new_node
integer(kind=keyt), intent(in) :: key
type(btree_data_dp2d), intent(in) :: value
integer, intent(in) :: before
integer, intent(in) :: split_pos
type(btree_node_i8_dp2d), optional, POINTER :: subtree

private subroutine btree_new_root_i8_dp2d(tree, key, value)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_dp2d), intent(inout) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_data_dp2d), intent(in) :: value

private subroutine btree_new_node_i8_dp2d(tree, node)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_dp2d), intent(inout) :: tree
type(btree_node_i8_dp2d), POINTER :: node

private subroutine btree_free_node_i8_dp2d(node)

Arguments

Type IntentOptional Attributes Name
type(btree_node_i8_dp2d), POINTER :: node

private subroutine btree_find_i8_dp2d(tree, key, value, exists)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_dp2d), intent(in) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_data_dp2d), intent(out) :: value
logical, intent(out), optional :: exists

private subroutine btree_node_find_ge_pos_i8_dp2d(keys, key, position, filled)

Arguments

Type IntentOptional Attributes Name
integer(kind=keyt), DIMENSION(:) :: keys
integer(kind=keyt), intent(in) :: key
integer, intent(out) :: position
integer, intent(in) :: filled

private subroutine btree_node_find_gt_pos_i8_dp2d(keys, key, position, filled)

Arguments

Type IntentOptional Attributes Name
integer(kind=keyt), DIMENSION(:) :: keys
integer(kind=keyt), intent(in) :: key
integer, intent(out) :: position
integer, intent(in) :: filled

private subroutine btree_node_find_gte_pos_i8_dp2d(keys, key, position, filled, first)

Arguments

Type IntentOptional Attributes Name
integer(kind=keyt), DIMENSION(:) :: keys
integer(kind=keyt), intent(in) :: key
integer, intent(out) :: position
integer, intent(in) :: filled
integer, intent(in), optional :: first

private subroutine btree_find_full_i8_dp2d(tree, key, node, position, ge_position, short)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_dp2d), intent(in) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_node_i8_dp2d), POINTER :: node
integer, intent(out) :: position
integer, intent(out), optional :: ge_position
logical, intent(in), optional :: short

private subroutine btree_find_leaf_i8_dp2d(tree, key, node, gti)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_dp2d), intent(in) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_node_i8_dp2d), POINTER :: node
integer, intent(out) :: gti

private subroutine btree_new_i8_cp2d(tree, order)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_cp2d), intent(out) :: tree
integer, intent(in), optional :: order

private subroutine btree_adopt_subtrees_i8_cp2d(node)

Arguments

Type IntentOptional Attributes Name
type(btree_node_i8_cp2d), POINTER :: node

private subroutine btree_delete_i8_cp2d(tree, keys, values)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_cp2d), intent(inout) :: tree
integer(kind=keyt), intent(out), optional, DIMENSION(:) :: keys
type(btree_data_cp2d), intent(out), optional, DIMENSION(:) :: values

private recursive subroutine btree_delete_node_i8_cp2d(node, pos, keys, values)

Arguments

Type IntentOptional Attributes Name
type(btree_node_i8_cp2d), POINTER :: node
integer, intent(inout), optional :: pos
integer(kind=keyt), intent(inout), optional, DIMENSION(:) :: keys
type(btree_data_cp2d), intent(inout), optional, DIMENSION(:) :: values

private subroutine btree_add_i8_cp2d(tree, key, value, exists, existing_value, replace)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_cp2d), intent(inout) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_data_cp2d), intent(in) :: value
logical, intent(out), optional :: exists
type(btree_data_cp2d), intent(out), optional :: existing_value
logical, intent(in), optional :: replace

private recursive subroutine btree_add_into_i8_cp2d(tree, node, key, value, before, subtree)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_cp2d), intent(inout) :: tree
type(btree_node_i8_cp2d), POINTER :: node
integer(kind=keyt), intent(in) :: key
type(btree_data_cp2d), intent(in) :: value
integer, intent(in), optional :: before
type(btree_node_i8_cp2d), optional, POINTER :: subtree

private subroutine btree_simple_insertion_i8_cp2d(node, key, value, before, subtree)

Arguments

Type IntentOptional Attributes Name
type(btree_node_i8_cp2d), intent(inout) :: node
integer(kind=keyt), intent(in) :: key
type(btree_data_cp2d), intent(in) :: value
integer, intent(in) :: before
type(btree_node_i8_cp2d), optional, POINTER :: subtree

private subroutine btree_left_insertion_i8_cp2d(tree, node, new_node, key, value, before, split_pos, subtree)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_cp2d), intent(in) :: tree
type(btree_node_i8_cp2d), intent(inout) :: node
type(btree_node_i8_cp2d), intent(inout) :: new_node
integer(kind=keyt), intent(in) :: key
type(btree_data_cp2d), intent(in) :: value
integer, intent(in) :: before
integer, intent(in) :: split_pos
type(btree_node_i8_cp2d), optional, POINTER :: subtree

private subroutine btree_right_insertion_i8_cp2d(tree, node, new_node, key, value, before, split_pos, subtree)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_cp2d), intent(in) :: tree
type(btree_node_i8_cp2d), intent(inout) :: node
type(btree_node_i8_cp2d), intent(inout) :: new_node
integer(kind=keyt), intent(in) :: key
type(btree_data_cp2d), intent(in) :: value
integer, intent(in) :: before
integer, intent(in) :: split_pos
type(btree_node_i8_cp2d), optional, POINTER :: subtree

private subroutine btree_new_root_i8_cp2d(tree, key, value)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_cp2d), intent(inout) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_data_cp2d), intent(in) :: value

private subroutine btree_new_node_i8_cp2d(tree, node)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_cp2d), intent(inout) :: tree
type(btree_node_i8_cp2d), POINTER :: node

private subroutine btree_free_node_i8_cp2d(node)

Arguments

Type IntentOptional Attributes Name
type(btree_node_i8_cp2d), POINTER :: node

private subroutine btree_find_i8_cp2d(tree, key, value, exists)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_cp2d), intent(in) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_data_cp2d), intent(out) :: value
logical, intent(out), optional :: exists

private subroutine btree_node_find_ge_pos_i8_cp2d(keys, key, position, filled)

Arguments

Type IntentOptional Attributes Name
integer(kind=keyt), DIMENSION(:) :: keys
integer(kind=keyt), intent(in) :: key
integer, intent(out) :: position
integer, intent(in) :: filled

private subroutine btree_node_find_gt_pos_i8_cp2d(keys, key, position, filled)

Arguments

Type IntentOptional Attributes Name
integer(kind=keyt), DIMENSION(:) :: keys
integer(kind=keyt), intent(in) :: key
integer, intent(out) :: position
integer, intent(in) :: filled

private subroutine btree_node_find_gte_pos_i8_cp2d(keys, key, position, filled, first)

Arguments

Type IntentOptional Attributes Name
integer(kind=keyt), DIMENSION(:) :: keys
integer(kind=keyt), intent(in) :: key
integer, intent(out) :: position
integer, intent(in) :: filled
integer, intent(in), optional :: first

private subroutine btree_find_full_i8_cp2d(tree, key, node, position, ge_position, short)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_cp2d), intent(in) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_node_i8_cp2d), POINTER :: node
integer, intent(out) :: position
integer, intent(out), optional :: ge_position
logical, intent(in), optional :: short

private subroutine btree_find_leaf_i8_cp2d(tree, key, node, gti)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_cp2d), intent(in) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_node_i8_cp2d), POINTER :: node
integer, intent(out) :: gti

private subroutine btree_new_i8_zp2d(tree, order)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_zp2d), intent(out) :: tree
integer, intent(in), optional :: order

private subroutine btree_adopt_subtrees_i8_zp2d(node)

Arguments

Type IntentOptional Attributes Name
type(btree_node_i8_zp2d), POINTER :: node

private subroutine btree_delete_i8_zp2d(tree, keys, values)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_zp2d), intent(inout) :: tree
integer(kind=keyt), intent(out), optional, DIMENSION(:) :: keys
type(btree_data_zp2d), intent(out), optional, DIMENSION(:) :: values

private recursive subroutine btree_delete_node_i8_zp2d(node, pos, keys, values)

Arguments

Type IntentOptional Attributes Name
type(btree_node_i8_zp2d), POINTER :: node
integer, intent(inout), optional :: pos
integer(kind=keyt), intent(inout), optional, DIMENSION(:) :: keys
type(btree_data_zp2d), intent(inout), optional, DIMENSION(:) :: values

private subroutine btree_add_i8_zp2d(tree, key, value, exists, existing_value, replace)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_zp2d), intent(inout) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_data_zp2d), intent(in) :: value
logical, intent(out), optional :: exists
type(btree_data_zp2d), intent(out), optional :: existing_value
logical, intent(in), optional :: replace

private recursive subroutine btree_add_into_i8_zp2d(tree, node, key, value, before, subtree)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_zp2d), intent(inout) :: tree
type(btree_node_i8_zp2d), POINTER :: node
integer(kind=keyt), intent(in) :: key
type(btree_data_zp2d), intent(in) :: value
integer, intent(in), optional :: before
type(btree_node_i8_zp2d), optional, POINTER :: subtree

private subroutine btree_simple_insertion_i8_zp2d(node, key, value, before, subtree)

Arguments

Type IntentOptional Attributes Name
type(btree_node_i8_zp2d), intent(inout) :: node
integer(kind=keyt), intent(in) :: key
type(btree_data_zp2d), intent(in) :: value
integer, intent(in) :: before
type(btree_node_i8_zp2d), optional, POINTER :: subtree

private subroutine btree_left_insertion_i8_zp2d(tree, node, new_node, key, value, before, split_pos, subtree)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_zp2d), intent(in) :: tree
type(btree_node_i8_zp2d), intent(inout) :: node
type(btree_node_i8_zp2d), intent(inout) :: new_node
integer(kind=keyt), intent(in) :: key
type(btree_data_zp2d), intent(in) :: value
integer, intent(in) :: before
integer, intent(in) :: split_pos
type(btree_node_i8_zp2d), optional, POINTER :: subtree

private subroutine btree_right_insertion_i8_zp2d(tree, node, new_node, key, value, before, split_pos, subtree)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_zp2d), intent(in) :: tree
type(btree_node_i8_zp2d), intent(inout) :: node
type(btree_node_i8_zp2d), intent(inout) :: new_node
integer(kind=keyt), intent(in) :: key
type(btree_data_zp2d), intent(in) :: value
integer, intent(in) :: before
integer, intent(in) :: split_pos
type(btree_node_i8_zp2d), optional, POINTER :: subtree

private subroutine btree_new_root_i8_zp2d(tree, key, value)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_zp2d), intent(inout) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_data_zp2d), intent(in) :: value

private subroutine btree_new_node_i8_zp2d(tree, node)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_zp2d), intent(inout) :: tree
type(btree_node_i8_zp2d), POINTER :: node

private subroutine btree_free_node_i8_zp2d(node)

Arguments

Type IntentOptional Attributes Name
type(btree_node_i8_zp2d), POINTER :: node

private subroutine btree_find_i8_zp2d(tree, key, value, exists)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_zp2d), intent(in) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_data_zp2d), intent(out) :: value
logical, intent(out), optional :: exists

private subroutine btree_node_find_ge_pos_i8_zp2d(keys, key, position, filled)

Arguments

Type IntentOptional Attributes Name
integer(kind=keyt), DIMENSION(:) :: keys
integer(kind=keyt), intent(in) :: key
integer, intent(out) :: position
integer, intent(in) :: filled

private subroutine btree_node_find_gt_pos_i8_zp2d(keys, key, position, filled)

Arguments

Type IntentOptional Attributes Name
integer(kind=keyt), DIMENSION(:) :: keys
integer(kind=keyt), intent(in) :: key
integer, intent(out) :: position
integer, intent(in) :: filled

private subroutine btree_node_find_gte_pos_i8_zp2d(keys, key, position, filled, first)

Arguments

Type IntentOptional Attributes Name
integer(kind=keyt), DIMENSION(:) :: keys
integer(kind=keyt), intent(in) :: key
integer, intent(out) :: position
integer, intent(in) :: filled
integer, intent(in), optional :: first

private subroutine btree_find_full_i8_zp2d(tree, key, node, position, ge_position, short)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_zp2d), intent(in) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_node_i8_zp2d), POINTER :: node
integer, intent(out) :: position
integer, intent(out), optional :: ge_position
logical, intent(in), optional :: short

private subroutine btree_find_leaf_i8_zp2d(tree, key, node, gti)

Arguments

Type IntentOptional Attributes Name
type(btree_i8_zp2d), intent(in) :: tree
integer(kind=keyt), intent(in) :: key
type(btree_node_i8_zp2d), POINTER :: node
integer, intent(out) :: gti