Index: generic/src/adt/btree.c
===================================================================
--- generic/src/adt/btree.c	(revision 2810636d5b780b7b0dafa0b20b18f93aedbd5c44)
+++ generic/src/adt/btree.c	(revision a6d4cebe4e2af4fd70f49dc2ffb18186d4447b4a)
@@ -47,18 +47,18 @@
 #include <print.h>
 
-static void _btree_insert(btree_t *t, __native key, void *value, btree_node_t *rsubtree, btree_node_t *node);
-static void _btree_remove(btree_t *t, __native key, btree_node_t *node);
+static void _btree_insert(btree_t *t, btree_key_t key, void *value, btree_node_t *rsubtree, btree_node_t *node);
+static void _btree_remove(btree_t *t, btree_key_t key, btree_node_t *node);
 static void node_initialize(btree_node_t *node);
-static void node_insert_key_and_lsubtree(btree_node_t *node, __native key, void *value, btree_node_t *lsubtree);
-static void node_insert_key_and_rsubtree(btree_node_t *node, __native key, void *value, btree_node_t *rsubtree);
-static void node_remove_key_and_lsubtree(btree_node_t *node, __native key);
-static void node_remove_key_and_rsubtree(btree_node_t *node, __native key);
-static btree_node_t *node_split(btree_node_t *node, __native key, void *value, btree_node_t *rsubtree, __native *median);
+static void node_insert_key_and_lsubtree(btree_node_t *node, btree_key_t key, void *value, btree_node_t *lsubtree);
+static void node_insert_key_and_rsubtree(btree_node_t *node, btree_key_t key, void *value, btree_node_t *rsubtree);
+static void node_remove_key_and_lsubtree(btree_node_t *node, btree_key_t key);
+static void node_remove_key_and_rsubtree(btree_node_t *node, btree_key_t key);
+static btree_node_t *node_split(btree_node_t *node, btree_key_t key, void *value, btree_node_t *rsubtree, btree_key_t *median);
 static btree_node_t *node_combine(btree_node_t *node);
 static index_t find_key_by_subtree(btree_node_t *node, btree_node_t *subtree, bool right);
 static void rotate_from_right(btree_node_t *lnode, btree_node_t *rnode, index_t idx);
 static void rotate_from_left(btree_node_t *lnode, btree_node_t *rnode, index_t idx);
-static bool try_insert_by_rotation_to_left(btree_node_t *node, __native key, void *value, btree_node_t *rsubtree);
-static bool try_insert_by_rotation_to_right(btree_node_t *node, __native key, void *value, btree_node_t *rsubtree);
+static bool try_insert_by_rotation_to_left(btree_node_t *node, btree_key_t key, void *value, btree_node_t *rsubtree);
+static bool try_insert_by_rotation_to_right(btree_node_t *node, btree_key_t key, void *value, btree_node_t *rsubtree);
 static bool try_rotation_from_left(btree_node_t *rnode);
 static bool try_rotation_from_right(btree_node_t *lnode);
@@ -109,5 +109,5 @@
  * @param leaf_node Leaf node where the insertion should begin.
  */ 
