type-r
The complete collection of accessor functions and patterns to access the elements in a compound type specifier.

Usage examples:

Access the size portion of a string type:

(string-type-size '(string 50)) ;; => 50 (string-type-size '(string)) ;; => '* (string-type-size 'string) ;; => '*

Match uniformly with trivia by the same author:

(match '(string 50) ((string-type size) size)) ;; => 50 (ematch '(simple-array * 3) ((array-subtype _ rank) rank)) ;; => 3 (ematch '(base-string 5) ((base-string-type _ type) type)) ;; => 'base-char

Homepage: GitHub

License: LLGPL

See Also: simplified-types

Topics: convenience library, pattern matching