srfi-60.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. /* srfi-60.h --- SRFI-60 procedures for Guile
  2. Copyright 2005-2006,2010,2018
  3. Free Software Foundation, Inc.
  4. This file is part of Guile.
  5. Guile is free software: you can redistribute it and/or modify it
  6. under the terms of the GNU Lesser General Public License as published
  7. by the Free Software Foundation, either version 3 of the License, or
  8. (at your option) any later version.
  9. Guile is distributed in the hope that it will be useful, but WITHOUT
  10. ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11. FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
  12. License for more details.
  13. You should have received a copy of the GNU Lesser General Public
  14. License along with Guile. If not, see
  15. <https://www.gnu.org/licenses/>. */
  16. #ifndef SCM_SRFI_60_H
  17. #define SCM_SRFI_60_H
  18. #include "libguile/scm.h"
  19. SCM_INTERNAL SCM scm_srfi60_log2_binary_factors (SCM n);
  20. SCM_INTERNAL SCM scm_srfi60_copy_bit (SCM index, SCM n, SCM bit);
  21. SCM_INTERNAL SCM scm_srfi60_rotate_bit_field (SCM n, SCM count, SCM start, SCM end);
  22. SCM_INTERNAL SCM scm_srfi60_reverse_bit_field (SCM n, SCM start, SCM end);
  23. SCM_INTERNAL SCM scm_srfi60_integer_to_list (SCM n, SCM len);
  24. SCM_INTERNAL SCM scm_srfi60_list_to_integer (SCM lst);
  25. SCM_INTERNAL void scm_register_srfi_60 (void);
  26. SCM_INTERNAL void scm_init_srfi_60 (void);
  27. #endif /* SCM_SRFI_60_H */