| Copyright | (C) 2014-2016 Edward Kmett and Eric Mertens |
|---|---|
| License | BSD-style (see the file LICENSE) |
| Maintainer | Edward Kmett <ekmett@gmail.com> |
| Stability | provisional |
| Portability | non-portable |
| Safe Haskell | Safe-Inferred |
| Language | Haskell2010 |
Control.Lens.Internal.List
Description
This module provides utility functions on lists used by the library implementation.
Synopsis
- ordinalNub :: Int -> [Int] -> [Int]
- stripSuffix :: Eq a => [a] -> [a] -> Maybe [a]
Documentation
Return the the subset of given ordinals within a given bound and in order of the first occurrence seen.
Bound: 0 <= x < l
>>>ordinalNub 3 [-1,2,1,4,2,3][2,1]
stripSuffix :: Eq a => [a] -> [a] -> Maybe [a] Source #
\(\mathcal{O}(\min(m,n))\). The stripSuffix function drops the given
suffix from a list. It returns Nothing if the list did not end with the
suffix given, or Just the list after the suffix, if it does.
>>>stripSuffix "bar" "foobar"Just "foo"
>>>stripSuffix "foo" "foo"Just ""
>>>stripSuffix "bar" "barfoo"Nothing
>>>stripSuffix "foo" "barfoobaz"Nothing