Typed-Stack: A Typed Racket stack library
| (require typed-stack) | package: typed-stack | 
1 Procedures
Almost every procedure has two forms: one that mutates state and a functional counterpart. Functional versions of the procedures will return the stack as it was modified while the procedures that mutate state will return Void.
procedure
(make-stack v ...) → (Stack A)
v : Any 
procedure
(empty-stack) → (Stack Any)
procedure
(stack->list stk) → (Listof A)
stk : (Stack A) 
procedure
(stack->string stk) → String
stk : (Stack A) 
procedure
(stack-empty? stk) → Boolean
stk : (Stack A) 
procedure
(stack-length stk) → Nonnegative-Integer
stk : (Stack A) 
procedure
(in-stack stk) → (Sequenceof A)
stk : (Stack A) 
procedure
stk : (Stack A) 
procedure
(push-over! stk) → Void
stk : (Stack A) 
procedure
(reverse-rotate stk) → (Stack A)
stk : (Stack A) 
procedure
(reverse-rotate! stk) → Void
stk : (Stack A) 
procedure
stk : (Stack A) 
procedure
(push-tuck! stk) → Void
stk : (Stack A) 
procedure
stk : (Stack A) i : Nonnegative-Integer 
procedure
(push-pick! stk i) → Void
stk : (Stack A) i : Nonnegative-Integer 
procedure
stk : (Stack A) i : Nonnegative-Integer 
procedure
stk : (Stack A) i : Nonnegative-Integer 
2 License
The code in this package and this documentation is under the BSD 3-clause.
| Copyright (c) 2015 - 2020, Lehi Toskin | 
| All rights reserved. | 
| 
 | 
| Redistribution and use in source and binary forms, with or without | 
| modification, are permitted provided that the following conditions are met: | 
| 
 | 
| * Redistributions of source code must retain the above copyright notice, this | 
| list of conditions and the following disclaimer. | 
| 
 | 
| * Redistributions in binary form must reproduce the above copyright notice, | 
| this list of conditions and the following disclaimer in the documentation | 
| and/or other materials provided with the distribution. | 
| 
 | 
| * Neither the name of typed-stack nor the names of its | 
| contributors may be used to endorse or promote products derived from | 
| this software without specific prior written permission. | 
| 
 | 
| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | 
| AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | 
| IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | 
| DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE | 
| FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | 
| DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | 
| SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER | 
| CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, | 
| OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 
| OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |