Deprecated: use Value or HasValue instead.
()
| 324 | |
| 325 | // Deprecated: use Value or HasValue instead. |
| 326 | func (a *Array) Last() *Value { |
| 327 | opChain := a.chain.enter("Last()") |
| 328 | defer opChain.leave() |
| 329 | |
| 330 | if opChain.failed() { |
| 331 | return newValue(opChain, nil) |
| 332 | } |
| 333 | |
| 334 | if len(a.value) == 0 { |
| 335 | opChain.fail(AssertionFailure{ |
| 336 | Type: AssertNotEmpty, |
| 337 | Actual: &AssertionValue{a.value}, |
| 338 | Errors: []error{ |
| 339 | errors.New("expected: non-empty array"), |
| 340 | }, |
| 341 | }) |
| 342 | return newValue(opChain, nil) |
| 343 | } |
| 344 | |
| 345 | return newValue(opChain, a.value[len(a.value)-1]) |
| 346 | } |
| 347 | |
| 348 | // Iter returns a new slice of Values attached to array elements. |
| 349 | // |