stream.Last

Returns the last element in the stream.

Function signature

    func Last() (out output)

Arguments

None

Output

Name Type Description
output stream.output It contains both value and error

Errors

Type Message
err.items-nil It can not be taken an element from a nil stream
err.items-nil It can not be taken an element from an empty stream

Examples

ppackage main
 
 import (
 	"fmt"
 	"github.com/wesovilabs/koazee"
 )
 
 var numbers = []int{1, 3, 5, 7, 9}
 
 func main() {
 	out := koazee.Stream().
 		With(numbers).
 		Last()
 	fmt.Printf("%d\n", out.Val())
 
 }
package main

import (
	"fmt"
	"github.com/wesovilabs/koazee"
)

type genre int

const (
	female genre = iota
	male
)

type primate struct {
	name   string
	age    int
	family string
	genre  genre
}

func newPrimate(name string, age int, family string, genre genre) *primate {
	return &primate{
		name:   name,
		age:    age,
		family: family,
		genre:  genre,
	}
}

var primates = []*primate{
	newPrimate("John", 15, "Capuchin", male),
	newPrimate("Laura", 12, "Squirrel monkey", female),
	newPrimate("Benjamin", 23, "Spider monkey", male),
	newPrimate("George", 19, "Golden Lion Tamarin", male),
	newPrimate("Jane", 33, "Orangutan", female),
	newPrimate("Sarah", 7, "Gibbon", female),
}

func main() {
	primate := koazee.StreamOf(primates).
		Last().Val().(*primate)

	fmt.Printf("%s was invited to the party\n", primate.name)

}