Added c-bytevector character accessors
This commit is contained in:
parent
b776994b36
commit
6a2caa06ff
24
README.md
24
README.md
|
|
@ -406,6 +406,30 @@ If _k_ is not a valid index of c-bytevector the behaviour is undefined.
|
||||||
|
|
||||||
Returns the byte at index _k_ of _c-bytevector_.
|
Returns the byte at index _k_ of _c-bytevector_.
|
||||||
|
|
||||||
|
(**c-bytevector-char-set!** _c-bytevector_ _k_ _char_)
|
||||||
|
|
||||||
|
If _k_ is not a valid index of c-bytevector the behaviour is undefined.
|
||||||
|
|
||||||
|
Stores the _char_ in element _k_ of _c-bytevector_.
|
||||||
|
|
||||||
|
(**c-bytevector-char-ref** _c-bytevector_ _k_)
|
||||||
|
|
||||||
|
If _k_ is not a valid index of c-bytevector the behaviour is undefined.
|
||||||
|
|
||||||
|
Returns the char at index _k_ of _c-bytevector_.
|
||||||
|
|
||||||
|
(**c-bytevector-uchar-set!** _c-bytevector_ _k_ _char_)
|
||||||
|
|
||||||
|
If _k_ is not a valid index of c-bytevector the behaviour is undefined.
|
||||||
|
|
||||||
|
Stores the unsigned _char_ in element _k_ of _c-bytevector_.
|
||||||
|
|
||||||
|
(**c-bytevector-uchar-ref** _c-bytevector_ _k_)
|
||||||
|
|
||||||
|
If _k_ is not a valid index of c-bytevector the behaviour is undefined.
|
||||||
|
|
||||||
|
Returns the unsigned char at index _k_ of _c-bytevector_.
|
||||||
|
|
||||||
(**c-bytevector-uint-ref** _c-bytevector_ _k_ _endianness_ _size_)</br>
|
(**c-bytevector-uint-ref** _c-bytevector_ _k_ _endianness_ _size_)</br>
|
||||||
(**c-bytevector-sint-ref** _c-bytevector_ _k_ _endianness_ _size_)</br>
|
(**c-bytevector-sint-ref** _c-bytevector_ _k_ _endianness_ _size_)</br>
|
||||||
(**c-bytevector-uint-set!** _c-bytevector_ _k_ _n_ _endianness_ _size_)</br>
|
(**c-bytevector-uint-set!** _c-bytevector_ _k_ _n_ _endianness_ _size_)</br>
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,8 @@ Schemes - 0.10.0</title>
|
||||||
tracker</a></p>
|
tracker</a></p>
|
||||||
<p><a href="https://sr.ht/~retropikzel/foreign-c/lists">Maling
|
<p><a href="https://sr.ht/~retropikzel/foreign-c/lists">Maling
|
||||||
lists</a></p>
|
lists</a></p>
|
||||||
|
<p><a
|
||||||
|
href="https://jenkins.scheme.org/job/foreign_c/job/foreign-c/">Jenkins</a></p>
|
||||||
<ul>
|
<ul>
|
||||||
<li><a href="#installation">Installation</a></li>
|
<li><a href="#installation">Installation</a></li>
|
||||||
<li><a href="#documentation">Documentation</a>
|
<li><a href="#documentation">Documentation</a>
|
||||||
|
|
@ -595,6 +597,30 @@ func(&i);</code></pre>
|
||||||
behaviour is undefined.</p>
|
behaviour is undefined.</p>
|
||||||
<p>Returns the byte at index <em>k</em> of
|
<p>Returns the byte at index <em>k</em> of
|
||||||
<em>c-bytevector</em>.</p>
|
<em>c-bytevector</em>.</p>
|
||||||
|
<p>(<strong>c-bytevector-char-set!</strong>
|
||||||
|
<em>c-bytevector</em> <em>k</em> <em>char</em>)</p>
|
||||||
|
<p>If <em>k</em> is not a valid index of c-bytevector the
|
||||||
|
behaviour is undefined.</p>
|
||||||
|
<p>Stores the <em>char</em> in element <em>k</em> of
|
||||||
|
<em>c-bytevector</em>.</p>
|
||||||
|
<p>(<strong>c-bytevector-char-ref</strong> <em>c-bytevector</em>
|
||||||
|
<em>k</em>)</p>
|
||||||
|
<p>If <em>k</em> is not a valid index of c-bytevector the
|
||||||
|
behaviour is undefined.</p>
|
||||||
|
<p>Returns the char at index <em>k</em> of
|
||||||
|
<em>c-bytevector</em>.</p>
|
||||||
|
<p>(<strong>c-bytevector-uchar-set!</strong>
|
||||||
|
<em>c-bytevector</em> <em>k</em> <em>char</em>)</p>
|
||||||
|
<p>If <em>k</em> is not a valid index of c-bytevector the
|
||||||
|
behaviour is undefined.</p>
|
||||||
|
<p>Stores the unsigned <em>char</em> in element <em>k</em> of
|
||||||
|
<em>c-bytevector</em>.</p>
|
||||||
|
<p>(<strong>c-bytevector-uchar-ref</strong>
|
||||||
|
<em>c-bytevector</em> <em>k</em>)</p>
|
||||||
|
<p>If <em>k</em> is not a valid index of c-bytevector the
|
||||||
|
behaviour is undefined.</p>
|
||||||
|
<p>Returns the unsigned char at index <em>k</em> of
|
||||||
|
<em>c-bytevector</em>.</p>
|
||||||
<p>(<strong>c-bytevector-uint-ref</strong> <em>c-bytevector</em>
|
<p>(<strong>c-bytevector-uint-ref</strong> <em>c-bytevector</em>
|
||||||
<em>k</em> <em>endianness</em> <em>size</em>)</br>
|
<em>k</em> <em>endianness</em> <em>size</em>)</br>
|
||||||
(<strong>c-bytevector-sint-ref</strong> <em>c-bytevector</em>
|
(<strong>c-bytevector-sint-ref</strong> <em>c-bytevector</em>
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -205,6 +205,11 @@
|
||||||
;; TODO c-bytevector->u8-list
|
;; TODO c-bytevector->u8-list
|
||||||
;; TODO u8-list->c-bytevector
|
;; TODO u8-list->c-bytevector
|
||||||
|
|
||||||
|
c-bytevector-uchar-ref
|
||||||
|
c-bytevector-char-ref
|
||||||
|
c-bytevector-char-set!
|
||||||
|
c-bytevector-uchar-set!
|
||||||
|
|
||||||
c-bytevector-uint-ref
|
c-bytevector-uint-ref
|
||||||
c-bytevector-sint-ref
|
c-bytevector-sint-ref
|
||||||
c-bytevector-sint-set!
|
c-bytevector-sint-set!
|
||||||
|
|
|
||||||
|
|
@ -520,6 +520,18 @@
|
||||||
(c-bytevector-u8-set! b i (car vals)))
|
(c-bytevector-u8-set! b i (car vals)))
|
||||||
b))
|
b))
|
||||||
|
|
||||||
|
(define (c-bytevector-uchar-ref c-bytevector index)
|
||||||
|
(integer->char (c-bytevector-u8-ref c-bytevector index)))
|
||||||
|
|
||||||
|
(define (c-bytevector-uchar-set! c-bytevector index char)
|
||||||
|
(c-bytevector-u8-set! c-bytevector index (char->integer char)))
|
||||||
|
|
||||||
|
(define (c-bytevector-char-ref c-bytevector index)
|
||||||
|
(integer->char (c-bytevector-s8-ref c-bytevector index)))
|
||||||
|
|
||||||
|
(define (c-bytevector-char-set! c-bytevector index char)
|
||||||
|
(c-bytevector-s8-set! c-bytevector index (char->integer char)))
|
||||||
|
|
||||||
(define (c-bytevector-uint-ref c-bytevector index endness size)
|
(define (c-bytevector-uint-ref c-bytevector index endness size)
|
||||||
(case endness
|
(case endness
|
||||||
((big)
|
((big)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue