tree 9a4519bd6098164a1eb87e31bc00aea61404783e
parent cfe90e9d6ada42c159478b1fdc5562faf1ac6a60
author Joe Tsai <joetsai@digital-static.net> 1499978721 -0600
committer GitHub <noreply@github.com> 1499978721 -0600

Add Last helper method (#6)

It is very common for FilterPath functions to operate on the last step
in a path. However, it is a hindrance to continually write:
    if len(p) == 0 {
        return false
    }
    return p[len(p)-1].Type() == ...

Instead, add a helper method Last that avoids the empty path check
and the indexing to the last element.
This allows users to simply write:
    return p.Last().Type() == ...

This is more readable and writeable.