-void btree_insert(btree_t *t, __native key, void *value, btree_node_t *leaf_node)
+void btree_insert(btree_t *t, btree_key_t key, void *value, btree_node_t *leaf_node)
 {
 	btree_node_t *lnode;
@@ -133,5 +133,5 @@
  * @param node Start inserting into this node.
  */
-void _btree_insert(btree_t *t, __native key, void *value, btree_node_t *rsubtree, btree_node_t *node)
+void _btree_insert(btree_t *t, btree_key_t key, void *value, btree_node_t *rsubtree, btree_node_t *node)
 {
 	if (node->keys < BTREE_MAX_KEYS) {
@@ -152,5 +152,5 @@
 	} else {
 		btree_node_t *rnode;
-		__native median;
+		btree_key_t median;
 		
 		/*
@@ -194,5 +194,5 @@
  * @param leaf_node If not NULL, pointer to the leaf node where the key is found.
  */
-void btree_remove(btree_t *t, __native key, btree_node_t *leaf_node)
+void btree_remove(btree_t *t, btree_key_t key, btree_node_t *leaf_node)
 {
 	btree_node_t *lnode;
@@ -214,5 +214,5 @@
  * @param node Node where the key being removed resides.
  */
-void _btree_remove(btree_t *t, __native key, btree_node_t *node)
+void _btree_remove(btree_t *t, btree_key_t key, btree_node_t *node)
 {
 	if (ROOT_NODE(node)) {
@@ -291,5 +291,5 @@
  * @return Pointer to value or NULL if there is no such key.
  */
-void *btree_search(btree_t *t, __native key, btree_node_t **leaf_node)
+void *btree_search(btree_t *t, btree_key_t key, btree_node_t **leaf_node)
 {
 	btree_node_t *cur, *next;
@@ -417,5 +417,5 @@
  * @param lsubtree Pointer to the left subtree.
  */ 
-void node_insert_key_and_lsubtree(btree_node_t *node, __native key, void *value, btree_node_t *lsubtree)
+void node_insert_key_and_lsubtree(btree_node_t *node, btree_key_t key, void *value, btree_node_t *lsubtree)
 {
 	int i;
@@ -453,5 +453,5 @@
  * @param rsubtree Pointer to the right subtree.
  */ 
-void node_insert_key_and_rsubtree(btree_node_t *node, __native key, void *value, btree_node_t *rsubtree)
+void node_insert_key_and_rsubtree(btree_node_t *node, btree_key_t key, void *value, btree_node_t *rsubtree)
 {
 	int i;
@@ -485,5 +485,5 @@
  * @param key Key to be removed.
  */
-void node_remove_key_and_lsubtree(btree_node_t *node, __native key)
+void node_remove_key_and_lsubtree(btree_node_t *node, btree_key_t key)
 {
 	int i, j;
@@ -513,5 +513,5 @@
  * @param key Key to be removed.
  */
-void node_remove_key_and_rsubtree(btree_node_t *node, __native key)
+void node_remove_key_and_rsubtree(btree_node_t *node, btree_key_t key)
 {
 	int i, j;
@@ -550,5 +550,5 @@
  * @return Newly created right sibling of node.
  */ 
-btree_node_t *node_split(btree_node_t *node, __native key, void *value, btree_node_t *rsubtree, __native *median)
+btree_node_t *node_split(btree_node_t *node, btree_key_t key, void *value, btree_node_t *rsubtree, btree_key_t *median)
 {
 	btree_node_t *rnode;
@@ -685,5 +685,5 @@
 void rotate_from_left(btree_node_t *lnode, btree_node_t *rnode, index_t idx)
 {
-	__native key;
+	btree_key_t key;
 
 	key = lnode->key[lnode->keys - 1];
@@ -722,5 +722,5 @@
 void rotate_from_right(btree_node_t *lnode, btree_node_t *rnode, index_t idx)
 {
-	__native key;
+	btree_key_t key;
 
 	key = rnode->key[0];
@@ -761,5 +761,5 @@
  * @return True if the rotation was performed, false otherwise.
  */
-bool try_insert_by_rotation_to_left(btree_node_t *node, __native inskey, void *insvalue, btree_node_t *rsubtree)
+bool try_insert_by_rotation_to_left(btree_node_t *node, btree_key_t inskey, void *insvalue, btree_node_t *rsubtree)
 {
 	index_t idx;
@@ -808,5 +808,5 @@
  * @return True if the rotation was performed, false otherwise.
  */
-bool try_insert_by_rotation_to_right(btree_node_t *node, __native inskey, void *insvalue, btree_node_t *rsubtree)
+bool try_insert_by_rotation_to_right(btree_node_t *node, btree_key_t inskey, void *insvalue, btree_node_t *rsubtree)
 {
 	index_t idx;
