Add docs for hash trees.

This commit is contained in:
Leif Andersen 2016-07-23 01:14:42 -04:00
parent 8588c43709
commit e5ff658875
2 changed files with 24 additions and 0 deletions

View File

@ -309,6 +309,27 @@ can be @cpp{NULL} in that case as well. If the table holds keys
weakly, then @var{key} points to a (weak) pointer to the actual key, weakly, then @var{key} points to a (weak) pointer to the actual key,
and the weak pointer's value can be @cpp{NULL}.} and the weak pointer's value can be @cpp{NULL}.}
@function[(Scheme_Hash_Tree* scheme_make_hash_tree
[int type])]{
Similar to @cpp{scheme_make_hash_table}, but creates a hash
tree. A hash tree is equivalent to an immutable hash table
created by @racket[hash]. The @var{type} argument must be
either either @cpp{SCHEME_hash_ptr} or
@cpp{SCHEME_hash_string}, which determines how keys are
compared.}
@function[(void scheme_hash_tree_set
[Scheme_Hash_Tree* table]
[Scheme_Object* key]
[Scheme_Object* val])]{
Like @cpp{scheme_hash_set}, but operates on @cpp{Scheme_Hash_Tree}.
}
@function[(Scheme_Object* scheme_hash_tree_get
[Scheme_Hash_Tree* table]
[Scheme_Object* key])]{
Like @cpp{scheme_hash_get}, but operates on @cpp{Scheme_Hash_Tree}.
}
@function[(intptr_t scheme_double_to_int @function[(intptr_t scheme_double_to_int
[char* where] [char* where]

View File

@ -203,6 +203,9 @@ types:
@item{@cppdef{scheme_hash_table_type} --- test for this type with @item{@cppdef{scheme_hash_table_type} --- test for this type with
@cppdef{SCHEME_HASHTP}} @cppdef{SCHEME_HASHTP}}
@item{@cppdef{scheme_hash_tree_type} --- test for this type
with @cppdef{SCHEME_HASHTRP}}
@item{@cppdef{scheme_bucket_table_type} --- test for this type with @item{@cppdef{scheme_bucket_table_type} --- test for this type with
@cppdef{SCHEME_BUCKTP}} @cppdef{SCHEME_BUCKTP}}