Previous: asciis predicates, Up: asciis [Index]
The following bindings are exported by the library (vicare
language-extensions ascii-chars)
. The identifiers whose name is
prefixed with ‘$’ are bound to unsafe operations: they do
not validate the arguments and applying them to invalid
arguments leads to undefined behaviour.
Evaluate to true if fx is a fixnum representing a reserved character in ASCII encoding according to RFC 3986.
Evaluate to true if fx is a fixnum representing an unreserved character in ASCII encoding according to RFC 3986.
Evaluate to true if fx is a fixnum representing a gen-delim
character in ASCII encoding according to RFC 3986.
Evaluate to true if fx is a fixnum representing a sub-delim
character in ASCII encoding according to RFC 3986.
The argument ?chi must be a fixnum representing the octet at index
?i in the bytevector ?bv; ?bv and ?i must be
identifiers. Return #t
if the 3 bytes at offset ?i
represent a percent–encoded sequence and increment ?i to
reference the third octet; otherwise return #f
and set ?i to
the offset of the offending octet; if there are not enough octets:
return #f
and leave ?i unchanged.
#!vicare (import (vicare) (vicare language-extensions ascii-chars)) (let* ((bv '#ve(ascii "ciao")) (i 0) (chi (bytevector-u8-ref bv i)) (R ($ascii-uri-pct-encoded? chi bv i))) (values R i)) ⇒ #f 0 (let* ((bv '#ve(ascii "c%ABo")) (i 1) (chi (bytevector-u8-ref bv i)) (R ($ascii-uri-pct-encoded? chi bv i))) (values R i)) ⇒ #t 3 (let* ((bv '#ve(ascii "c%AB")) (i 1) (chi (bytevector-u8-ref bv i)) (R ($ascii-uri-pct-encoded? chi bv i))) (values R i)) ⇒ #t 3 (let* ((bv '#ve(ascii "c%AZ")) (i 1) (chi (bytevector-u8-ref bv i)) (R ($ascii-uri-pct-encoded? chi bv i))) (values R i)) ⇒ #f 3 (let* ((bv '#ve(ascii "c%ZA")) (i 1) (chi (bytevector-u8-ref bv i)) (R ($ascii-uri-pct-encoded? chi bv i))) (values R i)) ⇒ #f 2 (let* ((bv '#ve(ascii "c%A")) (i 1) (chi (bytevector-u8-ref bv i)) (R ($ascii-uri-pct-encoded? chi bv i))) (values R i)) ⇒ #f 1
Evaluate to true if fx is a fixnum matching the pchar
component in ASCII encoding, with the exception of the
percent–encoded sequence as defined by RFC 3986.
The argument ?chi must be a fixnum representing the octet at index
?i in the bytevector ?bv; ?bv and ?i must be
identifiers. Return #t
if the octet ?chi or the 3
bytes at offset ?i represent pchar
component in ASCII
encoding; if successful increment ?i to reference the last
matching octet; otherwise return #f
and set ?i to the offset
of the offending octet; if there are not enough octets: return #f
and leave ?i unchanged.
Previous: asciis predicates, Up: asciis [Index]