Changeset 80bcaed in mainline for kernel/generic/include/adt


Ignore:
Timestamp:
2007-02-03T13:22:24Z (18 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
f619ec11
Parents:
fa8e7d2
Message:

Merge as_t structure into one and leave the differring parts in as_genarch_t.

Indentation and formatting changes in header files.

Location:
kernel/generic/include/adt
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/include/adt/btree.h

    rfa8e7d2 r80bcaed  
    4949        count_t keys;
    5050
    51         /** Keys. We currently support only single keys. Additional room for one extra key is provided. */
     51        /**
     52         * Keys. We currently support only single keys. Additional room for one
     53         * extra key is provided.
     54         */
    5255        btree_key_t key[BTREE_MAX_KEYS + 1];
    5356
    5457        /**
    55          * Pointers to values. Sorted according to the key array. Defined only in leaf-level.
    56          * There is room for storing value for the extra key.
     58         * Pointers to values. Sorted according to the key array. Defined only in
     59         * leaf-level. There is room for storing value for the extra key.
    5760         */
    5861        void *value[BTREE_MAX_KEYS + 1];
    5962       
    6063        /**
    61          * Pointers to descendants of this node sorted according to the key array.
     64         * Pointers to descendants of this node sorted according to the key
     65         * array.
     66         *
    6267         * subtree[0] points to subtree with keys lesser than to key[0].
    63          * subtree[1] points to subtree with keys greater than or equal to key[0] and lesser than key[1].
     68         * subtree[1] points to subtree with keys greater than or equal to
     69         *            key[0] and lesser than key[1].
    6470         * ...
    6571         * There is room for storing a subtree pointer for the extra key.
     
    7076        struct btree_node *parent;
    7177
    72         /** Link connecting leaf-level nodes. Defined only when this node is a leaf. */
     78        /**
     79         * Link connecting leaf-level nodes. Defined only when this node is a
     80         * leaf. */
    7381        link_t leaf_link;
    7482
    75         /** Variables needed by btree_print(). */       
     83        /* Variables needed by btree_print(). */       
    7684        link_t bfs_link;
    7785        int depth;
     
    8997extern void btree_destroy(btree_t *t);
    9098
    91 extern void btree_insert(btree_t *t, btree_key_t key, void *value, btree_node_t *leaf_node);
     99extern void btree_insert(btree_t *t, btree_key_t key, void *value,
     100    btree_node_t *leaf_node);
    92101extern void btree_remove(btree_t *t, btree_key_t key, btree_node_t *leaf_node);
    93102extern void *btree_search(btree_t *t, btree_key_t key, btree_node_t **leaf_node);
    94103
    95 extern btree_node_t *btree_leaf_node_left_neighbour(btree_t *t, btree_node_t *node);
    96 extern btree_node_t *btree_leaf_node_right_neighbour(btree_t *t, btree_node_t *node);
     104extern btree_node_t *btree_leaf_node_left_neighbour(btree_t *t,
     105    btree_node_t *node);
     106extern btree_node_t *btree_leaf_node_right_neighbour(btree_t *t,
     107    btree_node_t *node);
    97108
    98109extern void btree_print(btree_t *t);
  • kernel/generic/include/adt/fifo.h

    rfa8e7d2 r80bcaed  
    107107 */
    108108#define fifo_push(name, value) \
    109         name.fifo[name.tail = (name.tail + 1) < name.items ? (name.tail + 1) : 0] = (value)
     109        name.fifo[name.tail = \
     110            (name.tail + 1) < name.items ? (name.tail + 1) : 0] = (value)
    110111
    111112/** Allocate memory for dynamic FIFO.
  • kernel/generic/include/adt/hash_table.h

    rfa8e7d2 r80bcaed  
    4343        /** Hash function.
    4444         *
    45          * @param key Array of keys needed to compute hash index. All keys must be passed.
     45         * @param key   Array of keys needed to compute hash index. All keys must
     46         *              be passed.
    4647         *
    4748         * @return Index into hash table.
     
    5152        /** Hash table item comparison function.
    5253         *
    53          * @param key Array of keys that will be compared with item. It is not necessary to pass all keys.
     54         * @param key   Array of keys that will be compared with item. It is not
     55         *              necessary to pass all keys.
    5456         *
    5557         * @return true if the keys match, false otherwise.
     
    7274} hash_table_t;
    7375
    74 #define hash_table_get_instance(item, type, member)     list_get_instance((item), type, member)
     76#define hash_table_get_instance(item, type, member) \
     77        list_get_instance((item), type, member)
    7578
    76 extern void hash_table_create(hash_table_t *h, count_t m, count_t max_keys, hash_table_operations_t *op);
     79extern void hash_table_create(hash_table_t *h, count_t m, count_t max_keys,
     80    hash_table_operations_t *op);
    7781extern void hash_table_insert(hash_table_t *h, unative_t key[], link_t *item);
    7882extern link_t *hash_table_find(hash_table_t *h, unative_t key[]);
  • kernel/generic/include/adt/list.h

    rfa8e7d2 r80bcaed  
    4848 * @param name Name of the new statically allocated list.
    4949 */
    50 #define LIST_INITIALIZE(name)           link_t name = { .prev = &name, .next = &name }
     50#define LIST_INITIALIZE(name) \
     51        link_t name = { .prev = &name, .next = &name }
    5152
    5253/** Initialize doubly-linked circular list link
     
    108109 * Remove item from doubly-linked circular list.
    109110 *
    110  * @param link Pointer to link_t structure to be removed from the list it is contained in.
     111 * @param link  Pointer to link_t structure to be removed from the list it is
     112 *              contained in.
    111113 */
    112114static inline void list_remove(link_t *link)
     
    136138 * concatenates splitted lists and splits concatenated lists.
    137139 *
    138  * @param part1 Pointer to link_t structure leading the first (half of the headless) list.
    139  * @param part2 Pointer to link_t structure leading the second (half of the headless) list.
     140 * @param part1 Pointer to link_t structure leading the first (half of the
     141 *              headless) list.
     142 * @param part2 Pointer to link_t structure leading the second (half of the
     143 *              headless) list.
    140144 */
    141145static inline void headless_list_split_or_concat(link_t *part1, link_t *part2)
     
    155159 * Split headless doubly-linked circular list.
    156160 *
    157  * @param part1 Pointer to link_t structure leading the first half of the headless list.
    158  * @param part2 Pointer to link_t structure leading the second half of the headless list.
     161 * @param part1 Pointer to link_t structure leading the first half of the
     162 *              headless list.
     163 * @param part2 Pointer to link_t structure leading the second half of the
     164 *              headless list.
    159165 */
    160166static inline void headless_list_split(link_t *part1, link_t *part2)
     
    168174 *
    169175 * @param part1 Pointer to link_t structure leading the first headless list.
    170  * @param part2 Pointer to link_t structure leading the second headless list. 
     176 * @param part2 Pointer to link_t structure leading the second headless list.
    171177 */
    172178static inline void headless_list_concat(link_t *part1, link_t *part2)
     
    175181}
    176182
    177 #define list_get_instance(link,type,member) (type *)(((uint8_t*)(link))-((uint8_t*)&(((type *)NULL)->member)))
     183#define list_get_instance(link,type,member) \
     184        ((type *)(((uint8_t *)(link)) - ((uint8_t *)&(((type *)NULL)->member))))
    178185
    179186extern bool list_member(const link_t *link, const link_t *head);
Note: See TracChangeset for help on using the changeset viewer.