mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2026-09-22 17:20:48 +08:00
rbtree: PR2046: Replace rtems_rbtree_unique
This commit is contained in:
@@ -51,20 +51,6 @@ typedef RBTree_Control rtems_rbtree_control;
|
||||
*/
|
||||
typedef RBTree_Compare_function rtems_rbtree_compare_function;
|
||||
|
||||
/**
|
||||
* @typedef rtems_rbtree_unique
|
||||
*
|
||||
* This enum type defines whether the tree can contain nodes with
|
||||
* duplicate keys.
|
||||
*/
|
||||
typedef enum {
|
||||
/** The tree is not unique, insertion of duplicate keys is performed
|
||||
* in a FIFO manner. */
|
||||
RTEMS_RBTREE_DUPLICATE = false,
|
||||
/** The tree is unique, insertion of duplicate key is refused. */
|
||||
RTEMS_RBTREE_UNIQUE = true
|
||||
} rtems_rbtree_unique;
|
||||
|
||||
/**
|
||||
* @brief RBTree initializer for an empty rbtree with designator @a name.
|
||||
*/
|
||||
|
||||
@@ -40,7 +40,7 @@ RTEMS_INLINE_ROUTINE void rtems_rbtree_initialize(
|
||||
void *starting_address,
|
||||
size_t number_nodes,
|
||||
size_t node_size,
|
||||
rtems_rbtree_unique is_unique
|
||||
bool is_unique
|
||||
)
|
||||
{
|
||||
_RBTree_Initialize( the_rbtree, compare_function, starting_address,
|
||||
@@ -55,7 +55,7 @@ RTEMS_INLINE_ROUTINE void rtems_rbtree_initialize(
|
||||
RTEMS_INLINE_ROUTINE void rtems_rbtree_initialize_empty(
|
||||
rtems_rbtree_control *the_rbtree,
|
||||
rtems_rbtree_compare_function compare_function,
|
||||
rtems_rbtree_unique is_unique
|
||||
bool is_unique
|
||||
)
|
||||
{
|
||||
_RBTree_Initialize_empty( the_rbtree, compare_function, is_unique );
|
||||
@@ -423,7 +423,7 @@ RTEMS_INLINE_ROUTINE rtems_rbtree_node *rtems_rbtree_insert(
|
||||
|
||||
/** @brief Determines whether the tree is unique
|
||||
*/
|
||||
RTEMS_INLINE_ROUTINE rtems_rbtree_unique rtems_rbtree_is_unique(
|
||||
RTEMS_INLINE_ROUTINE bool rtems_rbtree_is_unique(
|
||||
const rtems_rbtree_control *the_rbtree
|
||||
)
|
||||
{
|
||||
|
||||
@@ -102,8 +102,7 @@ rtems_task Init(
|
||||
puts( "\n\n*** TEST OF RTEMS RBTREE API ***" );
|
||||
|
||||
puts( "Init - Initialize rbtree empty" );
|
||||
rtems_rbtree_initialize_empty( &rbtree1, &test_compare_function,
|
||||
RTEMS_RBTREE_UNIQUE );
|
||||
rtems_rbtree_initialize_empty( &rbtree1, &test_compare_function, true );
|
||||
|
||||
if ( !rtems_rbtree_is_unique( &rbtree1 ) )
|
||||
puts( "INIT - FAILED IS UNIQUE CHECK" );
|
||||
@@ -542,7 +541,7 @@ rtems_task Init(
|
||||
}
|
||||
rtems_rbtree_initialize( &rbtree1, &test_compare_function,
|
||||
&node_array[0].Node, 100,
|
||||
sizeof(test_node), RTEMS_RBTREE_UNIQUE );
|
||||
sizeof(test_node), true );
|
||||
|
||||
puts( "INIT - Removing 100 nodes" );
|
||||
|
||||
@@ -570,8 +569,7 @@ rtems_task Init(
|
||||
|
||||
/* Initialize the tree for duplicate keys */
|
||||
puts( "Init - Initialize duplicate rbtree empty" );
|
||||
rtems_rbtree_initialize_empty( &rbtree1, &test_compare_function,
|
||||
RTEMS_RBTREE_DUPLICATE );
|
||||
rtems_rbtree_initialize_empty( &rbtree1, &test_compare_function, false );
|
||||
|
||||
if ( rtems_rbtree_is_unique( &rbtree1 ) )
|
||||
puts( "INIT - FAILED IS UNIQUE CHECK" );
|
||||
|
||||
Reference in New Issue
Block a user