mirror of
https://github.com/superseriousbusiness/gotosocial
synced 2025-06-05 21:59:39 +02:00
update go-structr to v0.8.11 (#3380)
This commit is contained in:
52
vendor/codeberg.org/gruf/go-structr/list.go
generated
vendored
52
vendor/codeberg.org/gruf/go-structr/list.go
generated
vendored
@@ -40,9 +40,12 @@ func new_list() *list {
|
||||
|
||||
// free_list releases the list.
|
||||
func free_list(list *list) {
|
||||
list.head = nil
|
||||
list.tail = nil
|
||||
list.len = 0
|
||||
if list.head != nil ||
|
||||
list.tail != nil ||
|
||||
list.len != 0 {
|
||||
should_not_reach()
|
||||
return
|
||||
}
|
||||
list_pool.Put(list)
|
||||
}
|
||||
|
||||
@@ -115,21 +118,28 @@ func (l *list) remove(elem *list_elem) {
|
||||
elem.prev = nil
|
||||
|
||||
switch {
|
||||
// elem is ONLY one in list.
|
||||
case next == nil && prev == nil:
|
||||
l.head = nil
|
||||
l.tail = nil
|
||||
case next == nil:
|
||||
if prev == nil {
|
||||
// next == nil && prev == nil
|
||||
//
|
||||
// elem is ONLY one in list.
|
||||
l.head = nil
|
||||
l.tail = nil
|
||||
} else {
|
||||
// next == nil && prev != nil
|
||||
//
|
||||
// elem is last in list.
|
||||
l.tail = prev
|
||||
prev.next = nil
|
||||
}
|
||||
|
||||
// elem is front in list.
|
||||
case next != nil && prev == nil:
|
||||
case prev == nil:
|
||||
// next != nil && prev == nil
|
||||
//
|
||||
// elem is front in list.
|
||||
l.head = next
|
||||
next.prev = nil
|
||||
|
||||
// elem is last in list.
|
||||
case prev != nil && next == nil:
|
||||
l.tail = prev
|
||||
prev.next = nil
|
||||
|
||||
// elem in middle of list.
|
||||
default:
|
||||
next.prev = prev
|
||||
@@ -139,17 +149,3 @@ func (l *list) remove(elem *list_elem) {
|
||||
// Decr count
|
||||
l.len--
|
||||
}
|
||||
|
||||
// rangefn will range all elems in list, passing each to fn.
|
||||
func (l *list) rangefn(fn func(*list_elem)) {
|
||||
if fn == nil {
|
||||
panic("nil fn")
|
||||
}
|
||||
for e := l.head; //
|
||||
e != nil; //
|
||||
{
|
||||
n := e.next
|
||||
fn(e)
|
||||
e = n
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user