6.6.4.5 Character-Set Algebra

Character sets can be manipulated with the common set algebra operation, such as union, complement, intersection etc. All of these procedures provide side-effecting variants, which modify their character set argument(s).

Scheme Procedure: char-set-adjoin cs chr …
C Function: scm_char_set_adjoin (cs, chrs)

Add all character arguments to the first argument, which must be a character set.

Scheme Procedure: char-set-delete cs chr …
C Function: scm_char_set_delete (cs, chrs)

Delete all character arguments from the first argument, which must be a character set.

Scheme Procedure: char-set-adjoin! cs chr …
C Function: scm_char_set_adjoin_x (cs, chrs)

Add all character arguments to the first argument, which must be a character set.

Scheme Procedure: char-set-delete! cs chr …
C Function: scm_char_set_delete_x (cs, chrs)

Delete all character arguments from the first argument, which must be a character set.

Scheme Procedure: char-set-complement cs
C Function: scm_char_set_complement (cs)

Return the complement of the character set cs.

Note that the complement of a character set is likely to contain many reserved code points (code points that are not associated with characters). It may be helpful to modify the output of char-set-complement by computing its intersection with the set of designated code points, char-set:designated.

Scheme Procedure: char-set-union cs …
C Function: scm_char_set_union (char_sets)

Return the union of all argument character sets.

Scheme Procedure: char-set-intersection cs …
C Function: scm_char_set_intersection (char_sets)

Return the intersection of all argument character sets.

Scheme Procedure: char-set-difference cs1 cs …
C Function: scm_char_set_difference (cs1, char_sets)

Return the difference of all argument character sets.

Scheme Procedure: char-set-xor cs …
C Function: scm_char_set_xor (char_sets)

Return the exclusive-or of all argument character sets.

Scheme Procedure: char-set-diff+intersection cs1 cs …
C Function: scm_char_set_diff_plus_intersection (cs1, char_sets)

Return the difference and the intersection of all argument character sets.

Scheme Procedure: char-set-complement! cs
C Function: scm_char_set_complement_x (cs)

Return the complement of the character set cs.

Scheme Procedure: char-set-union! cs1 cs …
C Function: scm_char_set_union_x (cs1, char_sets)

Return the union of all argument character sets.

Scheme Procedure: char-set-intersection! cs1 cs …
C Function: scm_char_set_intersection_x (cs1, char_sets)

Return the intersection of all argument character sets.

Scheme Procedure: char-set-difference! cs1 cs …
C Function: scm_char_set_difference_x (cs1, char_sets)

Return the difference of all argument character sets.

Scheme Procedure: char-set-xor! cs1 cs …
C Function: scm_char_set_xor_x (cs1, char_sets)

Return the exclusive-or of all argument character sets.

Scheme Procedure: char-set-diff+intersection! cs1 cs2 cs …
C Function: scm_char_set_diff_plus_intersection_x (cs1, cs2, char_sets)

Return the difference and the intersection of all argument character sets.