chibi-scheme/lib/chibi/iset.sld
2023-05-23 22:03:19 +09:00

23 lines
972 B
Scheme

;; Copyright (c) 2004-2015 Alex Shinn. All rights reserved.
;; BSD-style license: http://synthcode.com/license.txt
;;> A space efficient integer set (iset) implementation, optimized for
;;> minimal space usage and fast membership lookup. General set
;;> operations are provided based on the character set operations
;;> found in SRFI-14.
(define-library (chibi iset)
(import (scheme base)
(chibi iset base)
(chibi iset iterators)
(chibi iset constructors))
(export
%make-iset make-iset iset? iset-contains? Integer-Set
iset iset-copy list->iset list->iset!
iset-adjoin iset-adjoin! iset-delete iset-delete!
iset-union iset-union! iset-intersection iset-intersection!
iset-difference iset-difference!
iset-empty? iset-fold iset-fold-node iset-for-each iset-for-each-node
iset-map iset->list iset-size iset= iset<= iset>=
iset-cursor iset-cursor? iset-cursor-next iset-ref end-of-iset?
iset-rank iset-select))