arrow-optics / arrow.optics.typeclasses / Snoc
interface Snoc<S, A>
| init | Selects all elements except the last.open val S.init: Option<S> | 
    
| initOption | Provides an Optional between S and its init S.open fun initOption(): Optional<S, S> | 
    
| lastOption | Provides an Optional between S and its last element A.open fun lastOption(): Optional<S, A> | 
    
| snoc | Provides a Prism between a S and its init and last element A.abstract fun snoc(): Prism<S, Tuple2<S, A>>Append an element A to S. open infix fun S.snoc(last: A): S | 
    
| unsnoc | Deconstruct an S between its init and last element.open fun S.unsnoc(): Option<Tuple2<S, A>> | 
    
| fromIso | Lift an instance of Snoc using an Iso.fun <S, A, B> fromIso(SS: Snoc<A, B>, iso: Iso<S, A>): Snoc<S, B> | 
    
| invoke | Construct a Snoc instance from a Prism.operator fun <S, A> invoke(prism: Prism<S, Tuple2<S, A>>): Snoc<S, A> | 
    
| list | Snoc instance definition for List.fun <A> list(): Snoc<List<A>, A> | 
    
| string | Snoc instance for String.fun string(): Snoc<String, Char> | 
    
| ListKSnoc | Snoc instance definition for ListK.interface ~~ListKSnoc~~<A> : Snoc<ListK<A>, A> | 
    
| ListSnoc | Snoc instance definition for List.interface ~~ListSnoc~~<A> : Snoc<List<A>, A> | 
    
| StringSnoc | interface ~~StringSnoc~~ : Snoc<String, Char> | 
    
Do you like Arrow?
✖