1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-24 12:20:20 +02:00

Replace bit-position with bitvector-position

The old name was wonky and had bad argument order.

* NEWS: Add entry.
* doc/ref/api-data.texi (Bit Vectors): Update.
* libguile/bitvectors.h:
* libguile/bitvectors.c (scm_bitvector_position): New function.
* libguile/deprecated.h:
* libguile/deprecated.c (scm_bit_position): Deprecate.
* module/ice-9/sandbox.scm (bitvector-bindings): Replace bit-position
  with bitvector-position.
* module/language/cps/intset.scm (bitvector->intset): Use
  bitvector-position.
* module/system/vm/frame.scm (available-bindings): Use
  bitvector-position.
* test-suite/tests/bitvectors.test ("bitvector-position"): Add test.
This commit is contained in:
Andy Wingo 2020-04-12 22:39:55 +02:00
parent cae74359de
commit 06709d77b9
10 changed files with 97 additions and 70 deletions

View file

@ -6622,16 +6622,16 @@ Return a count of how many entries in @var{bitvector} are set.
@end example
@end deffn
@deffn {Scheme Procedure} bit-position bool bitvector start
@deffnx {C Function} scm_bit_position (bool, bitvector, start)
@deffn {Scheme Procedure} bitvector-position bitvector bool start
@deffnx {C Function} scm_bitvector_position (bitvector, bool, start)
Return the index of the first occurrence of @var{bool} in
@var{bitvector}, starting from @var{start}. If there is no @var{bool}
entry between @var{start} and the end of @var{bitvector}, then return
@code{#f}. For example,
@example
(bit-position #t #*000101 0) @result{} 3
(bit-position #f #*0001111 3) @result{} #f
(bitvector-position #*000101 #t 0) @result{} 3
(bitvector-position #*0001111 #f 3) @result{} #f
@end example
@end deffn