Motr  M0
list.h File Reference
#include "format/format.h"
#include "format/format_xc.h"
Include dependency graph for list.h:

Go to the source code of this file.

Data Structures

struct  m0_be_list_descr
 
struct  m0_be_list_link
 
struct  m0_be_list_head
 
struct  m0_be_list
 

Macros

#define __MOTR_BE_LIST_H__
 
#define M0_BE_LIST_DESCR(name, amb_type, link_field, magic_field, link_magic, head_magic)
 
#define M0_BE_LIST_DESCR_DEFINE(name, hname, scope, amb_type, link_field, magic_field, link_magic, head_magic)
 
#define M0_BE_LIST_DECLARE(name, scope, amb_type)
 
#define M0_BE_LIST_DEFINE(name, scope, amb_type)
 
#define m0_be_list_for(name, head, obj)
 
#define m0_be_list_endfor   ;(void)__bl; } while (0)
 
#define m0_be_list_forall(name, var, head, ...)
 

Enumerations

enum  m0_be_list_format_version { M0_BE_LIST_FORMAT_VERSION_1 = 1, M0_BE_LIST_FORMAT_VERSION = M0_BE_LIST_FORMAT_VERSION_1 }
 
enum  m0_be_list_op {
  M0_BLO_CREATE, M0_BLO_DESTROY, M0_BLO_ADD, M0_BLO_DEL,
  M0_BLO_TLINK_CREATE, M0_BLO_TLINK_DESTROY, M0_BLO_NR
}
 

Functions

struct m0_be_allocator_call_stat M0_XCA_DOMAIN (be)
 
M0_INTERNAL void m0_be_list_credit (enum m0_be_list_op optype, m0_bcount_t nr, struct m0_be_tx_credit *accum)
 
M0_INTERNAL void m0_be_list_create (struct m0_be_list *blist, const struct m0_be_list_descr *descr, struct m0_be_tx *tx)
 
M0_INTERNAL void m0_be_list_destroy (struct m0_be_list *blist, const struct m0_be_list_descr *descr, struct m0_be_tx *tx)
 
M0_INTERNAL bool m0_be_list_is_empty (struct m0_be_list *blist, const struct m0_be_list_descr *descr)
 
M0_INTERNAL void m0_be_tlink_create (void *obj, const struct m0_be_list_descr *descr, struct m0_be_tx *tx)
 
M0_INTERNAL void m0_be_tlink_destroy (void *obj, const struct m0_be_list_descr *descr, struct m0_be_tx *tx)
 
M0_INTERNAL void * m0_be_list_tail (struct m0_be_list *blist, const struct m0_be_list_descr *descr)
 
M0_INTERNAL void * m0_be_list_head (struct m0_be_list *blist, const struct m0_be_list_descr *descr)
 
M0_INTERNAL void * m0_be_list_prev (struct m0_be_list *blist, const struct m0_be_list_descr *descr, const void *obj)
 
M0_INTERNAL void * m0_be_list_next (struct m0_be_list *blist, const struct m0_be_list_descr *descr, const void *obj)
 
M0_INTERNAL void m0_be_list_add (struct m0_be_list *blist, const struct m0_be_list_descr *descr, struct m0_be_tx *tx, void *obj)
 
M0_INTERNAL void m0_be_list_add_after (struct m0_be_list *blist, const struct m0_be_list_descr *descr, struct m0_be_tx *tx, void *obj, void *obj_new)
 
M0_INTERNAL void m0_be_list_add_before (struct m0_be_list *blist, const struct m0_be_list_descr *descr, struct m0_be_tx *tx, void *obj, void *obj_new)
 
M0_INTERNAL void m0_be_list_add_tail (struct m0_be_list *blist, const struct m0_be_list_descr *descr, struct m0_be_tx *tx, void *obj)
 
M0_INTERNAL void m0_be_list_del (struct m0_be_list *blist, const struct m0_be_list_descr *descr, struct m0_be_tx *tx, void *obj)
 

Variables

struct m0_be_list_linkbll_next
 
struct m0_be_list_linkbll_prev
 
struct m0_be_list_linkblh_head
 
struct m0_be_list_linkblh_tail
 
struct m0_format_header bl_format_header
 
struct m0_be_list_head bl_head
 
uint64_t bl_magic
 
struct m0_format_footer bl_format_footer
 
enum m0_be_list_op M0_XCA_DOMAIN
 

Macro Definition Documentation

◆ __MOTR_BE_LIST_H__

#define __MOTR_BE_LIST_H__

Definition at line 25 of file list.h.

Variable Documentation

◆ bl_format_footer

struct m0_format_footer bl_format_footer

Definition at line 492 of file list.h.

◆ bl_format_header

struct m0_format_header bl_format_header

Definition at line 489 of file list.h.

◆ bl_head

struct m0_be_list_head bl_head

Definition at line 490 of file list.h.

◆ bl_magic

uint64_t bl_magic

Definition at line 491 of file list.h.

◆ blh_head

struct m0_be_list_link* blh_head

Definition at line 489 of file list.h.

◆ blh_tail

struct m0_be_list_link* blh_tail

Definition at line 490 of file list.h.

◆ bll_next

struct m0_be_list_link* bll_next

Definition at line 489 of file list.h.

◆ bll_prev

struct m0_be_list_link* bll_prev

Definition at line 490 of file list.h.