Function report |
Source Code:lib\xarray.c |
Create Date:2022-07-28 06:13:25 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:xas_create() - Create a slot to store an entry in.*@xas: XArray operation state.*@allow_root: %true if we can store the entry in the root directly* Most users will not need to call this function directly, as it is called* by xas_store()
Proto:static void *xas_create(struct xa_state *xas, bool allow_root)
Type:void
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct xa_state * | xas | |
| bool | allow_root |
| 646 | xa_node = NULL |
| 647 | If Not entry && xa_zero_busy(xa) Then entry = XA_ZERO_ENTRY |
| 649 | shift = xas_expand adds nodes to the head of the tree until it has reached* sufficient height to be able to contain @xas->xa_index |
| 650 | If shift < 0 Then Return NULL |
| 652 | If Not shift && Not allow_root Then shift = The xarray is constructed out of a set of 'chunks' of pointers |
| 657 | Return NULL |
| 658 | Else if node Then |
| 664 | Else |
| 672 | If Not entry Then |
| 674 | If Not node Then Break |
| 676 | If xa_track_free(xa) Then node_mark_all(node, XA_FREE_MARK) |
| 679 | Else if Private Then |
| 681 | Else |
| 682 | Break |
| 684 | entry = xas_descend(xas, node) |
| 688 | Return entry |
| Name | Describe |
|---|---|
| xas_create_range | xas_create_range() - Ensure that stores to this range will succeed*@xas: XArray operation state.* Creates all of the slots in the range covered by @xas. Sets @xas to* create single-index entries and positions it at the beginning of the* range |
| xas_store | xas_store() - Store this entry in the XArray |
| xa_store_range | xa_store_range() - Store this entry at a range of indices in the XArray |
| Source code conversion tool public plug-in interface | X |
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |