blob: ac85deef7bc40f24868759fc9bb39f1bf9f71916 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
#| Copyright 2024 Peter McGoron
|
| Licensed under the Apache License, Version 2.0 (the "License");
| you may not use this file except in compliance with the License.
| You may obtain a copy of the License at
|
| http://www.apache.org/licenses/LICENSE-2.0
|
| Unless required by applicable law or agreed to in writing, software
| distributed under the License is distributed on an "AS IS" BASIS,
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
| See the License for the specific language governing permissions and
| limitations under the License.
|#
(define-library (mcgoron weight-balanced-trees internal)
(import (scheme base) (scheme case-lambda)
(srfi 128))
(cond-expand
;; Handle type declarations
(chicken (import (chicken type)))
(else (begin
(define-syntax :
(syntax-rules ()
((: dummy ...) (begin))))
(define-syntax the
(syntax-rules ()
((the type expression) expression))))))
(export wb-tree-node? non-null-wb-tree-node?
get-data get-left get-right get-size
balanced?
in-order-vector->node
node->in-order-list
join join2 split
search
union intersection difference
every)
(include "mcgoron.weight-balanced-trees.internal.scm"))
|