Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/amit-davidson/Building-a-NoSQL-database-from-zero
/ functions
Functions
318 in github.com/amit-davidson/Building-a-NoSQL-database-from-zero
⨍
Functions
318
◇
Types & classes
56
↓ 1 callers
Function
newDal
(path string, options *Options)
Part 5/dal.go:38
↓ 1 callers
Function
newDal
(path string, options *Options)
Part 6/dal.go:38
↓ 1 callers
Function
newDal
(path string, options *Options)
Part 4/dal.go:38
↓ 1 callers
Function
newDal
(path string)
Part 3/dal.go:24
↓ 1 callers
Function
newFreelist
()
Part 1/freelist.go:18
↓ 1 callers
Function
newItem
(key []byte, value []byte)
Part 3/node.go:25
↓ 1 callers
Method
readFreelist
()
Part 7/dal.go:201
↓ 1 callers
Method
readFreelist
()
Part 2/dal.go:108
↓ 1 callers
Method
readFreelist
()
Part 5/dal.go:210
↓ 1 callers
Method
readFreelist
()
Part 6/dal.go:201
↓ 1 callers
Method
readFreelist
()
Part 4/dal.go:210
↓ 1 callers
Method
readFreelist
()
Part 3/dal.go:141
↓ 1 callers
Method
readMeta
()
Part 7/dal.go:237
↓ 1 callers
Method
readMeta
()
Part 2/dal.go:144
↓ 1 callers
Method
readMeta
()
Part 5/dal.go:246
↓ 1 callers
Method
readMeta
()
Part 6/dal.go:237
↓ 1 callers
Method
readMeta
()
Part 4/dal.go:246
↓ 1 callers
Method
readMeta
()
Part 3/dal.go:177
↓ 1 callers
Method
rebalanceRemove
rebalanceRemove rebalances the tree after a remove operation. This can be either by rotating to the right, to the left or by merging. First, the sibli
Part 7/node.go:331
↓ 1 callers
Method
rebalanceRemove
rebalanceRemove rebalances the tree after a remove operation. This can be either by rotating to the right, to the left or by merging. First, the sibli
Part 5/node.go:331
↓ 1 callers
Method
rebalanceRemove
rebalanceRemove rebalances the tree after a remove operation. This can be either by rotating to the right, to the left or by merging. First, the sibli
Part 6/node.go:331
↓ 1 callers
Method
releasePage
(page pgnum)
Part 2/freelist.go:38
↓ 1 callers
Method
releasePage
(page pgnum)
Part 5/freelist.go:38
↓ 1 callers
Method
releasePage
(page pgnum)
Part 4/freelist.go:38
↓ 1 callers
Method
releasePage
(page pgnum)
Part 3/freelist.go:38
↓ 1 callers
Method
removeItemFromInternal
(index int)
Part 7/node.go:381
↓ 1 callers
Method
removeItemFromInternal
(index int)
Part 5/node.go:381
↓ 1 callers
Method
removeItemFromInternal
(index int)
Part 6/node.go:381
↓ 1 callers
Method
removeItemFromLeaf
removeItemFromLeaf removes an item from a leaf node. It means there is no handling of child nodes.
Part 7/node.go:376
↓ 1 callers
Method
removeItemFromLeaf
removeItemFromLeaf removes an item from a leaf node. It means there is no handling of child nodes.
Part 5/node.go:376
↓ 1 callers
Method
removeItemFromLeaf
removeItemFromLeaf removes an item from a leaf node. It means there is no handling of child nodes.
Part 6/node.go:376
↓ 1 callers
Function
rotateLeft
(aNode, pNode, bNode *Node, bNodeIndex int)
Part 7/node.go:447
↓ 1 callers
Function
rotateLeft
(aNode, pNode, bNode *Node, bNodeIndex int)
Part 5/node.go:447
↓ 1 callers
Function
rotateLeft
(aNode, pNode, bNode *Node, bNodeIndex int)
Part 6/node.go:447
↓ 1 callers
Function
rotateRight
(aNode, pNode, bNode *Node, bNodeIndex int)
Part 7/node.go:417
↓ 1 callers
Function
rotateRight
(aNode, pNode, bNode *Node, bNodeIndex int)
Part 5/node.go:417
↓ 1 callers
Function
rotateRight
(aNode, pNode, bNode *Node, bNodeIndex int)
Part 6/node.go:417
↓ 1 callers
Method
writeFreelist
()
Part 4/dal.go:221
↓ 1 callers
Method
writeFreelist
()
Part 3/dal.go:152
↓ 1 callers
Method
writeMeta
(meta *meta)
Part 7/dal.go:225
↓ 1 callers
Method
writeMeta
(meta *meta)
Part 2/dal.go:132
↓ 1 callers
Method
writeMeta
(meta *meta)
Part 5/dal.go:234
↓ 1 callers
Method
writeMeta
(meta *meta)
Part 6/dal.go:225
↓ 1 callers
Method
writeMeta
(meta *meta)
Part 4/dal.go:234
↓ 1 callers
Method
writeMeta
(meta *meta)
Part 3/dal.go:165
↓ 1 callers
Method
writeNode
(n *Node)
Part 7/dal.go:179
↓ 1 callers
Method
writeNode
(n *Node)
Part 6/dal.go:179
↓ 1 callers
Method
writeNode
(node *Node)
Part 3/node.go:36
↓ 1 callers
Method
writeNodes
(nodes ...*Node)
Part 4/node.go:57
↓ 1 callers
Method
writePage
(p *page)
Part 1/dal.go:64
Method
Commit
()
Part 6/tx.go:74
Method
DeleteCollection
(name []byte)
Part 7/tx.go:142
Method
Find
Find Returns an item according based on the given key by performing a binary search.
Part 6/collection.go:94
Method
ID
()
Part 7/collection.go:29
Function
Open
(path string, options *Options)
Part 6/db.go:13
Method
Put
Put adds a key to the tree. It finds the correct node and the insertion index and adds the item. When performing the search, the ancestors are returne
Part 6/collection.go:24
Method
ReadTx
()
Part 6/db.go:32
Method
Remove
Remove removes a key from the tree. It finds the correct node and the index to remove the item from and removes it. When performing the search, the an
Part 6/collection.go:115
Method
Rollback
()
Part 7/tx.go:59
Method
Rollback
()
Part 6/tx.go:59
Method
WriteTx
()
Part 6/db.go:37
Method
canSpareAnElement
canSpareAnElement checks if the node size is big enough to populate a page after giving away one item.
Part 4/node.go:73
Method
close
()
Part 1/dal.go:35
Method
deleteNode
(pageNum pgnum)
Part 7/dal.go:197
Method
deleteNode
(pageNum pgnum)
Part 6/dal.go:197
Method
deleteNode
(pageNum pgnum)
Part 4/dal.go:206
Method
deleteNode
(pageNum pgnum)
Part 3/dal.go:120
Method
deserialize
(item *Item)
Part 7/collection.go:49
Method
deserialize
(buf []byte)
Part 7/meta.go:36
Method
deserialize
(buf []byte)
Part 7/freelist.go:60
Method
deserialize
(buf []byte)
Part 2/freelist.go:60
Method
deserialize
(buf []byte)
Part 1/freelist.go:61
Method
deserialize
(buf []byte)
Part 5/meta.go:33
Method
deserialize
(buf []byte)
Part 5/freelist.go:60
Method
deserialize
(buf []byte)
Part 6/meta.go:33
Method
deserialize
(buf []byte)
Part 6/freelist.go:60
Method
deserialize
(buf []byte)
Part 4/meta.go:33
Method
deserialize
(buf []byte)
Part 4/freelist.go:60
Method
deserialize
(buf []byte)
Part 3/meta.go:33
Method
deserialize
(buf []byte)
Part 3/freelist.go:60
Method
getNode
(pageNum pgnum)
Part 7/dal.go:168
Method
getNode
(pageNum pgnum)
Part 6/dal.go:168
Function
isFirst
(index int)
Part 4/node.go:44
Function
isLast
(index int, parentNode *Node)
Part 4/node.go:40
Method
isOverPopulated
isOverPopulated checks if the node size is bigger than the size of a page.
Part 7/node.go:68
Method
isOverPopulated
isOverPopulated checks if the node size is bigger than the size of a page.
Part 5/node.go:68
Method
isOverPopulated
isOverPopulated checks if the node size is bigger than the size of a page.
Part 6/node.go:68
Method
isOverPopulated
isOverPopulated checks if the node size is bigger than the size of a page.
Part 4/node.go:68
Method
isUnderPopulated
isUnderPopulated checks if the node size is smaller than the size of a page.
Part 7/node.go:82
Method
isUnderPopulated
isUnderPopulated checks if the node size is smaller than the size of a page.
Part 5/node.go:82
Method
isUnderPopulated
isUnderPopulated checks if the node size is smaller than the size of a page.
Part 6/node.go:82
Method
isUnderPopulated
isUnderPopulated checks if the node size is smaller than the size of a page.
Part 4/node.go:82
Method
isUnderPopulated
(node *Node)
Part 4/dal.go:128
Function
main
()
Part 7/main.go:5
Function
main
()
Part 2/main.go:3
Function
main
()
Part 1/main.go:5
Function
main
()
Part 5/main.go:8
Function
main
()
Part 4/main.go:8
Function
main
()
Part 3/main.go:5
Function
newCollection
(name []byte, root pgnum)
Part 7/collection.go:18
← previous
next →
201–300 of 318, ranked by callers