mirror of
https://github.com/rjNemo/underscore
synced 2026-06-07 02:56:42 +00:00
Document that Last panics on empty slices with a clear error message. Add examples for single element and empty slice cases. Related to Issue 13 (PR #41) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
32 lines
670 B
Markdown
32 lines
670 B
Markdown
---
|
|
title: "Init"
|
|
date: 2025-01-16T00:00:00-00:00
|
|
---
|
|
|
|
`Init` returns all elements except the last one, and the last element separately. Returns an empty slice and zero value if the input slice is empty. Useful for destructuring lists from the right.
|
|
|
|
```go
|
|
package main
|
|
|
|
import (
|
|
"fmt"
|
|
u "github.com/rjNemo/underscore"
|
|
)
|
|
|
|
func main() {
|
|
nums := []int{1, 2, 3, 4, 5}
|
|
init, last := u.Init(nums)
|
|
fmt.Println(init) // [1, 2, 3, 4]
|
|
fmt.Println(last) // 5
|
|
|
|
// Single element
|
|
single, val := u.Init([]int{42})
|
|
fmt.Println(single) // []
|
|
fmt.Println(val) // 42
|
|
|
|
// Empty slice
|
|
empty, zero := u.Init([]int{})
|
|
fmt.Println(empty) // []
|
|
fmt.Println(zero) // 0
|
|
}
|
|
```
|