Improve error handling in BytesQueue.Push function in queue.go
- Lingua principale
- Go
- Stelle
- 8.2k
- Fork
- 614
- Merge medio
- 5g 12h
- PR unite (30g)
- 1
Descrizione
The Push function in BytesQueue currently uses a generic error message when the queue is full. It is suggested to use errFullQueue for a more descriptive error message.
Current Code:
```go
var (
errEmptyQueue = &queueError{"Empty queue"}
errInvalidIndex = &queueError{"Index must be greater than zero. Invalid index."}
errIndexOutOfBounds = &queueError{"Index out of range"}
)
```
Push function
```go
if !q.canInsertAfterTail(neededSize) {
if q.canInsertBeforeHead(neededSize) {
q.tail = leftMarginIndex
} else if q.capacity+neededSize >= q.maxCapacity && q.maxCapacity > 0 {
return -1, &queueError{"Full queue. Maximum size limit reached."}
} else {
q.allocateAdditionalMemory(neededSize)
}
}
```
Updated code
```go
var (
errEmptyQueue = &queueError{"Queue is empty."}
errInvalidIndex = &queueError{"Index must be greater than zero. Invalid index."}
errIndexOutOfBounds = &queueError{"Index out of range."}
errFullQueue = &queueError{"Queue is full. Maximum size limit reached."}
)
```
```go
if !q.canInsertAfterTail(neededSize) {
if q.canInsertBeforeHead(neededSize)) {
q.tail = leftMarginIndex
} else if q.capacity+neededSize >= q.maxCapacity && q.maxCapacity > 0 {
return -1, errFullQueue
} else {
q.allocateAdditionalMemory(neededSize)
}
}
```
This will improve the code quality
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Valutazione
Questa issue non è ancora stata valutata.