ocean.util.container.ebtree.c.eb64tree

Bindings for Elastic Binary Trees library's operations on 64bit nodes.

This module contains the D binding of the library functions of eb64tree.h. Please consult the original header documentation for details.

You need to have the library installed and link with -lebtree.

Members

Functions

eb64_delete
void eb64_delete(eb64_node* eb64)

See original's library documentation for details.

eb64_first
eb64_node* eb64_first(eb_root* root)

// Return leftmost node in the tree, or NULL if none

eb64_insert
eb64_node* eb64_insert(eb_root* root, eb64_node* neww)

See original's library documentation for details.

eb64_last
eb64_node* eb64_last(eb_root* root)

Return rightmost node in the tree, or NULL if none

eb64_lookup
eb64_node* eb64_lookup(eb_root* root, ulong x)

See original's library documentation for details.

eb64_lookup_ge
eb64_node* eb64_lookup_ge(eb_root* root, ulong x)

See original's library documentation for details.

eb64_lookup_le
eb64_node* eb64_lookup_le(eb_root* root, ulong x)

See original's library documentation for details.

eb64_next
eb64_node* eb64_next(eb64_node* eb64)

Return next node in the tree, or NULL if none

eb64_next_unique
eb64_node* eb64_next_unique(eb64_node* eb64)

Return next node in the tree, skipping duplicates, or NULL if none

eb64_prev
eb64_node* eb64_prev(eb64_node* eb64)

Return previous node in the tree, or NULL if none

eb64_prev_unique
eb64_node* eb64_prev_unique(eb64_node* eb64)

Return previous node in the tree, skipping duplicates, or NULL if none

eb64i_insert
eb64_node* eb64i_insert(eb_root* root, eb64_node* neww)

See original's library documentation for details.

eb64i_lookup
eb64_node* eb64i_lookup(eb_root* root, long x)

See original's library documentation for details.

Structs

eb64_node
struct eb64_node

See original's library documentation for details.

Meta

License

Boost Software License Version 1.0. See LICENSE_BOOST.txt for details. Alternatively, this file may be distributed under the terms of the Tango 3-Clause BSD License (see LICENSE_BSD.txt for details).

Bear in mind this module provides bindings to an external library that has its own license, which might be more restrictive. Please check the external library license to see which conditions apply for linking.