## listpushback ### Instructions Write a function `ListReverse` that reverses the elements order of a given linked list. - Use pointers when ever you can ### Expected function and structure ```go type NodeL struct { Data interface{} Next *NodeL } type List struct { Head *NodeL Tail *NodeL } func ListReverse(l *List) { } ``` ### Usage Here is a possible [program](TODO-LINK) to test your function : ```go package main import ( "fmt" piscine ".." ) func main() { link := &piscine.List{} piscine.ListPushBack(link, 1) piscine.ListPushBack(link, 2) piscine.ListPushBack(link, 3) piscine.ListPushBack(link, 4) piscine.ListReverse(link) for link.Head != nil { fmt.Println(link.Head.Data) link.Head = link.Head.Next } } ``` And its output : ```console student@ubuntu:~/piscine/test$ go build student@ubuntu:~/piscine/test$ ./test 4 3 2 1 student@ubuntu:~/piscine/test$ ```