base.sld 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. ;;; SPDX-License-Identifier: MIT
  2. ;;; SPDX-FileCopyrightText: 2018 John Cowan
  3. (define-library (srfi srfi-160 base)
  4. (import (scheme base))
  5. (import (scheme case-lambda))
  6. (import (scheme complex))
  7. (import (only (srfi srfi-151)
  8. bitwise-and bitwise-ior
  9. bitwise-not arithmetic-shift))
  10. ;; SRFI 4 versions of @vector->list don't accept start/end args
  11. (import (except (srfi srfi-4)
  12. u8vector->list s8vector->list u16vector->list s16vector->list
  13. u32vector->list s32vector->list u64vector->list s64vector->list
  14. f32vector->list f64vector->list))
  15. (export
  16. make-u8vector make-s8vector make-u16vector make-s16vector
  17. make-u32vector make-s32vector make-u64vector make-s64vector
  18. make-f32vector make-f64vector make-c64vector make-c128vector )
  19. (export
  20. u8vector s8vector u16vector s16vector
  21. u32vector s32vector u64vector s64vector
  22. f32vector f64vector c64vector c128vector )
  23. (export
  24. u8vector? s8vector? u16vector? s16vector?
  25. u32vector? s32vector? u64vector? s64vector?
  26. f32vector? f64vector? c64vector? c128vector?)
  27. (export
  28. u8vector-length s8vector-length u16vector-length s16vector-length
  29. u32vector-length s32vector-length u64vector-length s64vector-length
  30. f32vector-length f64vector-length c64vector-length c128vector-length)
  31. (export
  32. u8vector-ref s8vector-ref u16vector-ref s16vector-ref
  33. u32vector-ref s32vector-ref u64vector-ref s64vector-ref
  34. f32vector-ref f64vector-ref c64vector-ref c128vector-ref)
  35. (export
  36. u8vector-set! s8vector-set! u16vector-set! s16vector-set!
  37. u32vector-set! s32vector-set! u64vector-set! s64vector-set!
  38. f32vector-set! f64vector-set! c64vector-set! c128vector-set!)
  39. (export
  40. u8vector->list s8vector->list u16vector->list s16vector->list
  41. u32vector->list s32vector->list u64vector->list s64vector->list
  42. f32vector->list f64vector->list c64vector->list c128vector->list)
  43. (export
  44. list->u8vector list->s8vector list->u16vector list->s16vector
  45. list->u32vector list->s32vector list->u64vector list->s64vector
  46. list->f32vector list->f64vector list->c64vector list->c128vector)
  47. (export
  48. u8? s8? u16? s16? u32? s32? u64? s64? f32? f64? c64? c128?)
  49. (include "base/r7rec.scm")
  50. (include "base/complex.scm")
  51. (include "base/u8-vector2list.scm")
  52. (include "base/s8-vector2list.scm")
  53. (include "base/u16-vector2list.scm")
  54. (include "base/s16-vector2list.scm")
  55. (include "base/u32-vector2list.scm")
  56. (include "base/s32-vector2list.scm")
  57. (include "base/u64-vector2list.scm")
  58. (include "base/s64-vector2list.scm")
  59. (include "base/f32-vector2list.scm")
  60. (include "base/f64-vector2list.scm")
  61. (include "base/c64-vector2list.scm")
  62. (include "base/c128-vector2list.scm")
  63. (include "base/valid.scm")
  64. )